CREATE PROCEDURE [dbo].[EAUI_GetCustomerSelectServiceList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') SELECT @CustID as CustID, [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_DeleteZ3950XmlValue_154](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @TargetNo int, @VendorID int ) AS BEGIN BEGIN TRANSACTION DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = convert(varchar(255), @VendorID) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile', 'Delete Z3950 XML profile parameter value', @TargetNo, @VendorID COMMIT TRANSACTION END
CREATE PROCEDURE dbo.EAIP_GetInterfaceLanguageListForAdd_161 (@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END SELECT ll.LangCode,ll.Description+ '('+ll.LangCode+')' as Description FROM [dbo].[LangList] ll LEFT Outer JOIN [dbo].[InterfaceUserLangList] ill ON ll.LangCode = ill.LangCode AND ill.InterfaceID =@InterfaceID AND ill.Version=@Version WHERE ill.InterfaceID is null ORDER BY ll.SeqNo END
--sql content merged from file: \StoredProcedures\EAUI_ResetProfileClusters_99.sql CREATE procedure [dbo].[EAUI_ResetProfileClusters_99] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LangCode varchar(10)) as Begin Begin Try Begin Transaction Delete [dbo].[ProfileClusterCaptions] where [dbo].[ProfileClusterCaptions].[ProfNo]=@ProfNo and [dbo].[ProfileClusterCaptions].[LangCode]=@LangCode Delete [dbo].[ProfileClusters2] where [dbo].[ProfileClusters2].[ProfNo]=@ProfNo exec [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Reset Profile Clusters', @ProfNo, @LangCode Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE FUNCTION dbo.EAIF_GetClusterCaptions_80(@ID varchar(20)) RETURNS nvarchar(MAX) AS BEGIN DECLARE @Captions nvarchar(MAX) SET @Captions=N'' SELECT @Captions = @Captions + N''+[dbo].[GlobalClusterCaption].[Caption] +N' ' FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID]=@ID RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceScreen_76](@UserID nvarchar(20), @UserIP varchar(15), @intfScreenNo int) AS BEGIN DELETE From [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo] = @intfScreenNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Screen', 'Delete Interface Screen', @intfScreenNo END
CREATE PROCEDURE [dbo].[EAIP_DeleteDatabase_70](@DbVerNo int) AS BEGIN DECLARE @DbName varchar(10), @DbLabel varchar(10) BEGIN TRANSACTION SELECT @DbName = [dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF @DbLabel = 'live' BEGIN -- Let us delete the corresponding product EXEC EASUPPORT.dbo.EAIP_DeleteProduct_70 @DbName IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END -- We could not set cascade delete on DbAuthority.AuthDbVerNo DELETE [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[AuthDbVerNo] = @DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END -- We could not set cascade delete on DbSourceTarget.TargetDbNo DELETE [dbo].[DbSourceTarget] WHERE [dbo].[DbSourceTarget].[TargetDbNo] = @DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[AuthDbVerNo] = @DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[InterfaceDbAuthority] WHERE [dbo].[InterfaceDbAuthority].[AuthDbVerNo] = @DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END -- DbDiscipline doesn't have a foreign key to DbList because it uses DbName -- if this is the last database with DbName then delete the entry for that -- DbName from DbDiscipline if it exists IF NOT EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName) BEGIN DELETE FROM [dbo].[DbDiscipline] WHERE [dbo].[DbDiscipline].[DbName] = @DbName END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetProfileOtherServiceLinkDetails_86](@LinkNo int)AS BEGIN SELECT [dbo].[ProfOtherServiceLinks].[ProfNo], ISNULL([dbo].[ProfOtherServiceLinks].[LinkURL],N'') LinkURL, ISNULL([dbo].[ProfOtherServiceLinks].[LinkIcon], N'') LinkIcon, ISNULL([dbo].[ProfOtherServiceLinks].[LinkCaption], N'') LinkCaption, ISNULL([dbo].[ProfOtherServiceLinks].[TargetProfNo], 0) TargetProfNo, ISNULL([dbo].[ProfOtherServiceLinks].[ContextSearchURL],N'') ContextSearchURL FROM [dbo].[ProfOtherServiceLinks] WHERE [dbo].[ProfOtherServiceLinks].[LinkNo] = @LinkNo END
CREATE PROCEDURE [dbo].[EAUI_AddModifyInterfaceScreenDetails_76](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @IntfScreenNo int, @ScreenID varchar(10), @Description nvarchar(255), @AutoAddLimiter bit, @LimiterSHow bit, @LibSearchOption bit, @LibBrowseOption bit, @LibDBLimiters bit, @LibLocalLimiters bit, @SearchOptionNote nvarchar(255), @BrowseOptionNote nvarchar(255), @AutoAddMDbLimiter bit, @Action varchar(4)) AS BEGIN DECLARE @AddMod varchar(25) IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID and [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:"%s" already exists for InterfaceID: "%s" and version: "%s".', 16,-1, @ScreenID, @InterfaceID, @Version) RETURN END DECLARE @NextSeqNo int SELECT @NextSeqNo = MAX([dbo].[InterfaceScreen].[SeqNo])+1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version IF @NextSeqNo is NULL SET @NextSeqNo = 0 INSERT INTO [dbo].[InterfaceScreen]([dbo].[InterfaceScreen].[InterfaceID], [dbo].[InterfaceScreen].[Version], [dbo].[InterfaceScreen].[ScreenID], [dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[SeqNo], [dbo].[InterfaceScreen].[AutoAddLimiter], [dbo].[InterfaceScreen].[LimiterShow], [dbo].[InterfaceScreen].[LibSearchOption], [dbo].[InterfaceScreen].[LibBrowseOption], [dbo].[InterfaceScreen].[LibDbLimiters], [dbo].[InterfaceScreen].[LibLocalLimiters], [dbo].[InterfaceScreen].[SearchOptionNote], [dbo].[InterfaceScreen].[BrowseOptionNote], [dbo].[InterfaceScreen].[AutoAddMDbLimiter]) VALUES (@InterfaceID, @Version, @ScreenID, @Description, @NextSeqNo, @AutoAddLimiter, @LimiterSHow, @LibSearchOption, @LibBrowseOption, @LibDBLimiters, @LibLocalLimiters, @SearchOptionNote, @BrowseOptionNote, @AutoAddMDbLimiter) SET @AddMod = 'Add Version' END ELSE BEGIN Begin Try Begin Transaction UPDATE [dbo].[InterfaceScreen] SET [dbo].[InterfaceScreen].[ScreenID] = @ScreenID , [dbo].[InterfaceScreen].[Description] = @Description, [dbo].[InterfaceScreen].[AutoAddLimiter] = @AutoAddLimiter, [dbo].[InterfaceScreen].[LimiterShow] = @LimiterShow, [dbo].[InterfaceScreen].[LibSearchOption] = @LibSearchOption, [dbo].[InterfaceScreen].[LibBrowseOption] = @LibBrowseOption, [dbo].[InterfaceScreen].[LibDbLimiters] = @LibDBLimiters, [dbo].[InterfaceScreen].[LibLocalLimiters] = @LibLocalLimiters, [dbo].[InterfaceScreen].[SearchOptionNote] = @SearchOptionNote, [dbo].[InterfaceScreen].[BrowseOptionNote] = @BrowseOptionNote, [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=@AutoAddMDbLimiter WHERE [dbo].[InterfaceScreen].[IntfScreenNo] = @IntfScreenNo if (@AutoAddMDbLimiter=1) Delete [dbo].[InterfaceMDbLimiterList] Where [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@IntfScreenNo and [dbo].[InterfaceMDbLimiterList].[LimiterNo] in (Select [dbo].[MDbLimiterList].[LimiterNo] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[AutoAdd]=1) Commit Transaction End Try Begin Catch Rollback Transaction End Catch SET @AddMod = 'Edit Version' END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface Screens',@AddMod, @InterfaceID,@Version,@ScreenID, @Description, @SearchOptionNote END
CREATE PROCEDURE [dbo].[EPCS_GetUserGroupProfileDatabases_86](@CustID varchar(10),@GroupID varchar(10),@ProfID varchar(10), @level varchar(10)) AS BEGIN Set @level = LOWER(@level) /* Restrict the selection to EP databases (sourcetype- 'd') - Added for EIS Project Phase 2 */ IF (@level='customer') BEGIN SELECT DISTINCT m.DbName, m.DisplayName, CAST(dbo.EAIF_GetDbParamScalarValue_70( m.DbVerNo, 'fullTextAllowed' ) as bit ) as fulltext FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfDatabase] AS d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] AS m ON m.DbVerNo = d.DbVerNo WHERE p.CustID = @CustID AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable = 1 AND m.SourceType = 'd' AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) END ELSE IF (@level='group') BEGIN SELECT DISTINCT m.DbName, m.DisplayName, CAST(dbo.EAIF_GetDbParamScalarValue_70( m.DbVerNo, 'fullTextAllowed' ) as bit ) as fulltext FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfDatabase] AS d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] AS m ON m.DbVerNo = d.DbVerNo WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable = 1 AND m.SourceType = 'd' AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) END ELSE BEGIN SELECT DISTINCT m.DbName, m.DisplayName, CAST(dbo.EAIF_GetDbParamScalarValue_70( m.DbVerNo, 'fullTextAllowed' ) as bit ) as fulltext FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfDatabase] d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] AS m ON m.DbVerNo = d.DbVerNo WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.ProfID=@ProfID AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable = 1 AND m.SourceType = 'd' AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) END END
CREATE PROCEDURE dbo.EACOPY_AUTO_GetXmlDbInfo(@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SET NOCOUNT ON -- Declare and retrieve variables for ID columns of primary table DECLARE @DbVerNo int; SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel; DECLARE @EADbVersion varchar(255); SET @EADbVersion = dbo.EAIF_GetAdminParamValue_70('eaDbVersion'); SELECT @EADbVersion= LTRIM(SUBSTRING(@EADbVersion, CHARINDEX('--', @EADbVersion)+2, LEN(@EADbVersion)-CHARINDEX('--', @EADbVersion)+2)); DECLARE @PrimaryXml xml; SELECT @PrimaryXml = dbo.EACOPY_AUTO_GetXmlDbList(@DbVerNo) ; DECLARE @xmlDoc xml; IF @PrimaryXml IS NULL BEGIN SELECT @xmlDoc = 'DbInfo data does not exist for the passed key values. '; SELECT @xmlDoc; RETURN END SELECT @xmlDoc = (SELECT 'DbInfo' [name] , 'Admindev601' [server] , @EADbVersion [eadbversion] , @PrimaryXml [primary] , (SELECT dbo.EACOPY_AUTO_GetXmlDbList([dbo].[DbAuthority].[AuthDbVerNo]) FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @DbVerNo ORDER BY [dbo].[DbAuthority].[SeqNo] FOR XML RAW('DbAuthority'), TYPE) support , (SELECT dbo.EACOPY_AUTO_GetXmlDbList([dbo].[DbSubset].[SubsetDbVerNo]) FROM [dbo].[DbSubset] WHERE [dbo].[DbSubset].[PhysDbVerNo] = @DbVerNo ORDER BY [dbo].[DbSubset].[SubsetDbVerNo] FOR XML RAW('DbSubset'), TYPE) subset , (SELECT dbo.EACOPY_AUTO_GetXmlDbList([dbo].[DbAuthority].[AuthDbVerNo]) FROM [dbo].[DbAuthority] INNER JOIN [dbo].[DbSubset] ON [dbo].[DbAuthority].[MainDbVerNo] = [dbo].[DbSubset].[SubsetDbVerNo] WHERE [dbo].[DbSubset].[PhysDbVerNo] = @DbVerNo ORDER BY [dbo].[DbAuthority].[SeqNo] FOR XML RAW('DbAuthority'), TYPE) subsetAuthority FOR XML RAW('object')); SELECT @xmlDoc; END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceToolbarItemList_77] (@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT itb.IntfToolbarItem, itb.ItemName, sc.Description AS Category, itb.Image, itb.SeqNo FROM [dbo].[InterfaceToolbar] itb INNER JOIN [dbo].[StringValueMap] sc ON itb.Category = sc.FieldCode WHERE itb.InterfaceID=@InterfaceID AND itb.Version=@Version AND sc.FieldName='ToolbarCategory' ORDER BY itb.SeqNo END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceFeatures_77](@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT ifl.FeatureName, ifv.FieldValueXml As FieldsXML, ifvi.ItemNo, ifvi.FieldValueXml AS ItemsXML FROM [dbo].[InterfaceFeatureList] ifl LEFT OUTER JOIN [dbo].[InterfaceFeatureValues] ifvi ON ifl.InterfaceFeatureNo = ifvi.InterfaceFeatureNo AND ifvi.ItemNo<>0 INNER JOIN [dbo].[InterfaceFeatureValues] ifv ON ifl.InterfaceFeatureNo = ifv.InterfaceFeatureNo WHERE ifl.InterfaceID = @InterfaceID AND ifl.Version =@Version AND ifv.ItemNo=0 END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerInfo_70](@CustID varchar(10)) AS BEGIN SELECT [dbo].[Customer].[CustID], [dbo].[Customer].[CustName] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAUI_GetExternalMDbLimiterList_102](@DbLabel varchar(10)) AS BEGIN SELECT em.LimiterID, ml.Description, lct.ControlName, ml.LogicalOpCode, em.ExternalSourceType as SourceType, ISNULL(em.ExternalSearchString_M,'') as ExternalSearchString_M, ISNULL(em.ExternalSearchString_I,'') as ExternalSearchString_I FROM [dbo].[MDbLimitersExternalSource] em JOIN [dbo].[MDbLimiterList] ml ON (ml.LimiterID = em.LimiterID AND ml.DbLabel = em.DbLabel) JOIN [dbo].[LimiterControlType] lct ON (ml.ControlType = lct.ControlType) WHERE em.DbLabel = @DbLabel AND em.ExternalSourceType = 'M' ORDER BY em.LimiterID END
--sql content merged from file: \StoredProcedures\EAIP_TblParam_AddModifyGlobalFieldValue_92.sql CREATE PROCEDURE [dbo].[EAIP_TblParam_AddModifyGlobalFieldValue_92](@ParamName varchar(100), @ItemID varchar(10), @FieldName varchar(20), @FieldValue nvarchar(255), @LangCode varchar(10)= null) AS BEGIN DECLARE @ParamNo int DECLARE @FieldNo int DECLARE @FieldType varchar(10) DECLARE @Required bit SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName AND [dbo].[CustomParamList].[ParamType]='T' IF @ParamNo is null BEGIN RAISERROR('Parameter %s type table does not exists', 16, -1, @ParamName) RETURN END SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo], @FieldType =[dbo].[CustomParamXmlFields].[FieldType], @Required=[dbo].[CustomParamXmlFields].[Required] From [dbo].[CustomParamXmlFields] where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlFields].[FieldName]=@FieldName IF @FieldNo is null BEGIN RAISERROR('Field %s in Parameter %s does not exists', 16, -1, @FieldName, @ParamName) RETURN END IF @FieldType='SM' and @LangCode is null BEGIN RAISERROR('For FieldType multi-lingual string("SM") value for @LangCode is required ', 16, -1) RETURN END IF @FieldType='SD' and NOT EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@FieldValue) BEGIN RAISERROR('For FieldType database string("SD") value should match existing database short name ', 16, -1) RETURN END IF @FieldType ='BV' AND @FieldValue not in ('0','1') BEGIN RAISERROR('For FieldType boolean("BV") value should 0 or 1 ', 16, -1) RETURN END IF @FieldType ='NV' AND ( (@Required=1 AND ISNUMERIC(@FieldValue)=0) OR (@Required=0 AND LEN(@FieldValue)>0 AND ISNUMERIC(@FieldValue)=0) ) BEGIN RAISERROR('For FieldType numeric ("NV") value should be numeric ', 16, -1) RETURN END IF @FieldType='SM' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo]=@FieldNo AND [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode) UPDATE [dbo].[CustomParamTblGlobalDefaultSMValues] SET [dbo].[CustomParamTblGlobalDefaultSMValues].[Value]=@FieldValue WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo]=@FieldNo AND [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMValues]([dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode],[dbo].[CustomParamTblGlobalDefaultSMValues].[Value]) VALUES(@ParamNo,@ItemID,@FieldNo, @LangCode,@FieldValue) RETURN END IF @FieldType='SD' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo]=@FieldNo ) UPDATE [dbo].[CustomParamTblGlobalDefaultSMDValues] SET [dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName]=@FieldValue WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo]=@FieldNo ELSE INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMDValues]([dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName]) VALUES(@ParamNo,@ItemID,@FieldNo, @FieldValue) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultValues] WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo ) UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [dbo].[CustomParamTblGlobalDefaultValues].[Value]=@FieldValue WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo ELSE INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultValues].[Value]) VALUES(@ParamNo,@ItemID,@FieldNo, @FieldValue) RETURN END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfile_76] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ProfName nvarchar(100), @MarketID varchar(20), @DbLabel varchar(10), @DefLangCode varchar(10), @URL nvarchar(255)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) IF @DbLabel IS NULL OR @DbLabel='' SET @DbLabel='live' DECLARE @SiteURL varchar(255) SELECT @SiteURL=LTRIM(RTRIM(iv.SiteURL)) FROM [dbo].[Profile] p INNER JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version WHERE p.ProfNo=@ProfNo SELECT @URL=LTRIM(RTRIM(@URL)) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Profile', @ProfLogName, @ProfName, @MarketID, @DbLabel,@DefLangCode IF LOWER(@SiteURL)=LOWER(@URL) OR @URL='' SET @URL = null UPDATE [dbo].[Profile] SET [dbo].[Profile].[ProfName] = @ProfName, [dbo].[Profile].[MarketID] = @MarketID, [dbo].[Profile].[DbLabel]=@DBLabel, [dbo].[Profile].[DefLangCode]=@DefLangCode, [dbo].[Profile].[URL]=@URL WHERE [dbo].[Profile].[ProfNo] = @ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_IsLimiterAttachedToOtherCustPO_79](@CustID varchar(10), @PrdOffID varchar(20),@PrdID varchar(10), @LimiterID varchar(10)) RETURNS bit AS BEGIN DECLARE @Pos int DECLARE @Ret bit SELECT @Pos=CHARINDEX(@LimiterID+',',pp.Limiters+',') FROM EASUPPORT.dbo.CustSubscription sub INNER JOIN EASUPPORT.dbo.ProductOffering po ON sub.PrdOffNo = po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage pp ON po.PrdOffNo=pp.PrdOffNo AND pp.PrdOffNo = po.PrdOffNo WHERE sub.CustID = @CustID AND po.PrdOffID <> @PrdOffID AND pp.ProductID = @PrdID IF @Pos>0 SET @Ret= 1 ELSE SET @Ret= 0 RETURN @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerServiceList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') SELECT @CustID as CustID, [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_DetatchInterfaceCVType_162] (@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceId VARCHAR(10), @Version VARCHAR(20), @CVTypeId VARCHAR(20)) AS BEGIN DECLARE @ContentVerticalNo INT DECLARE @IntfCVTypeNo INT SELECT @ContentVerticalNo=[dbo].[ContentVerticalType].[ContentVerticalNo] FROM dbo.ContentVerticalType WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@CVTypeId IF @ContentVerticalNo IS NULL RETURN SELECT @IntfCVTypeNo=[dbo].[InterfaceCVType].[IntfCVTypeNo] FROM dbo.InterfaceCVType WHERE [dbo].[InterfaceCVType].[InterfaceID]=@InterfaceId AND [dbo].[InterfaceCVType].[Version]=@Version AND [dbo].[InterfaceCVType].[ContentVerticalNo]=@ContentVerticalNo IF @IntfCVTypeNo IS NULL RETURN BEGIN TRY BEGIN TRANSACTION DELETE dbo.InterfaceCVType WHERE [dbo].[InterfaceCVType].[IntfCVTypeNo]=@IntfCVTypeNo EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Detached Interface ContentVerticalType',@CVTypeId, @InterfaceID, @Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
Create Procedure [dbo].[EAIP_getInterfaceMDbLimiters_89] @InterfaceID varchar(10), @version varchar(10) as select distinct [is].[ScreenID], mdbll.LimiterID, [mdbll].[DbLabel] from [dbo].[InterfaceMDbLimiterList] imdbll join [dbo].[InterfaceScreen] [is] on imdbll.IntfScreenNo=[is].IntfScreenNo join [dbo].[MDbLimiterList] mdbll on imdbll.LimiterNo=mdbll.LimiterNo where [is].[InterfaceID]=@InterfaceID and [is].[Version]=@version
--sql content merged from file: \StoredProcedures\EAUI_ResetProfileDbDetails_92.sql CREATE PROCEDURE [dbo].[EAUI_ResetProfileDbDetails_92] (@UserID nvarchar(20), @UserIP varchar(10), @ProfNo int, @DbVerNo int) AS BEGIN DECLARE @Displayname nvarchar (100) BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[ProfileDbDisplayDetails] WHERE [dbo].[ProfileDbDisplayDetails].[ProfNo]=@ProfNo AND [dbo].[ProfileDbDisplayDetails].[DbVerNo] = @DbVerNo SELECT @Displayname=dbo.EAIF_GetDbDisplayName_92(@DbVerNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Reset Profile Db Display Details to Default', @ProfNo, @Displayname COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
-- Get the list of interfaces associated with a given cluster -- � For those clusters that have Yes/True/1 for AutoAdd2Interfaces, return 'All' . -- � For those clusters that have No/False/0 for AutoAdd2Interfaces, and are assigned to interfaces, list those interfaces-versions that have this cluster assigned, comma & space delimited. EX. bsi-live, ehost-aus, ehost-can, ehost-gbr, ehost-live, eds-live -- � For those clusters that have No/False/0 for AutoAdd2Interfaces, and are NOT YET assigned to interfaces return 'Unassigned'. CREATE FUNCTION [dbo].[EAIF_GetClusterInterfaceAssignment_102](@ClustId VARCHAR(20)) RETURNS VARCHAR(MAX) AS BEGIN DECLARE @interfaceVersionList VARCHAR(MAX), @AutoAdd BIT SET @AutoAdd = (SELECT [dbo].[GlobalCluster].[AutoAdd2Interfaces] FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @ClustId) IF @AutoAdd = 1 BEGIN RETURN 'All' END SELECT @interfaceVersionList = COALESCE(@interfaceVersionList+', ' ,'') + [dbo].[GlobalClusterInterface].[InterfaceId] + '-' + [dbo].[GlobalClusterInterface].[Version] FROM [dbo].[GlobalClusterInterface] Where [dbo].[GlobalClusterInterface].[ClustId] = @ClustId IF @@RowCount = 0 BEGIN SET @interfaceVersionList = 'Unassigned' END RETURN @interfaceVersionList END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceScreenLimiterGroup_76](@UserID nvarchar(20), @UserIP varchar(15), @intfScreenNo int, @groupNo int) AS BEGIN DECLARE @GroupCount int SELECT @GroupCount=count([dbo].[InterfaceLimiterGroup].[GroupNo]) FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @intfScreenNo IF @GroupCount = 1 UPDATE [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[GroupNo]=null WHERE [dbo].[DbInterfaceLimiter].[IntfScreenNo] = @intfScreenNo ELSE DELETE [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[IntfScreenNo] = @intfScreenNo and [dbo].[DbInterfaceLimiter].[GroupNo] = @groupNo DELETE From [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @intfScreenNo and [dbo].[InterfaceLimiterGroup].[GroupNo] = @groupNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Limiter Group', 'Delete Limiter Group', @intfScreenNo, @groupNo END
--sql content merged from file: \StoredProcedures\EAIP_DeleteDbFromInterfaceProfiles_70.sql CREATE PROCEDURE [dbo].[EAIP_DeleteDbFromInterfaceProfiles_70]( @CallerUserID varchar(20), @CallerUserIP varchar(15), @InterfaceID varchar(10), @ProductID varchar(10), @Version varchar(10)='live') AS BEGIN SET NOCOUNT ON DECLARE @DbVerNo int Declare @ParamNo int Declare @SourceType char(1) Begin try SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ProductID AND [dbo].[DbList].[DbLabel]='live' Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Select @SourceType=[EASUPPORT].[dbo].[Product].[ProductType] from EASUPPORT.dbo.Product where [EASUPPORT].[dbo].[Product].[ProductID]=@ProductID BEGIN TRANSACTION IF @DbVerNo IS NULL Begin If @SourceTYpe='M' Begin Delete [dbo].[ProfDatabase] From [dbo].[Profile] p join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo join EASUPPORT.dbo.Product prd on dbl.SourceType=prd.ProductType where p.InterfaceID=@InterfaceID and p.Version=@Version and prd.ProductID=@ProductID -- IF @@ERROR <> 0 BEGIN -- ROLLBACK TRANSACTION -- RETURN -- END Insert EASUPPORT.dbo.ActivityLog select @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Delete Profile Databases', (p.CustID+'.'+p.GroupID+'.'+p.ProfID), [dbl].[DbName], NULL, NULL, NULL from [dbo].[Profile] p join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo join EASUPPORT.dbo.Product prd on dbl.SourceType=prd.ProductType where p.InterfaceID=@InterfaceID and p.Version=@Version and prd.ProductID=@ProductID -- IF @@ERROR <> 0 BEGIN -- ROLLBACK TRANSACTION -- RETURN -- END Delete [dbo].[CustomParamScalarValues] from [dbo].[CustomParamScalarValues] cpsv join (Select * from [dbo].[Profile] where [dbo].[Profile].[ProfNo] not in ( select p.ProfNo from [dbo].[Profile] p join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo left outer join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where [dbl].[SourceType] not in ('D', 'E', 'S'))) p on cpsv.TargetNo=p.ProfNo where [cpsv].[ParamNo]=@ParamNo Commit Transaction Return End Else if @SourceType='C' Begin Delete [dbo].[ProfDatabase] From [dbo].[Profile] p join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo join EASUPPORT.dbo.CustomerCatalogs cc on dbl.DbName=cc.DbName where p.InterfaceID=@InterfaceID and p.Version=@Version End End /* Log the ProfNo & DbVerNo deleted from ProfDatabase. */ INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Delete Profile Databases', (a.CustID+'.'+a.GroupID+'.'+a.ProfID), dbl.DbName, NULL, NULL, NULL FROM [dbo].[ProfDatabase] AS pdb INNER JOIN [dbo].[Profile] AS a ON pdb.ProfNo=a.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON pdb.DbVerNo=dbl.DbVerNo WHERE pdb.DbVerNo=@DbVerNo AND a.InterfaceID=@InterfaceID AND a.Version=@Version -- IF @@ERROR <> 0 BEGIN -- ROLLBACK TRANSACTION -- RETURN -- END DELETE [dbo].[ProfDatabase] FROM [dbo].[ProfDatabase] AS pdb INNER JOIN [dbo].[Profile] AS prf ON pdb.ProfNo = prf.ProfNo WHERE pdb.DbVerNo=@DbVerNo AND prf.InterfaceID = @InterfaceID AND prf.Version=@Version -- IF @@ERROR <> 0 BEGIN -- ROLLBACK TRANSACTION -- RETURN -- END COMMIT TRANSACTION End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch END
CREATE PROCEDURE [dbo].[EAUI_GetProfileOtherServiceLinks_86](@ProfNo int, @reorder bit)AS BEGIN IF @reorder = 1 BEGIN Create TABLE #RowNumber ( RowNumber int IDENTITY (1, 1), LinkNo int ) INSERT #RowNumber (#RowNumber.[LinkNo]) SELECT [dbo].[ProfOtherServiceLinks].[LinkNo] FROM [dbo].[ProfOtherServiceLinks] WHERE [dbo].[ProfOtherServiceLinks].[ProfNo] = @ProfNo ORDER BY [dbo].[ProfOtherServiceLinks].[SeqNo] SELECT [r].[RowNumber] as SeqNo, p.LinkNo, ProfNo, ISNULL(LinkURL,N'') LinkURL, ISNULL(LinkIcon, N'') LinkIcon, ISNULL(LinkCaption,N'') LinkCaption, ISNULL(TargetProfNo, 0) TargetProfNo, ISNULL(ContextSearchURL,N'') ContextSearchURL FROM #RowNumber r JOIN [dbo].[ProfOtherServiceLinks] p ON r.LinkNo = p.LinkNo ORDER BY [r].[RowNumber] DROP TABLE #RowNumber END ELSE BEGIN SELECT [dbo].[ProfOtherServiceLinks].[SeqNo], [dbo].[ProfOtherServiceLinks].[LinkNo], [dbo].[ProfOtherServiceLinks].[ProfNo], ISNULL([dbo].[ProfOtherServiceLinks].[LinkURL],N'') LinkURL, ISNULL([dbo].[ProfOtherServiceLinks].[LinkIcon], N'') LinkIcon, ISNULL([dbo].[ProfOtherServiceLinks].[LinkCaption],N'') LinkCaption, ISNULL([dbo].[ProfOtherServiceLinks].[TargetProfNo], 0) TargetProfNo, ISNULL([dbo].[ProfOtherServiceLinks].[ContextSearchURL],N'') ContextSearchURL FROM [dbo].[ProfOtherServiceLinks] WHERE [dbo].[ProfOtherServiceLinks].[ProfNo] = @ProfNo Order By [dbo].[ProfOtherServiceLinks].[SeqNo] END END
CREATE PROCEDURE [dbo].[EAUI_AddModifyInterfaceScreenLimiterGroupDetails_76](@UserID nvarchar(20), @UserIP varchar(15), @IntfScreenNo int, @GroupNo int, @Description nvarchar(255), @Action varchar(4)) AS BEGIN DECLARE @AddMod varchar(25) IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[GroupNo]= @GroupNo and [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @IntfScreenNo) BEGIN DECLARE @ScreenDescr nvarchar(255) SELECT @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo] = @IntfScreenNo RAISERROR('The GroupNo:"%d" already exists for Screen "%s".', 16,-1, @GroupNo, @ScreenDescr) RETURN END INSERT INTO [dbo].[InterfaceLimiterGroup]([dbo].[InterfaceLimiterGroup].[IntfScreenNo], [dbo].[InterfaceLimiterGroup].[GroupNo], [dbo].[InterfaceLimiterGroup].[Description]) VALUES (@IntfScreenNo, @GroupNo, @Description) SET @AddMod = 'Add Version' END ELSE BEGIN UPDATE [dbo].[InterfaceLimiterGroup] SET [dbo].[InterfaceLimiterGroup].[Description] = @Description WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo] = @GroupNo SET @AddMod = 'Edit Version' END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface Screen Limiter Groups',@AddMod, @IntfScreenNo, @GroupNo, @Description END
-- EHPMEBSCOADMIN-926 CREATE PROCEDURE [dbo].[EPCS_GetWholeDatabaseDisciplines_131](@DbName as VARCHAR(10)) AS BEGIN DECLARE @HighestDbLabel VARCHAR(10) SET @HighestDbLabel = dbo.EAIF_GetHighestDbLabel_131(@DbName) SELECT @DbName AS DbName, dis.DisciplineCode FROM dbo.DbDiscipline dbd JOIN [dbo].[DbList] dl ON dbd.DbName = dl.DbName JOIN [dbo].[DisciplineList] dis ON dbd.DisciplineNo = dis.DisciplineNo WHERE dl.DbName = @DbName AND dl.DbLabel = @HighestDbLabel END
CREATE PROCEDURE dbo.EACOPY_AUTO_LoadFromXmlDbList(@CopyToDbName varchar(10), @CopyToDbLabel varchar(10), @xmlDoc xml, @ExcludeList xml, @FKErrorXml xml OUT) AS BEGIN SET NOCOUNT ON -- Process exclude list xml and -- set table variables to 1 if table should be excluded otherwise set to 0. DECLARE @ExcludeDbAuthority BIT; DECLARE @ExcludeDbParamXmlValues BIT; DECLARE @ExcludeDbBrowseOptionCaption BIT; DECLARE @ExcludeDbInterfaceBrowseOption BIT; DECLARE @ExcludeDbBrowseOption BIT; DECLARE @ExcludeDbCluster BIT; DECLARE @ExcludeDbFeature BIT; DECLARE @ExcludeDbServerParams BIT; DECLARE @ExcludeInterfaceNonSearchDbs BIT; DECLARE @ExcludeDbListExternalSource BIT; DECLARE @ExcludeDbFieldElement BIT; DECLARE @ExcludeDbFieldGroupCaption BIT; DECLARE @ExcludeDbFieldGroupDefaults BIT; DECLARE @ExcludeDbFieldGroup BIT; DECLARE @ExcludeDbForm BIT; DECLARE @ExcludeDbGroup BIT; DECLARE @ExcludeDbInterfaceLimiter BIT; DECLARE @ExcludeDbLimiterCaption BIT; DECLARE @ExcludeDbLimiterDetail BIT; DECLARE @ExcludeDbLimiter BIT; DECLARE @ExcludeDBMultiDbAuthList BIT; DECLARE @ExcludeDbParamScalarValues BIT; DECLARE @ExcludeDbPublisher BIT; DECLARE @ExcludeDbRTACInfo BIT; DECLARE @ExcludeDbPickupLocation BIT; DECLARE @ExcludeDbSearchContextMapping BIT; DECLARE @ExcludeDbInterfaceSearchOption BIT; DECLARE @ExcludeDbSearchOptionCaption BIT; DECLARE @ExcludeDbSearchOption BIT; DECLARE @ExcludeDbBibMap BIT; DECLARE @ExcludeDbFieldTag BIT; DECLARE @ExcludeDbSegFileInfo BIT; DECLARE @ExcludeDbThesaurus BIT; DECLARE @ExcludeDbSegment BIT; DECLARE @ExcludeDbDiscipline BIT; DECLARE @ExcludeDbSourceTarget BIT; DECLARE @ExcludeDbSort BIT; DECLARE @ExcludeDbDocType BIT; DECLARE @ExcludeDbSubset BIT; DECLARE @ExcludeDbTopic BIT; DECLARE @ExcludeDbVolume BIT; DECLARE @ExcludeDbList BIT; DECLARE @DbAuthorityXml xml; DECLARE @DbParamXmlValuesXml xml; DECLARE @DbBrowseOptionCaptionXml xml; DECLARE @DbInterfaceBrowseOptionXml xml; DECLARE @DbBrowseOptionXml xml; DECLARE @DbClusterXml xml; DECLARE @DbFeatureXml xml; DECLARE @DbServerParamsXml xml; DECLARE @InterfaceNonSearchDbsXml xml; DECLARE @DbListExternalSourceXml xml; DECLARE @DbFieldElementXml xml; DECLARE @DbFieldGroupCaptionXml xml; DECLARE @DbFieldGroupDefaultsXml xml; DECLARE @DbFieldGroupXml xml; DECLARE @DbFormXml xml; DECLARE @DbGroupXml xml; DECLARE @DbInterfaceLimiterXml xml; DECLARE @DbLimiterCaptionXml xml; DECLARE @DbLimiterDetailXml xml; DECLARE @DbLimiterXml xml; DECLARE @DBMultiDbAuthListXml xml; DECLARE @DbParamScalarValuesXml xml; DECLARE @DbPublisherXml xml; DECLARE @DbRTACInfoXml xml; DECLARE @DbPickupLocationXml xml; DECLARE @DbSearchContextMappingXml xml; DECLARE @DbInterfaceSearchOptionXml xml; DECLARE @DbSearchOptionCaptionXml xml; DECLARE @DbSearchOptionXml xml; DECLARE @DbBibMapXml xml; DECLARE @DbFieldTagXml xml; DECLARE @DbSegFileInfoXml xml; DECLARE @DbThesaurusXml xml; DECLARE @DbSegmentXml xml; DECLARE @DbDisciplineXml xml; DECLARE @DbSourceTargetXml xml; DECLARE @DbSortXml xml; DECLARE @DbDocTypeXml xml; DECLARE @DbSubsetXml xml; DECLARE @DbTopicXml xml; DECLARE @DbVolumeXml xml; DECLARE @DbListXml xml; DECLARE @FKErrorFlag BIT; SELECT @FKErrorFlag = 0; DECLARE @exclude TABLE(TableName varchar(255)); INSERT INTO @exclude(TableName) SELECT LOWER(s.[Exclude].value('@name', 'varchar(255)')) TableName FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]); IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbauthority') SELECT @ExcludeDbAuthority = 1; ELSE SELECT @ExcludeDbAuthority = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbparamxmlvalues') SELECT @ExcludeDbParamXmlValues = 1; ELSE SELECT @ExcludeDbParamXmlValues = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbbrowseoptioncaption') SELECT @ExcludeDbBrowseOptionCaption = 1; ELSE SELECT @ExcludeDbBrowseOptionCaption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbinterfacebrowseoption') SELECT @ExcludeDbInterfaceBrowseOption = 1; ELSE SELECT @ExcludeDbInterfaceBrowseOption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbbrowseoption') BEGIN SELECT @ExcludeDbBrowseOption = 1; SELECT @ExcludeDbBrowseOptionCaption = 1; SELECT @ExcludeDbInterfaceBrowseOption = 1; END ELSE SELECT @ExcludeDbBrowseOption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbcluster') SELECT @ExcludeDbCluster = 1; ELSE SELECT @ExcludeDbCluster = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbfeature') SELECT @ExcludeDbFeature = 1; ELSE SELECT @ExcludeDbFeature = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbserverparams') SELECT @ExcludeDbServerParams = 1; ELSE SELECT @ExcludeDbServerParams = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='interfacenonsearchdbs') SELECT @ExcludeInterfaceNonSearchDbs = 1; ELSE SELECT @ExcludeInterfaceNonSearchDbs = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dblistexternalsource') SELECT @ExcludeDbListExternalSource = 1; ELSE SELECT @ExcludeDbListExternalSource = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbfieldelement') SELECT @ExcludeDbFieldElement = 1; ELSE SELECT @ExcludeDbFieldElement = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbfieldgroupcaption') SELECT @ExcludeDbFieldGroupCaption = 1; ELSE SELECT @ExcludeDbFieldGroupCaption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbfieldgroupdefaults') SELECT @ExcludeDbFieldGroupDefaults = 1; ELSE SELECT @ExcludeDbFieldGroupDefaults = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbfieldgroup') BEGIN SELECT @ExcludeDbFieldGroup = 1; SELECT @ExcludeDbFieldElement = 1; SELECT @ExcludeDbFieldGroupCaption = 1; SELECT @ExcludeDbFieldGroupDefaults = 1; END ELSE SELECT @ExcludeDbFieldGroup = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbform') SELECT @ExcludeDbForm = 1; ELSE SELECT @ExcludeDbForm = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbgroup') SELECT @ExcludeDbGroup = 1; ELSE SELECT @ExcludeDbGroup = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbinterfacelimiter') SELECT @ExcludeDbInterfaceLimiter = 1; ELSE SELECT @ExcludeDbInterfaceLimiter = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dblimitercaption') SELECT @ExcludeDbLimiterCaption = 1; ELSE SELECT @ExcludeDbLimiterCaption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dblimiterdetail') SELECT @ExcludeDbLimiterDetail = 1; ELSE SELECT @ExcludeDbLimiterDetail = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dblimiter') BEGIN SELECT @ExcludeDbLimiter = 1; SELECT @ExcludeDbInterfaceLimiter = 1; SELECT @ExcludeDbLimiterCaption = 1; SELECT @ExcludeDbLimiterDetail = 1; END ELSE SELECT @ExcludeDbLimiter = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbmultidbauthlist') SELECT @ExcludeDBMultiDbAuthList = 1; ELSE SELECT @ExcludeDBMultiDbAuthList = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbparamscalarvalues') SELECT @ExcludeDbParamScalarValues = 1; ELSE SELECT @ExcludeDbParamScalarValues = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbpublisher') SELECT @ExcludeDbPublisher = 1; ELSE SELECT @ExcludeDbPublisher = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbrtacinfo') SELECT @ExcludeDbRTACInfo = 1; ELSE SELECT @ExcludeDbRTACInfo = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbpickuplocation') SELECT @ExcludeDbPickupLocation = 1; ELSE SELECT @ExcludeDbPickupLocation = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsearchcontextmapping') SELECT @ExcludeDbSearchContextMapping = 1; ELSE SELECT @ExcludeDbSearchContextMapping = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbinterfacesearchoption') SELECT @ExcludeDbInterfaceSearchOption = 1; ELSE SELECT @ExcludeDbInterfaceSearchOption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsearchoptioncaption') SELECT @ExcludeDbSearchOptionCaption = 1; ELSE SELECT @ExcludeDbSearchOptionCaption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsearchoption') BEGIN SELECT @ExcludeDbSearchOption = 1; SELECT @ExcludeDbInterfaceSearchOption = 1; SELECT @ExcludeDbSearchOptionCaption = 1; END ELSE SELECT @ExcludeDbSearchOption = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbbibmap') SELECT @ExcludeDbBibMap = 1; ELSE SELECT @ExcludeDbBibMap = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbfieldtag') SELECT @ExcludeDbFieldTag = 1; ELSE SELECT @ExcludeDbFieldTag = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsegfileinfo') SELECT @ExcludeDbSegFileInfo = 1; ELSE SELECT @ExcludeDbSegFileInfo = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbthesaurus') SELECT @ExcludeDbThesaurus = 1; ELSE SELECT @ExcludeDbThesaurus = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsegment') BEGIN SELECT @ExcludeDbSegment = 1; SELECT @ExcludeDbBibMap = 1; SELECT @ExcludeDbFieldTag = 1; SELECT @ExcludeDbSegFileInfo = 1; SELECT @ExcludeDbThesaurus = 1; END ELSE SELECT @ExcludeDbSegment = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbdiscipline') SELECT @ExcludeDbDiscipline = 1; ELSE SELECT @ExcludeDbDiscipline = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsourcetarget') SELECT @ExcludeDbSourceTarget = 1; ELSE SELECT @ExcludeDbSourceTarget = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsort') SELECT @ExcludeDbSort = 1; ELSE SELECT @ExcludeDbSort = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbdoctype') SELECT @ExcludeDbDocType = 1; ELSE SELECT @ExcludeDbDocType = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbsubset') SELECT @ExcludeDbSubset = 1; ELSE SELECT @ExcludeDbSubset = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbtopic') SELECT @ExcludeDbTopic = 1; ELSE SELECT @ExcludeDbTopic = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dbvolume') SELECT @ExcludeDbVolume = 1; ELSE SELECT @ExcludeDbVolume = 0; IF EXISTS(SELECT TableName FROM @exclude WHERE TableName ='dblist') BEGIN SELECT @ExcludeDbList = 1; SELECT @ExcludeDbAuthority = 1; SELECT @ExcludeDbParamXmlValues = 1; SELECT @ExcludeDbBrowseOption = 1; SELECT @ExcludeDbCluster = 1; SELECT @ExcludeDbFeature = 1; SELECT @ExcludeDbServerParams = 1; SELECT @ExcludeInterfaceNonSearchDbs = 1; SELECT @ExcludeDbListExternalSource = 1; SELECT @ExcludeDbFieldGroup = 1; SELECT @ExcludeDbForm = 1; SELECT @ExcludeDbGroup = 1; SELECT @ExcludeDbLimiter = 1; SELECT @ExcludeDBMultiDbAuthList = 1; SELECT @ExcludeDbParamScalarValues = 1; SELECT @ExcludeDbPublisher = 1; SELECT @ExcludeDbRTACInfo = 1; SELECT @ExcludeDbPickupLocation = 1; SELECT @ExcludeDbSearchContextMapping = 1; SELECT @ExcludeDbSearchOption = 1; SELECT @ExcludeDbSegment = 1; SELECT @ExcludeDbDiscipline = 1; SELECT @ExcludeDbSourceTarget = 1; SELECT @ExcludeDbSort = 1; SELECT @ExcludeDbDocType = 1; SELECT @ExcludeDbSubset = 1; SELECT @ExcludeDbTopic = 1; SELECT @ExcludeDbVolume = 1; END ELSE SELECT @ExcludeDbList = 0; -- Declarations for temp tables to hold values DECLARE @FromDbLabel varchar(10); DECLARE @ToDbLabel varchar(10); SELECT @FromDbLabel = s.[DbList].value('@DbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r') AS s([DbList]); IF (@FromDbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @FromDbLabel = 'custom'; SELECT @ToDbLabel = @CopyToDbLabel; IF (@ToDbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @ToDbLabel = 'custom'; DECLARE @DbList TABLE ( [DbVerNo] int NOT NULL, [DbName] varchar(10) NOT NULL, [DbLabel] varchar(10) NOT NULL, [DisplayName] nvarchar(100) NOT NULL, [DSFamilyName] varchar(100) NOT NULL, [DbGroup] varchar(20) NULL, [DbType] smallint NOT NULL, [ContentType] smallint NOT NULL, [LastUpdateDate] smalldatetime NOT NULL, [MultiSegment] smallint NOT NULL, [EnforceSimUsage] bit NOT NULL, [ShowStats] bit NOT NULL, [ShowOnDDSConsole] bit NOT NULL, [WebClient] bit NOT NULL, [WinClient] bit NOT NULL, [CharClient] bit NOT NULL, [Z3950Client] bit NOT NULL, [InterfaceID] varchar(10) NULL, [DbCategory] char(1) NULL, [EPXBuild] bit NOT NULL, [EDABuild] bit NOT NULL, [IncludeWhenAutoAdd] bit NOT NULL, [SourceType] char(1) NOT NULL, [NonSearchableDb] bit NOT NULL, [ArchiveProfSettings] bit NOT NULL ); DECLARE @DbAuthority TABLE ( [MainDbVerNo] int NOT NULL, [AuthDbVerNo] int NOT NULL, [OwnedFlag] bit NOT NULL, [SeqNo] smallint NULL , AuthDbName varchar(10) NULL , AuthDbLabel varchar(10) NULL ); DECLARE @DbParamXmlValues TABLE ( [DbVerNo] int NOT NULL, [ParamNo] smallint NOT NULL, [ItemName] varchar(255) NOT NULL, [ParamValue] nvarchar(max) NULL, [SeqNo] smallint NULL , ParamName varchar(100) NULL ); DECLARE @DbBrowseOption TABLE ( [DbVerNo] int NOT NULL, [BrowseOptionNo] int NOT NULL, [OptionType] char(1) NOT NULL, [SearchString] varchar(255) NULL, [TargetDb] varchar(10) NULL, [SourceType] varchar(100) NULL, [TabImage] varchar(255) NULL, [AuthoritySubset] varchar(20) NULL, [AuthorityView] varchar(20) NULL, [IsHeading] bit NOT NULL , BrowseOptionId varchar(20) NULL ); DECLARE @DbBrowseOptionCaption TABLE ( [DbVerNo] int NOT NULL, [BrowseOptionNo] int NOT NULL, [LangCode] varchar(10) NOT NULL, [OptionCaption] nvarchar(255) NOT NULL, [ResultCaption] nvarchar(255) NULL, [Description] nvarchar(max) NULL , BrowseOptionId varchar(20) NULL ); DECLARE @DbInterfaceBrowseOption TABLE ( [DbVerNo] int NOT NULL, [IntfScreenNo] int NOT NULL, [BrowseOptionNo] int NOT NULL, [Show] bit NOT NULL, [SeqNo] smallint NOT NULL , BrowseOptionId varchar(20) NULL , InterfaceID varchar(10) NULL , Version varchar(10) NULL , ScreenID varchar(10) NULL ); DECLARE @DbCluster TABLE ( [DbVerNo] int NOT NULL, [ClustNo] int NOT NULL, [Enable] bit NOT NULL, [DbSearchTag] nvarchar(5) NULL , ClustId varchar(20) NULL , DbLabel varchar(50) NULL ); DECLARE @DbFeature TABLE ( [DbVerNo] int NOT NULL, [FeatureNo] smallint NOT NULL , FeatureName varchar(100) NULL , Category varchar(20) NULL , SubCategory varchar(20) NULL ); DECLARE @DbServerParams TABLE ( [DbVerNo] int NOT NULL, [Threads] int NOT NULL, [WaitForRequest] int NOT NULL, [DefSearchInstances] int NOT NULL, [MaxSearchInstances] int NOT NULL, [DefRetrieveInstances] int NOT NULL, [MaxRetrieveInstances] int NOT NULL, [DefFormatInstances] int NOT NULL, [MaxFormatInstances] int NOT NULL, [DefFullTextInstances] int NOT NULL, [MaxFullTextInstances] int NOT NULL, [DefThesaurusInstances] int NOT NULL, [MaxThesaurusInstances] int NOT NULL, [MaxFuzzyTerms] int NOT NULL, [MaxBooleanTerms] int NOT NULL, [MaxFuzzyRecordNumbers] int NOT NULL, [MaxBooleanRecordNumbers] int NOT NULL, [MaxRecords] int NOT NULL ); DECLARE @InterfaceNonSearchDbs TABLE ( [InterfaceID] varchar(10) NOT NULL, [Version] varchar(10) NOT NULL, [DbVerNo] int NOT NULL, [SeqNo] smallint NULL ); DECLARE @DbListExternalSource TABLE ( [ExternalDbID] varchar(255) NULL, [DbVerNo] int NOT NULL, [VendorName] nvarchar(100) NULL, [ConnectorType] nvarchar(20) NULL, [Free] bit NOT NULL, [ConnectorProvider] char(1) NOT NULL, [Notes] nvarchar(1000) NULL ); DECLARE @DbFieldGroup TABLE ( [DbVerNo] int NOT NULL, [FieldGroupNo] int NOT NULL , FieldGroupId varchar(100) NULL ); DECLARE @DbFieldElement TABLE ( [DbVerNo] int NOT NULL, [FieldGroupNo] int NOT NULL, [FieldElementNo] int NOT NULL , FieldElementName varchar(100) NULL , FieldGroupId varchar(100) NULL ); DECLARE @DbFieldGroupCaption TABLE ( [DbVerNo] int NOT NULL, [FieldGroupNo] int NOT NULL, [LangCode] varchar(10) NOT NULL, [Caption] nvarchar(255) NOT NULL , FieldGroupId varchar(100) NULL ); DECLARE @DbFieldGroupDefaults TABLE ( [DbVerNo] int NOT NULL, [FieldGroupNo] int NOT NULL, [OutputMode] varchar(10) NOT NULL, [MarketID] varchar(20) NOT NULL, [DefValue] bit NOT NULL , FieldGroupId varchar(100) NULL ); DECLARE @DbForm TABLE ( [DbVerNo] int NOT NULL, [FormNumber] int NOT NULL, [FormName] varchar(100) NOT NULL, [Encoding] varchar(10) NOT NULL, [Category] char(1) NOT NULL ); DECLARE @DbGroup TABLE ( [DbVerNo] int NOT NULL, [GroupNo] int NOT NULL , GroupID varchar(12) NULL ); DECLARE @DbLimiter TABLE ( [DbVerNo] int NOT NULL, [LimiterNo] int NOT NULL, [ResFlag] int NOT NULL, [SearchString] varchar(4000) NULL, [SeqNo] smallint NOT NULL, [DefValue] varchar(255) NULL , LimiterId varchar(20) NULL , DbLabel varchar(10) NULL ); DECLARE @DbInterfaceLimiter TABLE ( [DbVerNo] int NOT NULL, [IntfScreenNo] int NOT NULL, [LimiterNo] int NOT NULL, [ControlType] smallint NULL, [Show] bit NOT NULL, [DefValue] varchar(255) NULL, [GroupNo] smallint NULL, [SeqNo] smallint NOT NULL, [DefPosn] smallint NULL, [ColNum] smallint NULL , InterfaceID varchar(10) NULL , Version varchar(10) NULL , ScreenID varchar(10) NULL , LimiterId varchar(20) NULL , DbLabel varchar(10) NULL ); DECLARE @DbLimiterCaption TABLE ( [DbVerNo] int NOT NULL, [LimiterNo] int NOT NULL, [LangCode] varchar(10) NOT NULL, [Caption] nvarchar(100) NULL, [MouseOverText] nvarchar(255) NULL , LimiterId varchar(20) NULL , DbLabel varchar(10) NULL ); DECLARE @DbLimiterDetail TABLE ( [DbVerNo] int NOT NULL, [LimiterNo] int NOT NULL, [ControlTemplate] nvarchar(max) NULL , LimiterId varchar(20) NULL , DbLabel varchar(10) NULL ); DECLARE @DBMultiDbAuthList TABLE ( [MultiDbAuthID] varchar(10) NOT NULL, [DbVerNo] int NOT NULL ); DECLARE @DbParamScalarValues TABLE ( [DbVerNo] int NOT NULL, [ParamNo] smallint NOT NULL, [ParamValue] nvarchar(max) NULL , ParamName varchar(100) NULL ); DECLARE @DbPublisher TABLE ( [DbVerNo] int NOT NULL, [DbName] varchar(10) NOT NULL, [PublisherName] nvarchar(100) NULL, [PubID] varchar(9) NULL , DefPublisherName nvarchar(100) NULL ); DECLARE @DbRTACInfo TABLE ( [DbVerNo] int NOT NULL, [Enable] bit NOT NULL, [Config] nvarchar(max) NULL, [Translation] nvarchar(max) NULL, [ILSIntegration] nvarchar(255) NULL ); DECLARE @DbPickupLocation TABLE ( [DbVerNo] int NOT NULL, [LocationID] nvarchar(255) NOT NULL, [DisplayName] nvarchar(255) NOT NULL, [SeqNo] smallint NULL ); DECLARE @DbSearchContextMapping TABLE ( [DbVerNo] int NOT NULL, [ContextName] varchar(10) NOT NULL, [ConceptName] varchar(20) NOT NULL, [SearchTag] nvarchar(5) NOT NULL ); DECLARE @DbSearchOption TABLE ( [DbVerNo] int NOT NULL, [SearchOptionNo] int NOT NULL, [OptionType] char(1) NOT NULL, [SearchString] varchar(255) NULL, [TargetDb] varchar(10) NULL, [SourceType] varchar(100) NULL, [TabImage] varchar(255) NULL, [AuthoritySubset] varchar(20) NULL, [AuthorityView] varchar(20) NULL , SearchOptionId varchar(20) NULL ); DECLARE @DbInterfaceSearchOption TABLE ( [DbVerNo] int NOT NULL, [IntfScreenNo] int NOT NULL, [SearchOptionNo] int NOT NULL, [Show] bit NOT NULL, [SeqNo] smallint NOT NULL , InterfaceID varchar(10) NULL , Version varchar(10) NULL , ScreenID varchar(10) NULL , SearchOptionId varchar(20) NULL ); DECLARE @DbSearchOptionCaption TABLE ( [DbVerNo] int NOT NULL, [SearchOptionNo] int NOT NULL, [LangCode] varchar(10) NOT NULL, [OptionCaption] nvarchar(255) NOT NULL, [ResultCaption] nvarchar(255) NULL, [Description] nvarchar(max) NULL , SearchOptionId varchar(20) NULL ); DECLARE @DbSegment TABLE ( [DbVerNo] int NOT NULL, [SegName] varchar(10) NOT NULL, [SegDescription] nvarchar(100) NOT NULL, [SeqNo] smallint NULL, [ProductionDate] smalldatetime NULL ); DECLARE @DbBibMap TABLE ( [DbVerNo] int NOT NULL, [SegName] varchar(10) NOT NULL, [BibField] int NOT NULL, [FieldTag] char(2) NOT NULL, [SeqNo] smallint NOT NULL ); DECLARE @DbFieldTag TABLE ( [DbVerNo] int NOT NULL, [SegName] varchar(10) NOT NULL, [FieldTag] char(2) NOT NULL, [Description] nvarchar(100) NULL, [IndexType] varchar(10) NULL, [Category] int NULL, [ThesNumber] int NULL, [FieldNumbers] varchar(255) NULL, [SeqNo] smallint NOT NULL, [Description2] nvarchar(200) NULL ); DECLARE @DbSegFileInfo TABLE ( [DbVerNo] int NOT NULL, [SegName] varchar(10) NOT NULL, [Volume] varchar(20) NOT NULL, [EpsFile] varchar(255) NULL, [EpdFile] varchar(255) NULL, [EpiFile] varchar(255) NULL, [EpfFile] varchar(255) NULL, [JumpFile] varchar(255) NULL, [LookupDir] varchar(255) NULL, [EplFile] varchar(255) NULL, [EpgFile] varchar(255) NULL, [EpuFile] varchar(255) NULL, [ImageServerURL] varchar(255) NULL ); DECLARE @DbThesaurus TABLE ( [DbVerNo] int NOT NULL, [SegName] varchar(10) NOT NULL, [Volume] varchar(20) NOT NULL, [ThesNumber] int NOT NULL, [ThesFile] varchar(255) NULL, [UserControlled] bit NOT NULL, [StoreKWIC] bit NOT NULL ); DECLARE @DbDiscipline TABLE ( [DisciplineNo] int NOT NULL, [DbName] varchar(10) NOT NULL ); DECLARE @DbSourceTarget TABLE ( [SourceDbNo] int NOT NULL, [TargetDbNo] int NOT NULL, [TargetType] varchar(10) NOT NULL, [SLCollID] varchar(50) NOT NULL , TargetDbName varchar(10) NULL , TargetDbLabel varchar(10) NULL ); DECLARE @DbSort TABLE ( [DbVerNo] int NOT NULL, [SortID] varchar(10) NOT NULL, [SortName] nvarchar(20) NOT NULL, [SortField] varchar(100) NULL, [SeqNo] smallint NULL, [Hide] bit NOT NULL ); DECLARE @DbDocType TABLE ( [DbVerNo] int NOT NULL, [DocTypeNo] int NOT NULL, [TargetDb] varchar(10) NOT NULL, [SearchString] varchar(1500) NULL , DocTypeID varchar(10) NULL ); DECLARE @DbSubset TABLE ( [SubsetDbVerNo] int NOT NULL, [PhysDbVerNo] int NOT NULL, [MergeSearches] bit NOT NULL, [DBDefSearchExprType] char(1) NOT NULL, [DBDefSearchExpression] nvarchar(255) NULL , PhysDbName varchar(10) NULL , PhysDbLabel varchar(10) NULL ); DECLARE @DbTopic TABLE ( [DbVerNo] int NOT NULL, [TopicNo] int NOT NULL , TopicID varchar(10) NULL ); DECLARE @DbVolume TABLE ( [DbVerNo] int NOT NULL, [Volume] varchar(20) NOT NULL, [LastUpdateDate] datetime NOT NULL, [EpkPath] varchar(255) NULL ); -- Declare and retrieve variables for ID columns of primary table DECLARE @DbVerNo int; SELECT @DbVerNo = DbVerNo FROM dbo.DbList WHERE DbName = @CopyToDbName AND DbLabel = @CopyToDbLabel; IF (@DbVerNo IS NULL) BEGIN INSERT INTO dbo.DbList( [DbName], [DbLabel], [DisplayName], [DSFamilyName], [DbGroup], [DbType], [ContentType], [LastUpdateDate], [MultiSegment], [EnforceSimUsage], [ShowStats], [ShowOnDDSConsole], [WebClient], [WinClient], [CharClient], [Z3950Client], [InterfaceID], [DbCategory], [EPXBuild], [EDABuild], [IncludeWhenAutoAdd], [SourceType], [NonSearchableDb], [ArchiveProfSettings]) SELECT @CopyToDbName DbName, @CopyToDbLabel DbLabel, s.[DbList].value('@DisplayName', 'nvarchar(100)'), s.[DbList].value('@DSFamilyName', 'varchar(100)'), s.[DbList].value('@DbGroup', 'varchar(20)'), s.[DbList].value('@DbType', 'smallint'), s.[DbList].value('@ContentType', 'smallint'), s.[DbList].value('@LastUpdateDate', 'smalldatetime'), s.[DbList].value('@MultiSegment', 'smallint'), s.[DbList].value('@EnforceSimUsage', 'bit'), s.[DbList].value('@ShowStats', 'bit'), s.[DbList].value('@ShowOnDDSConsole', 'bit'), s.[DbList].value('@WebClient', 'bit'), s.[DbList].value('@WinClient', 'bit'), s.[DbList].value('@CharClient', 'bit'), s.[DbList].value('@Z3950Client', 'bit'), s.[DbList].value('@InterfaceID', 'varchar(10)'), s.[DbList].value('@DbCategory', 'char(1)'), s.[DbList].value('@EPXBuild', 'bit'), s.[DbList].value('@EDABuild', 'bit'), s.[DbList].value('@IncludeWhenAutoAdd', 'bit'), s.[DbList].value('@SourceType', 'char(1)'), s.[DbList].value('@NonSearchableDb', 'bit'), s.[DbList].value('@ArchiveProfSettings', 'bit') FROM @xmlDoc.nodes('DbList/r') AS s([DbList]); SET @DbVerNo = SCOPE_IDENTITY(); END -- Statements to shred xml and store in table variables IF (@ExcludeDbList = 0) BEGIN INSERT INTO @DbList ( [DbVerNo], [DbName], [DbLabel], [DisplayName], [DSFamilyName], [DbGroup], [DbType], [ContentType], [LastUpdateDate], [MultiSegment], [EnforceSimUsage], [ShowStats], [ShowOnDDSConsole], [WebClient], [WinClient], [CharClient], [Z3950Client], [InterfaceID], [DbCategory], [EPXBuild], [EDABuild], [IncludeWhenAutoAdd], [SourceType], [NonSearchableDb], [ArchiveProfSettings] ) SELECT @DbVerNo DbVerNo, s.[DbList].value('@DbName', 'varchar(10)'), s.[DbList].value('@DbLabel', 'varchar(10)'), s.[DbList].value('@DisplayName', 'nvarchar(100)'), s.[DbList].value('@DSFamilyName', 'varchar(100)'), s.[DbList].value('@DbGroup', 'varchar(20)'), s.[DbList].value('@DbType', 'smallint'), s.[DbList].value('@ContentType', 'smallint'), s.[DbList].value('@LastUpdateDate', 'smalldatetime'), s.[DbList].value('@MultiSegment', 'smallint'), s.[DbList].value('@EnforceSimUsage', 'bit'), s.[DbList].value('@ShowStats', 'bit'), s.[DbList].value('@ShowOnDDSConsole', 'bit'), s.[DbList].value('@WebClient', 'bit'), s.[DbList].value('@WinClient', 'bit'), s.[DbList].value('@CharClient', 'bit'), s.[DbList].value('@Z3950Client', 'bit'), s.[DbList].value('@InterfaceID', 'varchar(10)'), s.[DbList].value('@DbCategory', 'char(1)'), s.[DbList].value('@EPXBuild', 'bit'), s.[DbList].value('@EDABuild', 'bit'), s.[DbList].value('@IncludeWhenAutoAdd', 'bit'), s.[DbList].value('@SourceType', 'char(1)'), s.[DbList].value('@NonSearchableDb', 'bit'), s.[DbList].value('@ArchiveProfSettings', 'bit') FROM @xmlDoc.nodes('DbList/r') AS s([DbList]); END IF (@ExcludeDbAuthority = 0) BEGIN INSERT INTO @DbAuthority ( [MainDbVerNo], [AuthDbVerNo], [OwnedFlag], [SeqNo] , AuthDbName , AuthDbLabel ) SELECT @DbVerNo MainDbVerNo, s.[DbAuthority].value('@AuthDbVerNo', 'int'), s.[DbAuthority].value('@OwnedFlag', 'bit'), s.[DbAuthority].value('@SeqNo', 'smallint') , s.[DbAuthority].value('@AuthDbName', 'varchar(10)') , s.[DbAuthority].value('@AuthDbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbAuthority/r') AS s([DbAuthority]); UPDATE @DbAuthority SET AuthDbVerNo = s.DbVerNo FROM @DbAuthority t INNER JOIN dbo.DbList s ON s.DbName = t.AuthDbName AND s.DbLabel = t.AuthDbLabel ; END IF (@ExcludeDbParamXmlValues = 0) BEGIN INSERT INTO @DbParamXmlValues ( [DbVerNo], [ParamNo], [ItemName], [ParamValue], [SeqNo] , ParamName ) SELECT @DbVerNo DbVerNo, s.[DbParamXmlValues].value('@ParamNo', 'smallint'), s.[DbParamXmlValues].value('@ItemName', 'varchar(255)'), s.[DbParamXmlValues].value('@ParamValue', 'nvarchar(max)'), s.[DbParamXmlValues].value('@SeqNo', 'smallint') , s.[DbParamXmlValues].value('@ParamName', 'varchar(100)') FROM @xmlDoc.nodes('DbList/r/DbParamXmlValues/r') AS s([DbParamXmlValues]); UPDATE @DbParamXmlValues SET ParamNo = s.ParamNo FROM @DbParamXmlValues t INNER JOIN dbo.DbParamList s ON s.ParamName = t.ParamName ; END IF (@ExcludeDbBrowseOption = 0) BEGIN INSERT INTO @DbBrowseOption ( [DbVerNo], [BrowseOptionNo], [OptionType], [SearchString], [TargetDb], [SourceType], [TabImage], [AuthoritySubset], [AuthorityView], [IsHeading] , BrowseOptionId ) SELECT @DbVerNo DbVerNo, s.[DbBrowseOption].value('@BrowseOptionNo', 'int'), s.[DbBrowseOption].value('@OptionType', 'char(1)'), s.[DbBrowseOption].value('@SearchString', 'varchar(255)'), s.[DbBrowseOption].value('@TargetDb', 'varchar(10)'), s.[DbBrowseOption].value('@SourceType', 'varchar(100)'), s.[DbBrowseOption].value('@TabImage', 'varchar(255)'), s.[DbBrowseOption].value('@AuthoritySubset', 'varchar(20)'), s.[DbBrowseOption].value('@AuthorityView', 'varchar(20)'), s.[DbBrowseOption].value('@IsHeading', 'bit') , s.[DbBrowseOption].value('@BrowseOptionId', 'varchar(20)') FROM @xmlDoc.nodes('DbList/r/DbBrowseOption/r') AS s([DbBrowseOption]); UPDATE @DbBrowseOption SET BrowseOptionNo = s.BrowseOptionNo FROM @DbBrowseOption t INNER JOIN dbo.BrowseOptionList s ON s.BrowseOptionId = t.BrowseOptionId ; END IF (@ExcludeDbBrowseOptionCaption = 0) BEGIN INSERT INTO @DbBrowseOptionCaption ( [DbVerNo], [BrowseOptionNo], [LangCode], [OptionCaption], [ResultCaption], [Description] , BrowseOptionId ) SELECT @DbVerNo DbVerNo, s.[DbBrowseOptionCaption].value('@BrowseOptionNo', 'int'), s.[DbBrowseOptionCaption].value('@LangCode', 'varchar(10)'), s.[DbBrowseOptionCaption].value('@OptionCaption', 'nvarchar(255)'), s.[DbBrowseOptionCaption].value('@ResultCaption', 'nvarchar(255)'), s.[DbBrowseOptionCaption].value('@Description', 'nvarchar(max)') , s.[DbBrowseOptionCaption].value('@BrowseOptionId', 'varchar(20)') FROM @xmlDoc.nodes('DbList/r/DbBrowseOption/r/DbBrowseOptionCaption/r') AS s([DbBrowseOptionCaption]); UPDATE @DbBrowseOptionCaption SET BrowseOptionNo = s.BrowseOptionNo FROM @DbBrowseOptionCaption t INNER JOIN dbo.BrowseOptionList s ON s.BrowseOptionId = t.BrowseOptionId ; END IF (@ExcludeDbInterfaceBrowseOption = 0) BEGIN INSERT INTO @DbInterfaceBrowseOption ( [DbVerNo], [IntfScreenNo], [BrowseOptionNo], [Show], [SeqNo] , BrowseOptionId , InterfaceID , Version , ScreenID ) SELECT @DbVerNo DbVerNo, s.[DbInterfaceBrowseOption].value('@IntfScreenNo', 'int'), s.[DbInterfaceBrowseOption].value('@BrowseOptionNo', 'int'), s.[DbInterfaceBrowseOption].value('@Show', 'bit'), s.[DbInterfaceBrowseOption].value('@SeqNo', 'smallint') , s.[DbInterfaceBrowseOption].value('@BrowseOptionId', 'varchar(20)') , s.[DbInterfaceBrowseOption].value('@InterfaceID', 'varchar(10)') , s.[DbInterfaceBrowseOption].value('@Version', 'varchar(10)') , s.[DbInterfaceBrowseOption].value('@ScreenID', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbBrowseOption/r/DbInterfaceBrowseOption/r') AS s([DbInterfaceBrowseOption]); UPDATE @DbInterfaceBrowseOption SET BrowseOptionNo = s.BrowseOptionNo FROM @DbInterfaceBrowseOption t INNER JOIN dbo.BrowseOptionList s ON s.BrowseOptionId = t.BrowseOptionId ; UPDATE @DbInterfaceBrowseOption SET IntfScreenNo = s.IntfScreenNo FROM @DbInterfaceBrowseOption t INNER JOIN dbo.InterfaceScreen s ON s.InterfaceID = t.InterfaceID AND s.Version = t.Version AND s.ScreenID = t.ScreenID ; END IF (@ExcludeDbCluster = 0) BEGIN INSERT INTO @DbCluster ( [DbVerNo], [ClustNo], [Enable], [DbSearchTag] , ClustId , DbLabel ) SELECT @DbVerNo DbVerNo, s.[DbCluster].value('@ClustNo', 'int'), s.[DbCluster].value('@Enable', 'bit'), s.[DbCluster].value('@DbSearchTag', 'nvarchar(5)') , s.[DbCluster].value('@ClustId', 'varchar(20)') , s.[DbCluster].value('@DbLabel', 'varchar(50)') FROM @xmlDoc.nodes('DbList/r/DbCluster/r') AS s([DbCluster]) WHERE s.[DbCluster].value('@DbLabel', 'varchar(50)') = @FromDbLabel; UPDATE @DbCluster SET DbLabel = @ToDbLabel; UPDATE @DbCluster SET ClustNo = s.ClustNo FROM @DbCluster t INNER JOIN dbo.ClusterList s ON s.ClustId = t.ClustId AND s.DbLabel = t.DbLabel ; END IF (@ExcludeDbFeature = 0) BEGIN INSERT INTO @DbFeature ( [DbVerNo], [FeatureNo] , FeatureName , Category , SubCategory ) SELECT @DbVerNo DbVerNo, s.[DbFeature].value('@FeatureNo', 'smallint') , s.[DbFeature].value('@FeatureName', 'varchar(100)') , s.[DbFeature].value('@Category ', 'varchar(20)') , s.[DbFeature].value('@SubCategory', 'varchar(20)') FROM @xmlDoc.nodes('DbList/r/DbFeature/r') AS s([DbFeature]) WHERE s.[DbFeature].value('@SubCategory', 'varchar(20)') in (@FromDbLabel,'' ); UPDATE @DbFeature SET SubCategory = @ToDbLabel WHERE SubCategory <> ''; UPDATE @DbFeature SET FeatureNo = s.FeatureNo FROM @DbFeature t INNER JOIN dbo.FeatureList s ON s.FeatureName = t.FeatureName AND s.Category = t.Category AND s.SubCategory = t.SubCategory ; END IF (@ExcludeDbServerParams = 0) BEGIN INSERT INTO @DbServerParams ( [DbVerNo], [Threads], [WaitForRequest], [DefSearchInstances], [MaxSearchInstances], [DefRetrieveInstances], [MaxRetrieveInstances], [DefFormatInstances], [MaxFormatInstances], [DefFullTextInstances], [MaxFullTextInstances], [DefThesaurusInstances], [MaxThesaurusInstances], [MaxFuzzyTerms], [MaxBooleanTerms], [MaxFuzzyRecordNumbers], [MaxBooleanRecordNumbers], [MaxRecords] ) SELECT @DbVerNo DbVerNo, s.[DbServerParams].value('@Threads', 'int'), s.[DbServerParams].value('@WaitForRequest', 'int'), s.[DbServerParams].value('@DefSearchInstances', 'int'), s.[DbServerParams].value('@MaxSearchInstances', 'int'), s.[DbServerParams].value('@DefRetrieveInstances', 'int'), s.[DbServerParams].value('@MaxRetrieveInstances', 'int'), s.[DbServerParams].value('@DefFormatInstances', 'int'), s.[DbServerParams].value('@MaxFormatInstances', 'int'), s.[DbServerParams].value('@DefFullTextInstances', 'int'), s.[DbServerParams].value('@MaxFullTextInstances', 'int'), s.[DbServerParams].value('@DefThesaurusInstances', 'int'), s.[DbServerParams].value('@MaxThesaurusInstances', 'int'), s.[DbServerParams].value('@MaxFuzzyTerms', 'int'), s.[DbServerParams].value('@MaxBooleanTerms', 'int'), s.[DbServerParams].value('@MaxFuzzyRecordNumbers', 'int'), s.[DbServerParams].value('@MaxBooleanRecordNumbers', 'int'), s.[DbServerParams].value('@MaxRecords', 'int') FROM @xmlDoc.nodes('DbList/r/DbServerParams/r') AS s([DbServerParams]); END IF (@ExcludeInterfaceNonSearchDbs = 0) BEGIN INSERT INTO @InterfaceNonSearchDbs ( [InterfaceID], [Version], [DbVerNo], [SeqNo] ) SELECT s.[InterfaceNonSearchDbs].value('@InterfaceID', 'varchar(10)'), s.[InterfaceNonSearchDbs].value('@Version', 'varchar(10)'), @DbVerNo DbVerNo, s.[InterfaceNonSearchDbs].value('@SeqNo', 'smallint') FROM @xmlDoc.nodes('DbList/r/InterfaceNonSearchDbs/r') AS s([InterfaceNonSearchDbs]); END IF (@ExcludeDbListExternalSource = 0) BEGIN INSERT INTO @DbListExternalSource ( [ExternalDbID], [DbVerNo], [VendorName], [ConnectorType], [Free], [ConnectorProvider], [Notes] ) SELECT s.[DbListExternalSource].value('@ExternalDbID', 'varchar(255)'), @DbVerNo DbVerNo, s.[DbListExternalSource].value('@VendorName', 'nvarchar(100)'), s.[DbListExternalSource].value('@ConnectorType', 'nvarchar(20)'), s.[DbListExternalSource].value('@Free', 'bit'), s.[DbListExternalSource].value('@ConnectorProvider', 'char(1)'), s.[DbListExternalSource].value('@Notes', 'nvarchar(1000)') FROM @xmlDoc.nodes('DbList/r/DbListExternalSource/r') AS s([DbListExternalSource]); END IF (@ExcludeDbFieldGroup = 0) BEGIN INSERT INTO @DbFieldGroup ( [DbVerNo], [FieldGroupNo] , FieldGroupId ) SELECT @DbVerNo DbVerNo, s.[DbFieldGroup].value('@FieldGroupNo', 'int') , s.[DbFieldGroup].value('@FieldGroupId', 'varchar(100)') FROM @xmlDoc.nodes('DbList/r/DbFieldGroup/r') AS s([DbFieldGroup]); UPDATE @DbFieldGroup SET FieldGroupNo = s.FieldGroupNo FROM @DbFieldGroup t INNER JOIN dbo.FieldGroupList s ON s.FieldGroupId = t.FieldGroupId ; END IF (@ExcludeDbFieldElement = 0) BEGIN INSERT INTO @DbFieldElement ( [DbVerNo], [FieldGroupNo], [FieldElementNo] , FieldElementName , FieldGroupId ) SELECT @DbVerNo DbVerNo, s.[DbFieldElement].value('@FieldGroupNo', 'int'), s.[DbFieldElement].value('@FieldElementNo', 'int') , s.[DbFieldElement].value('@FieldElementName', 'varchar(100)') , s.[DbFieldElement].value('@FieldGroupId', 'varchar(100)') FROM @xmlDoc.nodes('DbList/r/DbFieldGroup/r/DbFieldElement/r') AS s([DbFieldElement]); UPDATE @DbFieldElement SET FieldElementNo = s.FieldElementNo FROM @DbFieldElement t INNER JOIN dbo.FieldElementList s ON s.FieldElementName = t.FieldElementName ; UPDATE @DbFieldElement SET FieldGroupNo = s.FieldGroupNo FROM @DbFieldElement t INNER JOIN dbo.FieldGroupList s ON s.FieldGroupId = t.FieldGroupId ; END IF (@ExcludeDbFieldGroupCaption = 0) BEGIN INSERT INTO @DbFieldGroupCaption ( [DbVerNo], [FieldGroupNo], [LangCode], [Caption] , FieldGroupId ) SELECT @DbVerNo DbVerNo, s.[DbFieldGroupCaption].value('@FieldGroupNo', 'int'), s.[DbFieldGroupCaption].value('@LangCode', 'varchar(10)'), s.[DbFieldGroupCaption].value('@Caption', 'nvarchar(255)') , s.[DbFieldGroupCaption].value('@FieldGroupId', 'varchar(100)') FROM @xmlDoc.nodes('DbList/r/DbFieldGroup/r/DbFieldGroupCaption/r') AS s([DbFieldGroupCaption]); UPDATE @DbFieldGroupCaption SET FieldGroupNo = s.FieldGroupNo FROM @DbFieldGroupCaption t INNER JOIN dbo.FieldGroupList s ON s.FieldGroupId = t.FieldGroupId ; END IF (@ExcludeDbFieldGroupDefaults = 0) BEGIN INSERT INTO @DbFieldGroupDefaults ( [DbVerNo], [FieldGroupNo], [OutputMode], [MarketID], [DefValue] , FieldGroupId ) SELECT @DbVerNo DbVerNo, s.[DbFieldGroupDefaults].value('@FieldGroupNo', 'int'), s.[DbFieldGroupDefaults].value('@OutputMode', 'varchar(10)'), s.[DbFieldGroupDefaults].value('@MarketID', 'varchar(20)'), s.[DbFieldGroupDefaults].value('@DefValue', 'bit') , s.[DbFieldGroupDefaults].value('@FieldGroupId', 'varchar(100)') FROM @xmlDoc.nodes('DbList/r/DbFieldGroup/r/DbFieldGroupDefaults/r') AS s([DbFieldGroupDefaults]); UPDATE @DbFieldGroupDefaults SET FieldGroupNo = s.FieldGroupNo FROM @DbFieldGroupDefaults t INNER JOIN dbo.FieldGroupList s ON s.FieldGroupId = t.FieldGroupId ; END IF (@ExcludeDbForm = 0) BEGIN INSERT INTO @DbForm ( [DbVerNo], [FormNumber], [FormName], [Encoding], [Category] ) SELECT @DbVerNo DbVerNo, s.[DbForm].value('@FormNumber', 'int'), s.[DbForm].value('@FormName', 'varchar(100)'), s.[DbForm].value('@Encoding', 'varchar(10)'), s.[DbForm].value('@Category', 'char(1)') FROM @xmlDoc.nodes('DbList/r/DbForm/r') AS s([DbForm]); END IF (@ExcludeDbGroup = 0) BEGIN INSERT INTO @DbGroup ( [DbVerNo], [GroupNo] , GroupID ) SELECT @DbVerNo DbVerNo, s.[DbGroup].value('@GroupNo', 'int') , s.[DbGroup].value('@GroupID', 'varchar(12)') FROM @xmlDoc.nodes('DbList/r/DbGroup/r') AS s([DbGroup]); UPDATE @DbGroup SET GroupNo = s.GroupNo FROM @DbGroup t INNER JOIN dbo.GroupList s ON s.GroupID = t.GroupID ; END IF (@ExcludeDbLimiter = 0) BEGIN INSERT INTO @DbLimiter ( [DbVerNo], [LimiterNo], [ResFlag], [SearchString], [SeqNo], [DefValue] , LimiterId , DbLabel ) SELECT @DbVerNo DbVerNo, s.[DbLimiter].value('@LimiterNo', 'int'), s.[DbLimiter].value('@ResFlag', 'int'), s.[DbLimiter].value('@SearchString', 'varchar(4000)'), s.[DbLimiter].value('@SeqNo', 'smallint'), s.[DbLimiter].value('@DefValue', 'varchar(255)') , s.[DbLimiter].value('@LimiterId', 'varchar(20)') , s.[DbLimiter].value('@DbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbLimiter/r') AS s([DbLimiter]) WHERE s.[DbLimiter].value('@DbLabel', 'varchar(50)') = @FromDbLabel; UPDATE @DbLimiter SET DbLabel = @ToDbLabel; UPDATE @DbLimiter SET LimiterNo = s.LimiterNo FROM @DbLimiter t INNER JOIN dbo.LimiterList s ON s.LimiterId = t.LimiterId AND s.DbLabel = t.DbLabel ; END IF (@ExcludeDbInterfaceLimiter = 0) BEGIN INSERT INTO @DbInterfaceLimiter ( [DbVerNo], [IntfScreenNo], [LimiterNo], [ControlType], [Show], [DefValue], [GroupNo], [SeqNo], [DefPosn], [ColNum] , InterfaceID , Version , ScreenID , LimiterId , DbLabel ) SELECT @DbVerNo DbVerNo, s.[DbInterfaceLimiter].value('@IntfScreenNo', 'int'), s.[DbInterfaceLimiter].value('@LimiterNo', 'int'), s.[DbInterfaceLimiter].value('@ControlType', 'smallint'), s.[DbInterfaceLimiter].value('@Show', 'bit'), s.[DbInterfaceLimiter].value('@DefValue', 'varchar(255)'), s.[DbInterfaceLimiter].value('@GroupNo', 'smallint'), s.[DbInterfaceLimiter].value('@SeqNo', 'smallint'), s.[DbInterfaceLimiter].value('@DefPosn', 'smallint'), s.[DbInterfaceLimiter].value('@ColNum', 'smallint') , s.[DbInterfaceLimiter].value('@InterfaceID', 'varchar(10)') , s.[DbInterfaceLimiter].value('@Version', 'varchar(10)') , s.[DbInterfaceLimiter].value('@ScreenID', 'varchar(10)') , s.[DbInterfaceLimiter].value('@LimiterId', 'varchar(20)') , s.[DbInterfaceLimiter].value('@DbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbLimiter/r/DbInterfaceLimiter/r') AS s([DbInterfaceLimiter]) WHERE s.[DbInterfaceLimiter].value('@DbLabel', 'varchar(50)') = @FromDbLabel; UPDATE @DbInterfaceLimiter SET DbLabel = @ToDbLabel; UPDATE @DbInterfaceLimiter SET IntfScreenNo = s.IntfScreenNo FROM @DbInterfaceLimiter t INNER JOIN dbo.InterfaceScreen s ON s.InterfaceID = t.InterfaceID AND s.Version = t.Version AND s.ScreenID = t.ScreenID ; UPDATE @DbInterfaceLimiter SET LimiterNo = s.LimiterNo FROM @DbInterfaceLimiter t INNER JOIN dbo.LimiterList s ON s.LimiterId = t.LimiterId AND s.DbLabel = t.DbLabel ; END IF (@ExcludeDbLimiterCaption = 0) BEGIN INSERT INTO @DbLimiterCaption ( [DbVerNo], [LimiterNo], [LangCode], [Caption], [MouseOverText] , LimiterId , DbLabel ) SELECT @DbVerNo DbVerNo, s.[DbLimiterCaption].value('@LimiterNo', 'int'), s.[DbLimiterCaption].value('@LangCode', 'varchar(10)'), s.[DbLimiterCaption].value('@Caption', 'nvarchar(100)'), s.[DbLimiterCaption].value('@MouseOverText', 'nvarchar(255)') , s.[DbLimiterCaption].value('@LimiterId', 'varchar(20)') , s.[DbLimiterCaption].value('@DbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbLimiter/r/DbLimiterCaption/r') AS s([DbLimiterCaption]) WHERE s.[DbLimiterCaption].value('@DbLabel', 'varchar(50)') = @FromDbLabel; UPDATE @DbLimiterCaption SET DbLabel = @ToDbLabel; UPDATE @DbLimiterCaption SET LimiterNo = s.LimiterNo FROM @DbLimiterCaption t INNER JOIN dbo.LimiterList s ON s.LimiterId = t.LimiterId AND s.DbLabel = t.DbLabel ; END IF (@ExcludeDbLimiterDetail = 0) BEGIN INSERT INTO @DbLimiterDetail ( [DbVerNo], [LimiterNo], [ControlTemplate] , LimiterId , DbLabel ) SELECT @DbVerNo DbVerNo, s.[DbLimiterDetail].value('@LimiterNo', 'int'), s.[DbLimiterDetail].value('@ControlTemplate', 'nvarchar(max)') , s.[DbLimiterDetail].value('@LimiterId', 'varchar(20)') , s.[DbLimiterDetail].value('@DbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbLimiter/r/DbLimiterDetail/r') AS s([DbLimiterDetail]) WHERE s.[DbLimiterDetail].value('@DbLabel', 'varchar(50)') = @FromDbLabel; UPDATE @DbLimiterDetail SET DbLabel = @ToDbLabel; UPDATE @DbLimiterDetail SET LimiterNo = s.LimiterNo FROM @DbLimiterDetail t INNER JOIN dbo.LimiterList s ON s.LimiterId = t.LimiterId AND s.DbLabel = t.DbLabel ; END IF (@ExcludeDBMultiDbAuthList = 0) BEGIN INSERT INTO @DBMultiDbAuthList ( [MultiDbAuthID], [DbVerNo] ) SELECT s.[DBMultiDbAuthList].value('@MultiDbAuthID', 'varchar(10)'), @DbVerNo DbVerNo FROM @xmlDoc.nodes('DbList/r/DBMultiDbAuthList/r') AS s([DBMultiDbAuthList]); END IF (@ExcludeDbParamScalarValues = 0) BEGIN INSERT INTO @DbParamScalarValues ( [DbVerNo], [ParamNo], [ParamValue] , ParamName ) SELECT @DbVerNo DbVerNo, s.[DbParamScalarValues].value('@ParamNo', 'smallint'), s.[DbParamScalarValues].value('@ParamValue', 'nvarchar(max)') , s.[DbParamScalarValues].value('@ParamName', 'varchar(100)') FROM @xmlDoc.nodes('DbList/r/DbParamScalarValues/r') AS s([DbParamScalarValues]); UPDATE @DbParamScalarValues SET ParamNo = s.ParamNo FROM @DbParamScalarValues t INNER JOIN dbo.DbParamList s ON s.ParamName = t.ParamName ; END IF (@ExcludeDbPublisher = 0) BEGIN INSERT INTO @DbPublisher ( [DbVerNo], [DbName], [PublisherName], [PubID] , DefPublisherName ) SELECT @DbVerNo DbVerNo, s.[DbPublisher].value('@DbName', 'varchar(10)'), s.[DbPublisher].value('@PublisherName', 'nvarchar(100)'), s.[DbPublisher].value('@PubID', 'varchar(9)') , s.[DbPublisher].value('@DefPublisherName', 'nvarchar(100)') FROM @xmlDoc.nodes('DbList/r/DbPublisher/r') AS s([DbPublisher]); UPDATE @DbPublisher SET PubID = s.PID FROM @DbPublisher t INNER JOIN dbo.Publisher s ON s.PublisherName = t.DefPublisherName ; END IF (@ExcludeDbRTACInfo = 0) BEGIN INSERT INTO @DbRTACInfo ( [DbVerNo], [Enable], [Config], [Translation], [ILSIntegration] ) SELECT @DbVerNo DbVerNo, s.[DbRTACInfo].value('@Enable', 'bit'), s.[DbRTACInfo].value('@Config', 'nvarchar(max)'), s.[DbRTACInfo].value('@Translation', 'nvarchar(max)'), s.[DbRTACInfo].value('@ILSIntegration', 'nvarchar(255)') FROM @xmlDoc.nodes('DbList/r/DbRTACInfo/r') AS s([DbRTACInfo]); END IF (@ExcludeDbPickupLocation = 0) BEGIN INSERT INTO @DbPickupLocation ( [DbVerNo], [LocationID], [DisplayName], [SeqNo] ) SELECT @DbVerNo DbVerNo, s.[DbPickupLocation].value('@LocationID', 'nvarchar(255)'), s.[DbPickupLocation].value('@DisplayName', 'nvarchar(255)'), s.[DbPickupLocation].value('@SeqNo', 'smallint') FROM @xmlDoc.nodes('DbList/r/DbPickupLocation/r') AS s([DbPickupLocation]); END IF (@ExcludeDbSearchContextMapping = 0) BEGIN INSERT INTO @DbSearchContextMapping ( [DbVerNo], [ContextName], [ConceptName], [SearchTag] ) SELECT @DbVerNo DbVerNo, s.[DbSearchContextMapping].value('@ContextName', 'varchar(10)'), s.[DbSearchContextMapping].value('@ConceptName', 'varchar(20)'), s.[DbSearchContextMapping].value('@SearchTag', 'nvarchar(5)') FROM @xmlDoc.nodes('DbList/r/DbSearchContextMapping/r') AS s([DbSearchContextMapping]); END IF (@ExcludeDbSearchOption = 0) BEGIN INSERT INTO @DbSearchOption ( [DbVerNo], [SearchOptionNo], [OptionType], [SearchString], [TargetDb], [SourceType], [TabImage], [AuthoritySubset], [AuthorityView] , SearchOptionId ) SELECT @DbVerNo DbVerNo, s.[DbSearchOption].value('@SearchOptionNo', 'int'), s.[DbSearchOption].value('@OptionType', 'char(1)'), s.[DbSearchOption].value('@SearchString', 'varchar(255)'), s.[DbSearchOption].value('@TargetDb', 'varchar(10)'), s.[DbSearchOption].value('@SourceType', 'varchar(100)'), s.[DbSearchOption].value('@TabImage', 'varchar(255)'), s.[DbSearchOption].value('@AuthoritySubset', 'varchar(20)'), s.[DbSearchOption].value('@AuthorityView', 'varchar(20)') , s.[DbSearchOption].value('@SearchOptionId', 'varchar(20)') FROM @xmlDoc.nodes('DbList/r/DbSearchOption/r') AS s([DbSearchOption]); UPDATE @DbSearchOption SET SearchOptionNo = s.SearchOptionNo FROM @DbSearchOption t INNER JOIN dbo.SearchOptionList s ON s.SearchOptionId = t.SearchOptionId ; END IF (@ExcludeDbInterfaceSearchOption = 0) BEGIN INSERT INTO @DbInterfaceSearchOption ( [DbVerNo], [IntfScreenNo], [SearchOptionNo], [Show], [SeqNo] , InterfaceID , Version , ScreenID , SearchOptionId ) SELECT @DbVerNo DbVerNo, s.[DbInterfaceSearchOption].value('@IntfScreenNo', 'int'), s.[DbInterfaceSearchOption].value('@SearchOptionNo', 'int'), s.[DbInterfaceSearchOption].value('@Show', 'bit'), s.[DbInterfaceSearchOption].value('@SeqNo', 'smallint') , s.[DbInterfaceSearchOption].value('@InterfaceID', 'varchar(10)') , s.[DbInterfaceSearchOption].value('@Version', 'varchar(10)') , s.[DbInterfaceSearchOption].value('@ScreenID', 'varchar(10)') , s.[DbInterfaceSearchOption].value('@SearchOptionId', 'varchar(20)') FROM @xmlDoc.nodes('DbList/r/DbSearchOption/r/DbInterfaceSearchOption/r') AS s([DbInterfaceSearchOption]); UPDATE @DbInterfaceSearchOption SET IntfScreenNo = s.IntfScreenNo FROM @DbInterfaceSearchOption t INNER JOIN dbo.InterfaceScreen s ON s.InterfaceID = t.InterfaceID AND s.Version = t.Version AND s.ScreenID = t.ScreenID ; UPDATE @DbInterfaceSearchOption SET SearchOptionNo = s.SearchOptionNo FROM @DbInterfaceSearchOption t INNER JOIN dbo.SearchOptionList s ON s.SearchOptionId = t.SearchOptionId ; END IF (@ExcludeDbSearchOptionCaption = 0) BEGIN INSERT INTO @DbSearchOptionCaption ( [DbVerNo], [SearchOptionNo], [LangCode], [OptionCaption], [ResultCaption], [Description] , SearchOptionId ) SELECT @DbVerNo DbVerNo, s.[DbSearchOptionCaption].value('@SearchOptionNo', 'int'), s.[DbSearchOptionCaption].value('@LangCode', 'varchar(10)'), s.[DbSearchOptionCaption].value('@OptionCaption', 'nvarchar(255)'), s.[DbSearchOptionCaption].value('@ResultCaption', 'nvarchar(255)'), s.[DbSearchOptionCaption].value('@Description', 'nvarchar(max)') , s.[DbSearchOptionCaption].value('@SearchOptionId', 'varchar(20)') FROM @xmlDoc.nodes('DbList/r/DbSearchOption/r/DbSearchOptionCaption/r') AS s([DbSearchOptionCaption]); UPDATE @DbSearchOptionCaption SET SearchOptionNo = s.SearchOptionNo FROM @DbSearchOptionCaption t INNER JOIN dbo.SearchOptionList s ON s.SearchOptionId = t.SearchOptionId ; END IF (@ExcludeDbSegment = 0) BEGIN INSERT INTO @DbSegment ( [DbVerNo], [SegName], [SegDescription], [SeqNo], [ProductionDate] ) SELECT @DbVerNo DbVerNo, s.[DbSegment].value('@SegName', 'varchar(10)'), s.[DbSegment].value('@SegDescription', 'nvarchar(100)'), s.[DbSegment].value('@SeqNo', 'smallint'), s.[DbSegment].value('@ProductionDate', 'smalldatetime') FROM @xmlDoc.nodes('DbList/r/DbSegment/r') AS s([DbSegment]); END IF (@ExcludeDbBibMap = 0) BEGIN INSERT INTO @DbBibMap ( [DbVerNo], [SegName], [BibField], [FieldTag], [SeqNo] ) SELECT @DbVerNo DbVerNo, s.[DbBibMap].value('@SegName', 'varchar(10)'), s.[DbBibMap].value('@BibField', 'int'), s.[DbBibMap].value('@FieldTag', 'char(2)'), s.[DbBibMap].value('@SeqNo', 'smallint') FROM @xmlDoc.nodes('DbList/r/DbSegment/r/DbBibMap/r') AS s([DbBibMap]); END IF (@ExcludeDbFieldTag = 0) BEGIN INSERT INTO @DbFieldTag ( [DbVerNo], [SegName], [FieldTag], [Description], [IndexType], [Category], [ThesNumber], [FieldNumbers], [SeqNo], [Description2] ) SELECT @DbVerNo DbVerNo, s.[DbFieldTag].value('@SegName', 'varchar(10)'), s.[DbFieldTag].value('@FieldTag', 'char(2)'), s.[DbFieldTag].value('@Description', 'nvarchar(100)'), s.[DbFieldTag].value('@IndexType', 'varchar(10)'), s.[DbFieldTag].value('@Category', 'int'), s.[DbFieldTag].value('@ThesNumber', 'int'), s.[DbFieldTag].value('@FieldNumbers', 'varchar(255)'), s.[DbFieldTag].value('@SeqNo', 'smallint'), s.[DbFieldTag].value('@Description2', 'nvarchar(200)') FROM @xmlDoc.nodes('DbList/r/DbSegment/r/DbFieldTag/r') AS s([DbFieldTag]); END IF (@ExcludeDbSegFileInfo = 0) BEGIN INSERT INTO @DbSegFileInfo ( [DbVerNo], [SegName], [Volume], [EpsFile], [EpdFile], [EpiFile], [EpfFile], [JumpFile], [LookupDir], [EplFile], [EpgFile], [EpuFile], [ImageServerURL] ) SELECT @DbVerNo DbVerNo, s.[DbSegFileInfo].value('@SegName', 'varchar(10)'), s.[DbSegFileInfo].value('@Volume', 'varchar(20)'), s.[DbSegFileInfo].value('@EpsFile', 'varchar(255)'), s.[DbSegFileInfo].value('@EpdFile', 'varchar(255)'), s.[DbSegFileInfo].value('@EpiFile', 'varchar(255)'), s.[DbSegFileInfo].value('@EpfFile', 'varchar(255)'), s.[DbSegFileInfo].value('@JumpFile', 'varchar(255)'), s.[DbSegFileInfo].value('@LookupDir', 'varchar(255)'), s.[DbSegFileInfo].value('@EplFile', 'varchar(255)'), s.[DbSegFileInfo].value('@EpgFile', 'varchar(255)'), s.[DbSegFileInfo].value('@EpuFile', 'varchar(255)'), s.[DbSegFileInfo].value('@ImageServerURL', 'varchar(255)') FROM @xmlDoc.nodes('DbList/r/DbSegment/r/DbSegFileInfo/r') AS s([DbSegFileInfo]); END IF (@ExcludeDbThesaurus = 0) BEGIN INSERT INTO @DbThesaurus ( [DbVerNo], [SegName], [Volume], [ThesNumber], [ThesFile], [UserControlled], [StoreKWIC] ) SELECT @DbVerNo DbVerNo, s.[DbThesaurus].value('@SegName', 'varchar(10)'), s.[DbThesaurus].value('@Volume', 'varchar(20)'), s.[DbThesaurus].value('@ThesNumber', 'int'), s.[DbThesaurus].value('@ThesFile', 'varchar(255)'), s.[DbThesaurus].value('@UserControlled', 'bit'), s.[DbThesaurus].value('@StoreKWIC', 'bit') FROM @xmlDoc.nodes('DbList/r/DbSegment/r/DbThesaurus/r') AS s([DbThesaurus]); END IF (@ExcludeDbDiscipline = 0) BEGIN INSERT INTO @DbDiscipline ( [DisciplineNo], [DbName] ) SELECT s.[DbDiscipline].value('@DisciplineNo', 'int'), s.[DbDiscipline].value('@DbName', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbDiscipline/r') AS s([DbDiscipline]); END IF (@ExcludeDbSourceTarget = 0) BEGIN INSERT INTO @DbSourceTarget ( [SourceDbNo], [TargetDbNo], [TargetType], [SLCollID] , TargetDbName , TargetDbLabel ) SELECT @DbVerNo SourceDbNo, s.[DbSourceTarget].value('@TargetDbNo', 'int'), s.[DbSourceTarget].value('@TargetType', 'varchar(10)'), s.[DbSourceTarget].value('@SLCollID', 'varchar(50)') , s.[DbSourceTarget].value('@TargetDbName', 'varchar(10)') , s.[DbSourceTarget].value('@TargetDbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbSourceTarget/r') AS s([DbSourceTarget]); UPDATE @DbSourceTarget SET TargetDbNo = s.DbVerNo FROM @DbSourceTarget t INNER JOIN dbo.DbList s ON s.DbName = t.TargetDbName AND s.DbLabel = t.TargetDbLabel ; END IF (@ExcludeDbSort = 0) BEGIN INSERT INTO @DbSort ( [DbVerNo], [SortID], [SortName], [SortField], [SeqNo], [Hide] ) SELECT @DbVerNo DbVerNo, s.[DbSort].value('@SortID', 'varchar(10)'), s.[DbSort].value('@SortName', 'nvarchar(20)'), s.[DbSort].value('@SortField', 'varchar(100)'), s.[DbSort].value('@SeqNo', 'smallint'), s.[DbSort].value('@Hide', 'bit') FROM @xmlDoc.nodes('DbList/r/DbSort/r') AS s([DbSort]); END IF (@ExcludeDbDocType = 0) BEGIN INSERT INTO @DbDocType ( [DbVerNo], [DocTypeNo], [TargetDb], [SearchString] , DocTypeID ) SELECT @DbVerNo DbVerNo, s.[DbDocType].value('@DocTypeNo', 'int'), s.[DbDocType].value('@TargetDb', 'varchar(10)'), s.[DbDocType].value('@SearchString', 'varchar(1500)') , s.[DbDocType].value('@DocTypeID', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbDocType/r') AS s([DbDocType]); UPDATE @DbDocType SET DocTypeNo = s.DocTypeNo FROM @DbDocType t INNER JOIN dbo.DocTypeList s ON s.DocTypeID = t.DocTypeID ; END IF (@ExcludeDbSubset = 0) BEGIN INSERT INTO @DbSubset ( [SubsetDbVerNo], [PhysDbVerNo], [MergeSearches], [DBDefSearchExprType], [DBDefSearchExpression] , PhysDbName , PhysDbLabel ) SELECT @DbVerNo SubsetDbVerNo, s.[DbSubset].value('@PhysDbVerNo', 'int'), s.[DbSubset].value('@MergeSearches', 'bit'), s.[DbSubset].value('@DBDefSearchExprType', 'char(1)'), s.[DbSubset].value('@DBDefSearchExpression', 'nvarchar(255)') , s.[DbSubset].value('@PhysDbName', 'varchar(10)') , s.[DbSubset].value('@PhysDbLabel', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbSubset/r') AS s([DbSubset]); UPDATE @DbSubset SET PhysDbVerNo = s.DbVerNo FROM @DbSubset t INNER JOIN dbo.DbList s ON s.DbName = t.PhysDbName AND s.DbLabel = t.PhysDbLabel ; END IF (@ExcludeDbTopic = 0) BEGIN INSERT INTO @DbTopic ( [DbVerNo], [TopicNo] , TopicID ) SELECT @DbVerNo DbVerNo, s.[DbTopic].value('@TopicNo', 'int') , s.[DbTopic].value('@TopicID', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r/DbTopic/r') AS s([DbTopic]); UPDATE @DbTopic SET TopicNo = s.TopicNo FROM @DbTopic t INNER JOIN dbo.TopicList s ON s.TopicID = t.TopicID ; END IF (@ExcludeDbVolume = 0) BEGIN INSERT INTO @DbVolume ( [DbVerNo], [Volume], [LastUpdateDate], [EpkPath] ) SELECT @DbVerNo DbVerNo, s.[DbVolume].value('@Volume', 'varchar(20)'), s.[DbVolume].value('@LastUpdateDate', 'datetime'), s.[DbVolume].value('@EpkPath', 'varchar(255)') FROM @xmlDoc.nodes('DbList/r/DbVolume/r') AS s([DbVolume]); END UPDATE @DbList SET DbName = @CopyToDbName , DbLabel = @CopyToDbLabel WHERE DbVerNo = @DbVerNo; -- Get DbName from primary node DECLARE @CopyFromDbName varchar(10); IF (@ExcludeDbAuthority = 0) BEGIN SELECT @CopyFromDbName = s.[DbList].value('@DbName', 'varchar(10)') FROM @xmlDoc.nodes('DbList/r') AS s([DbList]); -- Update @DbAuthority with same as old DbName UPDATE @DbAuthority SET AuthDbVerNo = s.DbVerNo, AuthDbName = s.DbName, AuthDblabel = s.DbLabel FROM @DbAuthority t INNER JOIN dbo.DbList s ON s.DbName = t.AuthDbName WHERE s.DbType NOT IN (2, 7) AND s.DbLabel = @CopyToDbLabel; -- Update @DbAuthority with new DbName for DbType 2 or 7 UPDATE @DbAuthority SET AuthDbVerNo = s.DbVerNo, AuthDbName = s.DbName, AuthDblabel = s.DbLabel FROM @DbAuthority t INNER JOIN dbo.DbList s ON s.DbName = dbo.EACOPY_GetNewAuthorityDbName_99(@CopyFromDbName , @CopyToDbName , t.AuthDbName) WHERE s.DbType IN (2, 7) AND s.DbLabel = @CopyToDbLabel; END IF (@ExcludeDbDiscipline = 0) BEGIN -- Update @DbDiscipline with new DbName/DbLabel UPDATE @DbDiscipline SET DbName = @CopyToDbName END IF (@ExcludeDbList = 0) BEGIN SELECT @DbListXml = ( SELECT s.* FROM @DbList s LEFT JOIN dbo.DbContentList ON s.ContentType = dbo.DbContentList.ContentType LEFT JOIN dbo.DbTypeList ON s.DbType = dbo.DbTypeList.DbType WHERE DbContentList.ContentType IS NULL OR DbTypeList.DbType IS NULL FOR XML RAW('r')); DELETE @DbList FROM @DbList s LEFT JOIN dbo.DbContentList ON s.ContentType = dbo.DbContentList.ContentType LEFT JOIN dbo.DbTypeList ON s.DbType = dbo.DbTypeList.DbType WHERE DbContentList.ContentType IS NULL OR DbTypeList.DbType IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbParamXmlValues = 0) BEGIN SELECT @DbParamXmlValuesXml = ( SELECT s.* FROM @DbParamXmlValues s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.DbParamList ON s.ParamNo = dbo.DbParamList.ParamNo WHERE p.DbVerNo IS NULL OR DbParamList.ParamNo IS NULL FOR XML RAW('r')); DELETE @DbParamXmlValues FROM @DbParamXmlValues s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.DbParamList ON s.ParamNo = dbo.DbParamList.ParamNo WHERE p.DbVerNo IS NULL OR DbParamList.ParamNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbBrowseOption = 0) BEGIN SELECT @DbBrowseOptionXml = ( SELECT s.* FROM @DbBrowseOption s LEFT JOIN dbo.BrowseOptionList ON s.BrowseOptionNo = dbo.BrowseOptionList.BrowseOptionNo LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE BrowseOptionList.BrowseOptionNo IS NULL OR p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbBrowseOption FROM @DbBrowseOption s LEFT JOIN dbo.BrowseOptionList ON s.BrowseOptionNo = dbo.BrowseOptionList.BrowseOptionNo LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE BrowseOptionList.BrowseOptionNo IS NULL OR p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbBrowseOptionCaption = 0) BEGIN SELECT @DbBrowseOptionCaptionXml = ( SELECT s.* FROM @DbBrowseOptionCaption s LEFT JOIN @DbBrowseOption p ON s.DbVerNo = p.DbVerNo AND s.BrowseOptionNo = p.BrowseOptionNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbBrowseOptionCaption FROM @DbBrowseOptionCaption s LEFT JOIN @DbBrowseOption p ON s.DbVerNo = p.DbVerNo AND s.BrowseOptionNo = p.BrowseOptionNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbInterfaceBrowseOption = 0) BEGIN SELECT @DbInterfaceBrowseOptionXml = ( SELECT s.* FROM @DbInterfaceBrowseOption s LEFT JOIN @DbBrowseOption p ON s.DbVerNo = p.DbVerNo AND s.BrowseOptionNo = p.BrowseOptionNo LEFT JOIN dbo.InterfaceScreen ON s.IntfScreenNo = dbo.InterfaceScreen.IntfScreenNo WHERE p.DbVerNo IS NULL OR InterfaceScreen.IntfScreenNo IS NULL FOR XML RAW('r')); DELETE @DbInterfaceBrowseOption FROM @DbInterfaceBrowseOption s LEFT JOIN @DbBrowseOption p ON s.DbVerNo = p.DbVerNo AND s.BrowseOptionNo = p.BrowseOptionNo LEFT JOIN dbo.InterfaceScreen ON s.IntfScreenNo = dbo.InterfaceScreen.IntfScreenNo WHERE p.DbVerNo IS NULL OR InterfaceScreen.IntfScreenNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbCluster = 0) BEGIN SELECT @DbClusterXml = ( SELECT s.* FROM @DbCluster s LEFT JOIN dbo.ClusterList ON s.ClustNo = dbo.ClusterList.ClustNo LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE ClusterList.ClustNo IS NULL OR p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbCluster FROM @DbCluster s LEFT JOIN dbo.ClusterList ON s.ClustNo = dbo.ClusterList.ClustNo LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE ClusterList.ClustNo IS NULL OR p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbFeature = 0) BEGIN SELECT @DbFeatureXml = ( SELECT s.* FROM @DbFeature s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.FeatureList ON s.FeatureNo = dbo.FeatureList.FeatureNo WHERE p.DbVerNo IS NULL OR FeatureList.FeatureNo IS NULL FOR XML RAW('r')); DELETE @DbFeature FROM @DbFeature s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.FeatureList ON s.FeatureNo = dbo.FeatureList.FeatureNo WHERE p.DbVerNo IS NULL OR FeatureList.FeatureNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbServerParams = 0) BEGIN SELECT @DbServerParamsXml = ( SELECT s.* FROM @DbServerParams s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbServerParams FROM @DbServerParams s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeInterfaceNonSearchDbs = 0) BEGIN SELECT @InterfaceNonSearchDbsXml = ( SELECT s.* FROM @InterfaceNonSearchDbs s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.InterfaceVersion ON s.InterfaceID = dbo.InterfaceVersion.InterfaceID AND s.Version = dbo.InterfaceVersion.Version WHERE p.DbVerNo IS NULL OR InterfaceVersion.InterfaceID IS NULL FOR XML RAW('r')); DELETE @InterfaceNonSearchDbs FROM @InterfaceNonSearchDbs s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.InterfaceVersion ON s.InterfaceID = dbo.InterfaceVersion.InterfaceID AND s.Version = dbo.InterfaceVersion.Version WHERE p.DbVerNo IS NULL OR InterfaceVersion.InterfaceID IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbListExternalSource = 0) BEGIN SELECT @DbListExternalSourceXml = ( SELECT s.* FROM @DbListExternalSource s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbListExternalSource FROM @DbListExternalSource s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbFieldGroup = 0) BEGIN SELECT @DbFieldGroupXml = ( SELECT s.* FROM @DbFieldGroup s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.FieldGroupList ON s.FieldGroupNo = dbo.FieldGroupList.FieldGroupNo WHERE p.DbVerNo IS NULL OR FieldGroupList.FieldGroupNo IS NULL FOR XML RAW('r')); DELETE @DbFieldGroup FROM @DbFieldGroup s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.FieldGroupList ON s.FieldGroupNo = dbo.FieldGroupList.FieldGroupNo WHERE p.DbVerNo IS NULL OR FieldGroupList.FieldGroupNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbFieldElement = 0) BEGIN SELECT @DbFieldElementXml = ( SELECT s.* FROM @DbFieldElement s LEFT JOIN @DbFieldGroup p ON s.DbVerNo = p.DbVerNo AND s.FieldGroupNo = p.FieldGroupNo LEFT JOIN dbo.FieldElementList ON s.FieldElementNo = dbo.FieldElementList.FieldElementNo WHERE p.DbVerNo IS NULL OR FieldElementList.FieldElementNo IS NULL FOR XML RAW('r')); DELETE @DbFieldElement FROM @DbFieldElement s LEFT JOIN @DbFieldGroup p ON s.DbVerNo = p.DbVerNo AND s.FieldGroupNo = p.FieldGroupNo LEFT JOIN dbo.FieldElementList ON s.FieldElementNo = dbo.FieldElementList.FieldElementNo WHERE p.DbVerNo IS NULL OR FieldElementList.FieldElementNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbFieldGroupCaption = 0) BEGIN SELECT @DbFieldGroupCaptionXml = ( SELECT s.* FROM @DbFieldGroupCaption s LEFT JOIN @DbFieldGroup p ON s.DbVerNo = p.DbVerNo AND s.FieldGroupNo = p.FieldGroupNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbFieldGroupCaption FROM @DbFieldGroupCaption s LEFT JOIN @DbFieldGroup p ON s.DbVerNo = p.DbVerNo AND s.FieldGroupNo = p.FieldGroupNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbFieldGroupDefaults = 0) BEGIN SELECT @DbFieldGroupDefaultsXml = ( SELECT s.* FROM @DbFieldGroupDefaults s LEFT JOIN @DbFieldGroup p ON s.DbVerNo = p.DbVerNo AND s.FieldGroupNo = p.FieldGroupNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbFieldGroupDefaults FROM @DbFieldGroupDefaults s LEFT JOIN @DbFieldGroup p ON s.DbVerNo = p.DbVerNo AND s.FieldGroupNo = p.FieldGroupNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbForm = 0) BEGIN SELECT @DbFormXml = ( SELECT s.* FROM @DbForm s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbForm FROM @DbForm s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbGroup = 0) BEGIN SELECT @DbGroupXml = ( SELECT s.* FROM @DbGroup s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.GroupList ON s.GroupNo = dbo.GroupList.GroupNo WHERE p.DbVerNo IS NULL OR GroupList.GroupNo IS NULL FOR XML RAW('r')); DELETE @DbGroup FROM @DbGroup s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.GroupList ON s.GroupNo = dbo.GroupList.GroupNo WHERE p.DbVerNo IS NULL OR GroupList.GroupNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbLimiter = 0) BEGIN SELECT @DbLimiterXml = ( SELECT s.* FROM @DbLimiter s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.LimiterList ON s.LimiterNo = dbo.LimiterList.LimiterNo WHERE p.DbVerNo IS NULL OR LimiterList.LimiterNo IS NULL FOR XML RAW('r')); DELETE @DbLimiter FROM @DbLimiter s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.LimiterList ON s.LimiterNo = dbo.LimiterList.LimiterNo WHERE p.DbVerNo IS NULL OR LimiterList.LimiterNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbInterfaceLimiter = 0) BEGIN SELECT @DbInterfaceLimiterXml = ( SELECT s.* FROM @DbInterfaceLimiter s LEFT JOIN @DbLimiter p ON s.DbVerNo = p.DbVerNo AND s.LimiterNo = p.LimiterNo LEFT JOIN dbo.InterfaceScreen ON s.IntfScreenNo = dbo.InterfaceScreen.IntfScreenNo WHERE p.DbVerNo IS NULL OR InterfaceScreen.IntfScreenNo IS NULL FOR XML RAW('r')); DELETE @DbInterfaceLimiter FROM @DbInterfaceLimiter s LEFT JOIN @DbLimiter p ON s.DbVerNo = p.DbVerNo AND s.LimiterNo = p.LimiterNo LEFT JOIN dbo.InterfaceScreen ON s.IntfScreenNo = dbo.InterfaceScreen.IntfScreenNo WHERE p.DbVerNo IS NULL OR InterfaceScreen.IntfScreenNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbLimiterCaption = 0) BEGIN SELECT @DbLimiterCaptionXml = ( SELECT s.* FROM @DbLimiterCaption s LEFT JOIN @DbLimiter p ON s.DbVerNo = p.DbVerNo AND s.LimiterNo = p.LimiterNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbLimiterCaption FROM @DbLimiterCaption s LEFT JOIN @DbLimiter p ON s.DbVerNo = p.DbVerNo AND s.LimiterNo = p.LimiterNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbLimiterDetail = 0) BEGIN SELECT @DbLimiterDetailXml = ( SELECT s.* FROM @DbLimiterDetail s LEFT JOIN @DbLimiter p ON s.DbVerNo = p.DbVerNo AND s.LimiterNo = p.LimiterNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbLimiterDetail FROM @DbLimiterDetail s LEFT JOIN @DbLimiter p ON s.DbVerNo = p.DbVerNo AND s.LimiterNo = p.LimiterNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDBMultiDbAuthList = 0) BEGIN SELECT @DBMultiDbAuthListXml = ( SELECT s.* FROM @DBMultiDbAuthList s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.MultiDbAuthList ON s.MultiDbAuthID = dbo.MultiDbAuthList.MultiDbAuthID WHERE p.DbVerNo IS NULL OR MultiDbAuthList.MultiDbAuthID IS NULL FOR XML RAW('r')); DELETE @DBMultiDbAuthList FROM @DBMultiDbAuthList s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.MultiDbAuthList ON s.MultiDbAuthID = dbo.MultiDbAuthList.MultiDbAuthID WHERE p.DbVerNo IS NULL OR MultiDbAuthList.MultiDbAuthID IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbParamScalarValues = 0) BEGIN SELECT @DbParamScalarValuesXml = ( SELECT s.* FROM @DbParamScalarValues s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.DbParamList ON s.ParamNo = dbo.DbParamList.ParamNo WHERE p.DbVerNo IS NULL OR DbParamList.ParamNo IS NULL FOR XML RAW('r')); DELETE @DbParamScalarValues FROM @DbParamScalarValues s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.DbParamList ON s.ParamNo = dbo.DbParamList.ParamNo WHERE p.DbVerNo IS NULL OR DbParamList.ParamNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbPublisher = 0) BEGIN SELECT @DbPublisherXml = ( SELECT s.* FROM @DbPublisher s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbPublisher FROM @DbPublisher s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbRTACInfo = 0) BEGIN SELECT @DbRTACInfoXml = ( SELECT s.* FROM @DbRTACInfo s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbRTACInfo FROM @DbRTACInfo s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbPickupLocation = 0) BEGIN SELECT @DbPickupLocationXml = ( SELECT s.* FROM @DbPickupLocation s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbPickupLocation FROM @DbPickupLocation s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSearchContextMapping = 0) BEGIN SELECT @DbSearchContextMappingXml = ( SELECT s.* FROM @DbSearchContextMapping s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSearchContextMapping FROM @DbSearchContextMapping s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSearchOption = 0) BEGIN SELECT @DbSearchOptionXml = ( SELECT s.* FROM @DbSearchOption s LEFT JOIN dbo.SearchOptionList ON s.SearchOptionNo = dbo.SearchOptionList.SearchOptionNo LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE SearchOptionList.SearchOptionNo IS NULL OR p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSearchOption FROM @DbSearchOption s LEFT JOIN dbo.SearchOptionList ON s.SearchOptionNo = dbo.SearchOptionList.SearchOptionNo LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE SearchOptionList.SearchOptionNo IS NULL OR p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbInterfaceSearchOption = 0) BEGIN SELECT @DbInterfaceSearchOptionXml = ( SELECT s.* FROM @DbInterfaceSearchOption s LEFT JOIN @DbSearchOption p ON s.DbVerNo = p.DbVerNo AND s.SearchOptionNo = p.SearchOptionNo LEFT JOIN dbo.InterfaceScreen ON s.IntfScreenNo = dbo.InterfaceScreen.IntfScreenNo WHERE p.DbVerNo IS NULL OR InterfaceScreen.IntfScreenNo IS NULL FOR XML RAW('r')); DELETE @DbInterfaceSearchOption FROM @DbInterfaceSearchOption s LEFT JOIN @DbSearchOption p ON s.DbVerNo = p.DbVerNo AND s.SearchOptionNo = p.SearchOptionNo LEFT JOIN dbo.InterfaceScreen ON s.IntfScreenNo = dbo.InterfaceScreen.IntfScreenNo WHERE p.DbVerNo IS NULL OR InterfaceScreen.IntfScreenNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSearchOptionCaption = 0) BEGIN SELECT @DbSearchOptionCaptionXml = ( SELECT s.* FROM @DbSearchOptionCaption s LEFT JOIN @DbSearchOption p ON s.DbVerNo = p.DbVerNo AND s.SearchOptionNo = p.SearchOptionNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSearchOptionCaption FROM @DbSearchOptionCaption s LEFT JOIN @DbSearchOption p ON s.DbVerNo = p.DbVerNo AND s.SearchOptionNo = p.SearchOptionNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSegment = 0) BEGIN SELECT @DbSegmentXml = ( SELECT s.* FROM @DbSegment s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSegment FROM @DbSegment s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbBibMap = 0) BEGIN SELECT @DbBibMapXml = ( SELECT s.* FROM @DbBibMap s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbBibMap FROM @DbBibMap s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbFieldTag = 0) BEGIN SELECT @DbFieldTagXml = ( SELECT s.* FROM @DbFieldTag s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbFieldTag FROM @DbFieldTag s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSegFileInfo = 0) BEGIN SELECT @DbSegFileInfoXml = ( SELECT s.* FROM @DbSegFileInfo s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSegFileInfo FROM @DbSegFileInfo s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbThesaurus = 0) BEGIN SELECT @DbThesaurusXml = ( SELECT s.* FROM @DbThesaurus s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbThesaurus FROM @DbThesaurus s LEFT JOIN @DbSegment p ON s.DbVerNo = p.DbVerNo AND s.SegName = p.SegName WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbDiscipline = 0) BEGIN SELECT @DbDisciplineXml = ( SELECT s.* FROM @DbDiscipline s LEFT JOIN @DbList p ON s.DbName = p.DbName LEFT JOIN dbo.DisciplineList ON s.DisciplineNo = dbo.DisciplineList.DisciplineNo WHERE p.DbName IS NULL OR DisciplineList.DisciplineNo IS NULL FOR XML RAW('r')); DELETE @DbDiscipline FROM @DbDiscipline s LEFT JOIN @DbList p ON s.DbName = p.DbName LEFT JOIN dbo.DisciplineList ON s.DisciplineNo = dbo.DisciplineList.DisciplineNo WHERE p.DbName IS NULL OR DisciplineList.DisciplineNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSourceTarget = 0) BEGIN SELECT @DbSourceTargetXml = ( SELECT s.* FROM @DbSourceTarget s LEFT JOIN @DbList p ON s.SourceDbNo = p.DbVerNo LEFT JOIN dbo.DbList ON s.TargetDbNo = dbo.DbList.DbVerNo WHERE p.DbVerNo IS NULL OR DbList.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSourceTarget FROM @DbSourceTarget s LEFT JOIN @DbList p ON s.SourceDbNo = p.DbVerNo LEFT JOIN dbo.DbList ON s.TargetDbNo = dbo.DbList.DbVerNo WHERE p.DbVerNo IS NULL OR DbList.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSort = 0) BEGIN SELECT @DbSortXml = ( SELECT s.* FROM @DbSort s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSort FROM @DbSort s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbDocType = 0) BEGIN SELECT @DbDocTypeXml = ( SELECT s.* FROM @DbDocType s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.DocTypeList ON s.DocTypeNo = dbo.DocTypeList.DocTypeNo WHERE p.DbVerNo IS NULL OR DocTypeList.DocTypeNo IS NULL FOR XML RAW('r')); DELETE @DbDocType FROM @DbDocType s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.DocTypeList ON s.DocTypeNo = dbo.DocTypeList.DocTypeNo WHERE p.DbVerNo IS NULL OR DocTypeList.DocTypeNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbSubset = 0) BEGIN SELECT @DbSubsetXml = ( SELECT s.* FROM @DbSubset s LEFT JOIN @DbList p ON s.SubsetDbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbSubset FROM @DbSubset s LEFT JOIN @DbList p ON s.SubsetDbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbTopic = 0) BEGIN SELECT @DbTopicXml = ( SELECT s.* FROM @DbTopic s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.TopicList ON s.TopicNo = dbo.TopicList.TopicNo WHERE p.DbVerNo IS NULL OR TopicList.TopicNo IS NULL FOR XML RAW('r')); DELETE @DbTopic FROM @DbTopic s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo LEFT JOIN dbo.TopicList ON s.TopicNo = dbo.TopicList.TopicNo WHERE p.DbVerNo IS NULL OR TopicList.TopicNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@ExcludeDbVolume = 0) BEGIN SELECT @DbVolumeXml = ( SELECT s.* FROM @DbVolume s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL FOR XML RAW('r')); DELETE @DbVolume FROM @DbVolume s LEFT JOIN @DbList p ON s.DbVerNo = p.DbVerNo WHERE p.DbVerNo IS NULL; IF @@ROWCOUNT <> 0 SELECT @FKErrorFlag = 1; END IF (@FKErrorFlag = 1) BEGIN SELECT @FKErrorXml = (Select @DbListXml DbList , @DbParamXmlValuesXml DbParamXmlValues , @DbBrowseOptionXml DbBrowseOption , @DbBrowseOptionCaptionXml DbBrowseOptionCaption , @DbInterfaceBrowseOptionXml DbInterfaceBrowseOption , @DbClusterXml DbCluster , @DbFeatureXml DbFeature , @DbServerParamsXml DbServerParams , @InterfaceNonSearchDbsXml InterfaceNonSearchDbs , @DbListExternalSourceXml DbListExternalSource , @DbFieldGroupXml DbFieldGroup , @DbFieldElementXml DbFieldElement , @DbFieldGroupCaptionXml DbFieldGroupCaption , @DbFieldGroupDefaultsXml DbFieldGroupDefaults , @DbFormXml DbForm , @DbGroupXml DbGroup , @DbLimiterXml DbLimiter , @DbInterfaceLimiterXml DbInterfaceLimiter , @DbLimiterCaptionXml DbLimiterCaption , @DbLimiterDetailXml DbLimiterDetail , @DBMultiDbAuthListXml DBMultiDbAuthList , @DbParamScalarValuesXml DbParamScalarValues , @DbPublisherXml DbPublisher , @DbRTACInfoXml DbRTACInfo , @DbPickupLocationXml DbPickupLocation , @DbSearchContextMappingXml DbSearchContextMapping , @DbSearchOptionXml DbSearchOption , @DbInterfaceSearchOptionXml DbInterfaceSearchOption , @DbSearchOptionCaptionXml DbSearchOptionCaption , @DbSegmentXml DbSegment , @DbBibMapXml DbBibMap , @DbFieldTagXml DbFieldTag , @DbSegFileInfoXml DbSegFileInfo , @DbThesaurusXml DbThesaurus , @DbDisciplineXml DbDiscipline , @DbSourceTargetXml DbSourceTarget , @DbSortXml DbSort , @DbDocTypeXml DbDocType , @DbSubsetXml DbSubset , @DbTopicXml DbTopic , @DbVolumeXml DbVolume FOR XML RAW('ParentRecordDoesNotExist') ); END --Process received records in temp tables: Delete records that do not exist in temp table IF (@ExcludeDbAuthority = 0) BEGIN DELETE [dbo].[DbAuthority] FROM dbo.DbAuthority t INNER JOIN @DbList AS p ON p.DbVerNo = t.MainDbVerNo LEFT OUTER JOIN @DbAuthority AS s ON s.MainDbVerNo = t.MainDbVerNo AND s.AuthDbVerNo = t.AuthDbVerNo WHERE s.MainDbVerNo IS NULL END IF (@ExcludeDbParamXmlValues = 0) BEGIN DELETE [dbo].[DbParamXmlValues] FROM dbo.DbParamXmlValues t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbParamXmlValues AS s ON s.DbVerNo = t.DbVerNo AND s.ParamNo = t.ParamNo AND s.ItemName = t.ItemName WHERE s.DbVerNo IS NULL END IF (@ExcludeDbBrowseOptionCaption = 0) BEGIN DELETE [dbo].[DbBrowseOptionCaption] FROM dbo.DbBrowseOptionCaption t INNER JOIN @DbBrowseOption AS p ON p.DbVerNo = t.DbVerNo AND p.BrowseOptionNo = t.BrowseOptionNo LEFT OUTER JOIN @DbBrowseOptionCaption AS s ON s.DbVerNo = t.DbVerNo AND s.BrowseOptionNo = t.BrowseOptionNo AND s.LangCode = t.LangCode WHERE s.DbVerNo IS NULL END IF (@ExcludeDbInterfaceBrowseOption = 0) BEGIN DELETE [dbo].[DbInterfaceBrowseOption] FROM dbo.DbInterfaceBrowseOption t INNER JOIN @DbBrowseOption AS p ON p.DbVerNo = t.DbVerNo AND p.BrowseOptionNo = t.BrowseOptionNo LEFT OUTER JOIN @DbInterfaceBrowseOption AS s ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.BrowseOptionNo = t.BrowseOptionNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbBrowseOption = 0) BEGIN DELETE [dbo].[DbBrowseOption] FROM dbo.DbBrowseOption t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbBrowseOption AS s ON s.DbVerNo = t.DbVerNo AND s.BrowseOptionNo = t.BrowseOptionNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbCluster = 0) BEGIN DELETE [dbo].[DbCluster] FROM dbo.DbCluster t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbCluster AS s ON s.DbVerNo = t.DbVerNo AND s.ClustNo = t.ClustNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbFeature = 0) BEGIN DELETE [dbo].[DbFeature] FROM dbo.DbFeature t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbFeature AS s ON s.DbVerNo = t.DbVerNo AND s.FeatureNo = t.FeatureNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbServerParams = 0) BEGIN DELETE [dbo].[DbServerParams] FROM dbo.DbServerParams t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbServerParams AS s ON s.DbVerNo = t.DbVerNo WHERE s.DbVerNo IS NULL END IF (@ExcludeInterfaceNonSearchDbs = 0) BEGIN DELETE [dbo].[InterfaceNonSearchDbs] FROM dbo.InterfaceNonSearchDbs t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @InterfaceNonSearchDbs AS s ON s.InterfaceID = t.InterfaceID AND s.Version = t.Version AND s.DbVerNo = t.DbVerNo WHERE s.InterfaceID IS NULL END IF (@ExcludeDbListExternalSource = 0) BEGIN DELETE [dbo].[DbListExternalSource] FROM dbo.DbListExternalSource t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbListExternalSource AS s ON s.DbVerNo = t.DbVerNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbFieldElement = 0) BEGIN DELETE [dbo].[DbFieldElement] FROM dbo.DbFieldElement t INNER JOIN @DbFieldGroup AS p ON p.DbVerNo = t.DbVerNo AND p.FieldGroupNo = t.FieldGroupNo LEFT OUTER JOIN @DbFieldElement AS s ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.FieldElementNo = t.FieldElementNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbFieldGroupCaption = 0) BEGIN DELETE [dbo].[DbFieldGroupCaption] FROM dbo.DbFieldGroupCaption t INNER JOIN @DbFieldGroup AS p ON p.DbVerNo = t.DbVerNo AND p.FieldGroupNo = t.FieldGroupNo LEFT OUTER JOIN @DbFieldGroupCaption AS s ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.LangCode = t.LangCode WHERE s.DbVerNo IS NULL END IF (@ExcludeDbFieldGroupDefaults = 0) BEGIN DELETE [dbo].[DbFieldGroupDefaults] FROM dbo.DbFieldGroupDefaults t INNER JOIN @DbFieldGroup AS p ON p.DbVerNo = t.DbVerNo AND p.FieldGroupNo = t.FieldGroupNo LEFT OUTER JOIN @DbFieldGroupDefaults AS s ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.OutputMode = t.OutputMode AND s.MarketID = t.MarketID WHERE s.DbVerNo IS NULL END IF (@ExcludeDbFieldGroup = 0) BEGIN DELETE [dbo].[DbFieldGroup] FROM dbo.DbFieldGroup t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbFieldGroup AS s ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbForm = 0) BEGIN DELETE [dbo].[DbForm] FROM dbo.DbForm t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbForm AS s ON s.DbVerNo = t.DbVerNo AND s.FormNumber = t.FormNumber WHERE s.DbVerNo IS NULL END IF (@ExcludeDbGroup = 0) BEGIN DELETE [dbo].[DbGroup] FROM dbo.DbGroup t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbGroup AS s ON s.DbVerNo = t.DbVerNo AND s.GroupNo = t.GroupNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbInterfaceLimiter = 0) BEGIN DELETE [dbo].[DbInterfaceLimiter] FROM dbo.DbInterfaceLimiter t INNER JOIN @DbLimiter AS p ON p.DbVerNo = t.DbVerNo AND p.LimiterNo = t.LimiterNo LEFT OUTER JOIN @DbInterfaceLimiter AS s ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.LimiterNo = t.LimiterNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbLimiterCaption = 0) BEGIN DELETE [dbo].[DbLimiterCaption] FROM dbo.DbLimiterCaption t INNER JOIN @DbLimiter AS p ON p.DbVerNo = t.DbVerNo AND p.LimiterNo = t.LimiterNo LEFT OUTER JOIN @DbLimiterCaption AS s ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo AND s.LangCode = t.LangCode WHERE s.DbVerNo IS NULL END IF (@ExcludeDbLimiterDetail = 0) BEGIN DELETE [dbo].[DbLimiterDetail] FROM dbo.DbLimiterDetail t INNER JOIN @DbLimiter AS p ON p.DbVerNo = t.DbVerNo AND p.LimiterNo = t.LimiterNo LEFT OUTER JOIN @DbLimiterDetail AS s ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbLimiter = 0) BEGIN DELETE [dbo].[DbLimiter] FROM dbo.DbLimiter t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbLimiter AS s ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDBMultiDbAuthList = 0) BEGIN DELETE [dbo].[DBMultiDbAuthList] FROM dbo.DBMultiDbAuthList t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DBMultiDbAuthList AS s ON s.MultiDbAuthID = t.MultiDbAuthID AND s.DbVerNo = t.DbVerNo WHERE s.MultiDbAuthID IS NULL END IF (@ExcludeDbParamScalarValues = 0) BEGIN DELETE [dbo].[DbParamScalarValues] FROM dbo.DbParamScalarValues t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbParamScalarValues AS s ON s.DbVerNo = t.DbVerNo AND s.ParamNo = t.ParamNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbPublisher = 0) BEGIN DELETE [dbo].[DbPublisher] FROM dbo.DbPublisher t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbPublisher AS s ON s.DbVerNo = t.DbVerNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbRTACInfo = 0) BEGIN DELETE [dbo].[DbRTACInfo] FROM dbo.DbRTACInfo t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbRTACInfo AS s ON s.DbVerNo = t.DbVerNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbPickupLocation = 0) BEGIN DELETE [dbo].[DbPickupLocation] FROM dbo.DbPickupLocation t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbPickupLocation AS s ON s.DbVerNo = t.DbVerNo AND s.LocationID = t.LocationID WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSearchContextMapping = 0) BEGIN DELETE [dbo].[DbSearchContextMapping] FROM dbo.DbSearchContextMapping t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbSearchContextMapping AS s ON s.DbVerNo = t.DbVerNo AND s.ContextName = t.ContextName AND s.ConceptName = t.ConceptName AND s.SearchTag = t.SearchTag WHERE s.DbVerNo IS NULL END IF (@ExcludeDbInterfaceSearchOption = 0) BEGIN DELETE [dbo].[DbInterfaceSearchOption] FROM dbo.DbInterfaceSearchOption t INNER JOIN @DbSearchOption AS p ON p.DbVerNo = t.DbVerNo AND p.SearchOptionNo = t.SearchOptionNo LEFT OUTER JOIN @DbInterfaceSearchOption AS s ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.SearchOptionNo = t.SearchOptionNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSearchOptionCaption = 0) BEGIN DELETE [dbo].[DbSearchOptionCaption] FROM dbo.DbSearchOptionCaption t INNER JOIN @DbSearchOption AS p ON p.DbVerNo = t.DbVerNo AND p.SearchOptionNo = t.SearchOptionNo LEFT OUTER JOIN @DbSearchOptionCaption AS s ON s.DbVerNo = t.DbVerNo AND s.SearchOptionNo = t.SearchOptionNo AND s.LangCode = t.LangCode WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSearchOption = 0) BEGIN DELETE [dbo].[DbSearchOption] FROM dbo.DbSearchOption t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbSearchOption AS s ON s.DbVerNo = t.DbVerNo AND s.SearchOptionNo = t.SearchOptionNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbBibMap = 0) BEGIN DELETE [dbo].[DbBibMap] FROM dbo.DbBibMap t INNER JOIN @DbSegment AS p ON p.DbVerNo = t.DbVerNo AND p.SegName = t.SegName LEFT OUTER JOIN @DbBibMap AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.BibField = t.BibField WHERE s.DbVerNo IS NULL END IF (@ExcludeDbFieldTag = 0) BEGIN DELETE [dbo].[DbFieldTag] FROM dbo.DbFieldTag t INNER JOIN @DbSegment AS p ON p.DbVerNo = t.DbVerNo AND p.SegName = t.SegName LEFT OUTER JOIN @DbFieldTag AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.FieldTag = t.FieldTag WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSegFileInfo = 0) BEGIN DELETE [dbo].[DbSegFileInfo] FROM dbo.DbSegFileInfo t INNER JOIN @DbSegment AS p ON p.DbVerNo = t.DbVerNo AND p.SegName = t.SegName LEFT OUTER JOIN @DbSegFileInfo AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.Volume = t.Volume WHERE s.DbVerNo IS NULL END IF (@ExcludeDbThesaurus = 0) BEGIN DELETE [dbo].[DbThesaurus] FROM dbo.DbThesaurus t INNER JOIN @DbSegment AS p ON p.DbVerNo = t.DbVerNo AND p.SegName = t.SegName LEFT OUTER JOIN @DbThesaurus AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.Volume = t.Volume AND s.ThesNumber = t.ThesNumber WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSegment = 0) BEGIN DELETE [dbo].[DbSegment] FROM dbo.DbSegment t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbSegment AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSourceTarget = 0) BEGIN DELETE [dbo].[DbSourceTarget] FROM dbo.DbSourceTarget t INNER JOIN @DbList AS p ON p.DbVerNo = t.SourceDbNo LEFT OUTER JOIN @DbSourceTarget AS s ON s.SourceDbNo = t.SourceDbNo AND s.TargetDbNo = t.TargetDbNo WHERE s.SourceDbNo IS NULL END IF (@ExcludeDbSort = 0) BEGIN DELETE [dbo].[DbSort] FROM dbo.DbSort t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbSort AS s ON s.DbVerNo = t.DbVerNo AND s.SortID = t.SortID WHERE s.DbVerNo IS NULL END IF (@ExcludeDbDocType = 0) BEGIN DELETE [dbo].[DbDocType] FROM dbo.DbDocType t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbDocType AS s ON s.DbVerNo = t.DbVerNo AND s.DocTypeNo = t.DocTypeNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbSubset = 0) BEGIN DELETE [dbo].[DbSubset] FROM dbo.DbSubset t INNER JOIN @DbList AS p ON p.DbVerNo = t.SubsetDbVerNo LEFT OUTER JOIN @DbSubset AS s ON s.SubsetDbVerNo = t.SubsetDbVerNo WHERE s.SubsetDbVerNo IS NULL END IF (@ExcludeDbTopic = 0) BEGIN DELETE [dbo].[DbTopic] FROM dbo.DbTopic t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbTopic AS s ON s.DbVerNo = t.DbVerNo AND s.TopicNo = t.TopicNo WHERE s.DbVerNo IS NULL END IF (@ExcludeDbVolume = 0) BEGIN DELETE [dbo].[DbVolume] FROM dbo.DbVolume t INNER JOIN @DbList AS p ON p.DbVerNo = t.DbVerNo LEFT OUTER JOIN @DbVolume AS s ON s.DbVerNo = t.DbVerNo AND s.Volume = t.Volume WHERE s.DbVerNo IS NULL END --Process received records in temp tables: update records that changed IF (@ExcludeDbList = 0) BEGIN UPDATE [dbo].[DbList] SET DbName = s.DbName, DbLabel = s.DbLabel, DisplayName = s.DisplayName, DSFamilyName = s.DSFamilyName, DbGroup = s.DbGroup, DbType = s.DbType, ContentType = s.ContentType, LastUpdateDate = s.LastUpdateDate, MultiSegment = s.MultiSegment, EnforceSimUsage = s.EnforceSimUsage, ShowStats = s.ShowStats, ShowOnDDSConsole = s.ShowOnDDSConsole, WebClient = s.WebClient, WinClient = s.WinClient, CharClient = s.CharClient, Z3950Client = s.Z3950Client, InterfaceID = s.InterfaceID, DbCategory = s.DbCategory, EPXBuild = s.EPXBuild, EDABuild = s.EDABuild, IncludeWhenAutoAdd = s.IncludeWhenAutoAdd, SourceType = s.SourceType, NonSearchableDb = s.NonSearchableDb, ArchiveProfSettings = s.ArchiveProfSettings FROM dbo.DbList t INNER JOIN @DbList AS s ON s.DbVerNo = t.DbVerNo WHERE (t.[DbName] <> s.DbName OR t.[DbLabel] <> s.DbLabel OR t.[DisplayName] <> s.DisplayName OR t.[DSFamilyName] <> s.DSFamilyName OR t.[DbGroup] <> s.DbGroup OR t.[DbType] <> s.DbType OR t.[ContentType] <> s.ContentType OR t.[LastUpdateDate] <> s.LastUpdateDate OR t.[MultiSegment] <> s.MultiSegment OR t.[EnforceSimUsage] <> s.EnforceSimUsage OR t.[ShowStats] <> s.ShowStats OR t.[ShowOnDDSConsole] <> s.ShowOnDDSConsole OR t.[WebClient] <> s.WebClient OR t.[WinClient] <> s.WinClient OR t.[CharClient] <> s.CharClient OR t.[Z3950Client] <> s.Z3950Client OR t.[InterfaceID] <> s.InterfaceID OR t.[DbCategory] <> s.DbCategory OR t.[EPXBuild] <> s.EPXBuild OR t.[EDABuild] <> s.EDABuild OR t.[IncludeWhenAutoAdd] <> s.IncludeWhenAutoAdd OR t.[SourceType] <> s.SourceType OR t.[NonSearchableDb] <> s.NonSearchableDb OR t.[ArchiveProfSettings] <> s.ArchiveProfSettings); END IF (@ExcludeDbAuthority = 0) BEGIN UPDATE [dbo].[DbAuthority] SET OwnedFlag = s.OwnedFlag, SeqNo = s.SeqNo FROM dbo.DbAuthority t INNER JOIN @DbAuthority AS s ON s.MainDbVerNo = t.MainDbVerNo AND s.AuthDbVerNo = t.AuthDbVerNo WHERE (t.[OwnedFlag] <> s.OwnedFlag OR t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbParamXmlValues = 0) BEGIN UPDATE [dbo].[DbParamXmlValues] SET ParamValue = s.ParamValue, SeqNo = s.SeqNo FROM dbo.DbParamXmlValues t INNER JOIN @DbParamXmlValues AS s ON s.DbVerNo = t.DbVerNo AND s.ParamNo = t.ParamNo AND s.ItemName = t.ItemName WHERE (t.[ParamValue] <> s.ParamValue OR t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbBrowseOption = 0) BEGIN UPDATE [dbo].[DbBrowseOption] SET OptionType = s.OptionType, SearchString = s.SearchString, TargetDb = s.TargetDb, SourceType = s.SourceType, TabImage = s.TabImage, AuthoritySubset = s.AuthoritySubset, AuthorityView = s.AuthorityView, IsHeading = s.IsHeading FROM dbo.DbBrowseOption t INNER JOIN @DbBrowseOption AS s ON s.DbVerNo = t.DbVerNo AND s.BrowseOptionNo = t.BrowseOptionNo WHERE (t.[OptionType] <> s.OptionType OR t.[SearchString] <> s.SearchString OR t.[TargetDb] <> s.TargetDb OR t.[SourceType] <> s.SourceType OR t.[TabImage] <> s.TabImage OR t.[AuthoritySubset] <> s.AuthoritySubset OR t.[AuthorityView] <> s.AuthorityView OR t.[IsHeading] <> s.IsHeading); END IF (@ExcludeDbBrowseOptionCaption = 0) BEGIN UPDATE [dbo].[DbBrowseOptionCaption] SET OptionCaption = s.OptionCaption, ResultCaption = s.ResultCaption, Description = s.Description FROM dbo.DbBrowseOptionCaption t INNER JOIN @DbBrowseOptionCaption AS s ON s.DbVerNo = t.DbVerNo AND s.BrowseOptionNo = t.BrowseOptionNo AND s.LangCode = t.LangCode WHERE (t.[OptionCaption] <> s.OptionCaption OR t.[ResultCaption] <> s.ResultCaption OR t.[Description] <> s.Description); END IF (@ExcludeDbInterfaceBrowseOption = 0) BEGIN UPDATE [dbo].[DbInterfaceBrowseOption] SET Show = s.Show, SeqNo = s.SeqNo FROM dbo.DbInterfaceBrowseOption t INNER JOIN @DbInterfaceBrowseOption AS s ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.BrowseOptionNo = t.BrowseOptionNo WHERE (t.[Show] <> s.Show OR t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbCluster = 0) BEGIN UPDATE [dbo].[DbCluster] SET Enable = s.Enable, DbSearchTag = s.DbSearchTag FROM dbo.DbCluster t INNER JOIN @DbCluster AS s ON s.DbVerNo = t.DbVerNo AND s.ClustNo = t.ClustNo WHERE (t.[Enable] <> s.Enable OR t.[DbSearchTag] <> s.DbSearchTag); END IF (@ExcludeDbServerParams = 0) BEGIN UPDATE [dbo].[DbServerParams] SET Threads = s.Threads, WaitForRequest = s.WaitForRequest, DefSearchInstances = s.DefSearchInstances, MaxSearchInstances = s.MaxSearchInstances, DefRetrieveInstances = s.DefRetrieveInstances, MaxRetrieveInstances = s.MaxRetrieveInstances, DefFormatInstances = s.DefFormatInstances, MaxFormatInstances = s.MaxFormatInstances, DefFullTextInstances = s.DefFullTextInstances, MaxFullTextInstances = s.MaxFullTextInstances, DefThesaurusInstances = s.DefThesaurusInstances, MaxThesaurusInstances = s.MaxThesaurusInstances, MaxFuzzyTerms = s.MaxFuzzyTerms, MaxBooleanTerms = s.MaxBooleanTerms, MaxFuzzyRecordNumbers = s.MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers = s.MaxBooleanRecordNumbers, MaxRecords = s.MaxRecords FROM dbo.DbServerParams t INNER JOIN @DbServerParams AS s ON s.DbVerNo = t.DbVerNo WHERE (t.[Threads] <> s.Threads OR t.[WaitForRequest] <> s.WaitForRequest OR t.[DefSearchInstances] <> s.DefSearchInstances OR t.[MaxSearchInstances] <> s.MaxSearchInstances OR t.[DefRetrieveInstances] <> s.DefRetrieveInstances OR t.[MaxRetrieveInstances] <> s.MaxRetrieveInstances OR t.[DefFormatInstances] <> s.DefFormatInstances OR t.[MaxFormatInstances] <> s.MaxFormatInstances OR t.[DefFullTextInstances] <> s.DefFullTextInstances OR t.[MaxFullTextInstances] <> s.MaxFullTextInstances OR t.[DefThesaurusInstances] <> s.DefThesaurusInstances OR t.[MaxThesaurusInstances] <> s.MaxThesaurusInstances OR t.[MaxFuzzyTerms] <> s.MaxFuzzyTerms OR t.[MaxBooleanTerms] <> s.MaxBooleanTerms OR t.[MaxFuzzyRecordNumbers] <> s.MaxFuzzyRecordNumbers OR t.[MaxBooleanRecordNumbers] <> s.MaxBooleanRecordNumbers OR t.[MaxRecords] <> s.MaxRecords); END IF (@ExcludeInterfaceNonSearchDbs = 0) BEGIN UPDATE [dbo].[InterfaceNonSearchDbs] SET SeqNo = s.SeqNo FROM dbo.InterfaceNonSearchDbs t INNER JOIN @InterfaceNonSearchDbs AS s ON s.InterfaceID = t.InterfaceID AND s.Version = t.Version AND s.DbVerNo = t.DbVerNo WHERE (t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbListExternalSource = 0) BEGIN UPDATE [dbo].[DbListExternalSource] SET ExternalDbID = s.ExternalDbID, VendorName = s.VendorName, ConnectorType = s.ConnectorType, Free = s.Free, ConnectorProvider = s.ConnectorProvider, Notes = s.Notes FROM dbo.DbListExternalSource t INNER JOIN @DbListExternalSource AS s ON s.DbVerNo = t.DbVerNo WHERE (t.[ExternalDbID] <> s.ExternalDbID OR t.[VendorName] <> s.VendorName OR t.[ConnectorType] <> s.ConnectorType OR t.[Free] <> s.Free OR t.[ConnectorProvider] <> s.ConnectorProvider OR t.[Notes] <> s.Notes); END IF (@ExcludeDbFieldGroupCaption = 0) BEGIN UPDATE [dbo].[DbFieldGroupCaption] SET Caption = s.Caption FROM dbo.DbFieldGroupCaption t INNER JOIN @DbFieldGroupCaption AS s ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.LangCode = t.LangCode WHERE (t.[Caption] <> s.Caption); END IF (@ExcludeDbFieldGroupDefaults = 0) BEGIN UPDATE [dbo].[DbFieldGroupDefaults] SET DefValue = s.DefValue FROM dbo.DbFieldGroupDefaults t INNER JOIN @DbFieldGroupDefaults AS s ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.OutputMode = t.OutputMode AND s.MarketID = t.MarketID WHERE (t.[DefValue] <> s.DefValue); END IF (@ExcludeDbForm = 0) BEGIN UPDATE [dbo].[DbForm] SET FormName = s.FormName, Encoding = s.Encoding, Category = s.Category FROM dbo.DbForm t INNER JOIN @DbForm AS s ON s.DbVerNo = t.DbVerNo AND s.FormNumber = t.FormNumber WHERE (t.[FormName] <> s.FormName OR t.[Encoding] <> s.Encoding OR t.[Category] <> s.Category); END IF (@ExcludeDbLimiter = 0) BEGIN UPDATE [dbo].[DbLimiter] SET ResFlag = s.ResFlag, SearchString = s.SearchString, SeqNo = s.SeqNo, DefValue = s.DefValue FROM dbo.DbLimiter t INNER JOIN @DbLimiter AS s ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo WHERE (t.[ResFlag] <> s.ResFlag OR t.[SearchString] <> s.SearchString OR t.[SeqNo] <> s.SeqNo OR t.[DefValue] <> s.DefValue); END IF (@ExcludeDbInterfaceLimiter = 0) BEGIN UPDATE [dbo].[DbInterfaceLimiter] SET ControlType = s.ControlType, Show = s.Show, DefValue = s.DefValue, GroupNo = s.GroupNo, SeqNo = s.SeqNo, DefPosn = s.DefPosn, ColNum = s.ColNum FROM dbo.DbInterfaceLimiter t INNER JOIN @DbInterfaceLimiter AS s ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.LimiterNo = t.LimiterNo WHERE (t.[ControlType] <> s.ControlType OR t.[Show] <> s.Show OR t.[DefValue] <> s.DefValue OR t.[GroupNo] <> s.GroupNo OR t.[SeqNo] <> s.SeqNo OR t.[DefPosn] <> s.DefPosn OR t.[ColNum] <> s.ColNum); END IF (@ExcludeDbLimiterCaption = 0) BEGIN UPDATE [dbo].[DbLimiterCaption] SET Caption = s.Caption, MouseOverText = s.MouseOverText FROM dbo.DbLimiterCaption t INNER JOIN @DbLimiterCaption AS s ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo AND s.LangCode = t.LangCode WHERE (t.[Caption] <> s.Caption OR t.[MouseOverText] <> s.MouseOverText); END IF (@ExcludeDbLimiterDetail = 0) BEGIN UPDATE [dbo].[DbLimiterDetail] SET ControlTemplate = s.ControlTemplate FROM dbo.DbLimiterDetail t INNER JOIN @DbLimiterDetail AS s ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo WHERE (t.[ControlTemplate] <> s.ControlTemplate); END IF (@ExcludeDbParamScalarValues = 0) BEGIN UPDATE [dbo].[DbParamScalarValues] SET ParamValue = s.ParamValue FROM dbo.DbParamScalarValues t INNER JOIN @DbParamScalarValues AS s ON s.DbVerNo = t.DbVerNo AND s.ParamNo = t.ParamNo WHERE (t.[ParamValue] <> s.ParamValue); END IF (@ExcludeDbPublisher = 0) BEGIN UPDATE [dbo].[DbPublisher] SET DbName = s.DbName, PublisherName = s.PublisherName, PubID = s.PubID FROM dbo.DbPublisher t INNER JOIN @DbPublisher AS s ON s.DbVerNo = t.DbVerNo WHERE (t.[DbName] <> s.DbName OR t.[PublisherName] <> s.PublisherName OR t.[PubID] <> s.PubID); END IF (@ExcludeDbRTACInfo = 0) BEGIN UPDATE [dbo].[DbRTACInfo] SET Enable = s.Enable, Config = s.Config, Translation = s.Translation, ILSIntegration = s.ILSIntegration FROM dbo.DbRTACInfo t INNER JOIN @DbRTACInfo AS s ON s.DbVerNo = t.DbVerNo WHERE (t.[Enable] <> s.Enable OR t.[Config] <> s.Config OR t.[Translation] <> s.Translation OR t.[ILSIntegration] <> s.ILSIntegration); END IF (@ExcludeDbPickupLocation = 0) BEGIN UPDATE [dbo].[DbPickupLocation] SET DisplayName = s.DisplayName, SeqNo = s.SeqNo FROM dbo.DbPickupLocation t INNER JOIN @DbPickupLocation AS s ON s.DbVerNo = t.DbVerNo AND s.LocationID = t.LocationID WHERE (t.[DisplayName] <> s.DisplayName OR t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbSearchOption = 0) BEGIN UPDATE [dbo].[DbSearchOption] SET OptionType = s.OptionType, SearchString = s.SearchString, TargetDb = s.TargetDb, SourceType = s.SourceType, TabImage = s.TabImage, AuthoritySubset = s.AuthoritySubset, AuthorityView = s.AuthorityView FROM dbo.DbSearchOption t INNER JOIN @DbSearchOption AS s ON s.DbVerNo = t.DbVerNo AND s.SearchOptionNo = t.SearchOptionNo WHERE (t.[OptionType] <> s.OptionType OR t.[SearchString] <> s.SearchString OR t.[TargetDb] <> s.TargetDb OR t.[SourceType] <> s.SourceType OR t.[TabImage] <> s.TabImage OR t.[AuthoritySubset] <> s.AuthoritySubset OR t.[AuthorityView] <> s.AuthorityView); END IF (@ExcludeDbInterfaceSearchOption = 0) BEGIN UPDATE [dbo].[DbInterfaceSearchOption] SET Show = s.Show, SeqNo = s.SeqNo FROM dbo.DbInterfaceSearchOption t INNER JOIN @DbInterfaceSearchOption AS s ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.SearchOptionNo = t.SearchOptionNo WHERE (t.[Show] <> s.Show OR t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbSearchOptionCaption = 0) BEGIN UPDATE [dbo].[DbSearchOptionCaption] SET OptionCaption = s.OptionCaption, ResultCaption = s.ResultCaption, Description = s.Description FROM dbo.DbSearchOptionCaption t INNER JOIN @DbSearchOptionCaption AS s ON s.DbVerNo = t.DbVerNo AND s.SearchOptionNo = t.SearchOptionNo AND s.LangCode = t.LangCode WHERE (t.[OptionCaption] <> s.OptionCaption OR t.[ResultCaption] <> s.ResultCaption OR t.[Description] <> s.Description); END IF (@ExcludeDbSegment = 0) BEGIN UPDATE [dbo].[DbSegment] SET SegDescription = s.SegDescription, SeqNo = s.SeqNo, ProductionDate = s.ProductionDate FROM dbo.DbSegment t INNER JOIN @DbSegment AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName WHERE (t.[SegDescription] <> s.SegDescription OR t.[SeqNo] <> s.SeqNo OR t.[ProductionDate] <> s.ProductionDate); END IF (@ExcludeDbBibMap = 0) BEGIN UPDATE [dbo].[DbBibMap] SET FieldTag = s.FieldTag, SeqNo = s.SeqNo FROM dbo.DbBibMap t INNER JOIN @DbBibMap AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.BibField = t.BibField WHERE (t.[FieldTag] <> s.FieldTag OR t.[SeqNo] <> s.SeqNo); END IF (@ExcludeDbFieldTag = 0) BEGIN UPDATE [dbo].[DbFieldTag] SET Description = s.Description, IndexType = s.IndexType, Category = s.Category, ThesNumber = s.ThesNumber, FieldNumbers = s.FieldNumbers, SeqNo = s.SeqNo, Description2 = s.Description2 FROM dbo.DbFieldTag t INNER JOIN @DbFieldTag AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.FieldTag = t.FieldTag WHERE (t.[Description] <> s.Description OR t.[IndexType] <> s.IndexType OR t.[Category] <> s.Category OR t.[ThesNumber] <> s.ThesNumber OR t.[FieldNumbers] <> s.FieldNumbers OR t.[SeqNo] <> s.SeqNo OR t.[Description2] <> s.Description2); END IF (@ExcludeDbSegFileInfo = 0) BEGIN UPDATE [dbo].[DbSegFileInfo] SET EpsFile = s.EpsFile, EpdFile = s.EpdFile, EpiFile = s.EpiFile, EpfFile = s.EpfFile, JumpFile = s.JumpFile, LookupDir = s.LookupDir, EplFile = s.EplFile, EpgFile = s.EpgFile, EpuFile = s.EpuFile, ImageServerURL = s.ImageServerURL FROM dbo.DbSegFileInfo t INNER JOIN @DbSegFileInfo AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.Volume = t.Volume WHERE (t.[EpsFile] <> s.EpsFile OR t.[EpdFile] <> s.EpdFile OR t.[EpiFile] <> s.EpiFile OR t.[EpfFile] <> s.EpfFile OR t.[JumpFile] <> s.JumpFile OR t.[LookupDir] <> s.LookupDir OR t.[EplFile] <> s.EplFile OR t.[EpgFile] <> s.EpgFile OR t.[EpuFile] <> s.EpuFile OR t.[ImageServerURL] <> s.ImageServerURL); END IF (@ExcludeDbThesaurus = 0) BEGIN UPDATE [dbo].[DbThesaurus] SET ThesFile = s.ThesFile, UserControlled = s.UserControlled, StoreKWIC = s.StoreKWIC FROM dbo.DbThesaurus t INNER JOIN @DbThesaurus AS s ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.Volume = t.Volume AND s.ThesNumber = t.ThesNumber WHERE (t.[ThesFile] <> s.ThesFile OR t.[UserControlled] <> s.UserControlled OR t.[StoreKWIC] <> s.StoreKWIC); END IF (@ExcludeDbSourceTarget = 0) BEGIN UPDATE [dbo].[DbSourceTarget] SET TargetType = s.TargetType, SLCollID = s.SLCollID FROM dbo.DbSourceTarget t INNER JOIN @DbSourceTarget AS s ON s.SourceDbNo = t.SourceDbNo AND s.TargetDbNo = t.TargetDbNo WHERE (t.[TargetType] <> s.TargetType OR t.[SLCollID] <> s.SLCollID); END IF (@ExcludeDbSort = 0) BEGIN UPDATE [dbo].[DbSort] SET SortName = s.SortName, SortField = s.SortField, SeqNo = s.SeqNo, Hide = s.Hide FROM dbo.DbSort t INNER JOIN @DbSort AS s ON s.DbVerNo = t.DbVerNo AND s.SortID = t.SortID WHERE (t.[SortName] <> s.SortName OR t.[SortField] <> s.SortField OR t.[SeqNo] <> s.SeqNo OR t.[Hide] <> s.Hide); END IF (@ExcludeDbDocType = 0) BEGIN UPDATE [dbo].[DbDocType] SET TargetDb = s.TargetDb, SearchString = s.SearchString FROM dbo.DbDocType t INNER JOIN @DbDocType AS s ON s.DbVerNo = t.DbVerNo AND s.DocTypeNo = t.DocTypeNo WHERE (t.[TargetDb] <> s.TargetDb OR t.[SearchString] <> s.SearchString); END IF (@ExcludeDbSubset = 0) BEGIN UPDATE [dbo].[DbSubset] SET PhysDbVerNo = s.PhysDbVerNo, MergeSearches = s.MergeSearches, DBDefSearchExprType = s.DBDefSearchExprType, DBDefSearchExpression = s.DBDefSearchExpression FROM dbo.DbSubset t INNER JOIN @DbSubset AS s ON s.SubsetDbVerNo = t.SubsetDbVerNo WHERE (t.[PhysDbVerNo] <> s.PhysDbVerNo OR t.[MergeSearches] <> s.MergeSearches OR t.[DBDefSearchExprType] <> s.DBDefSearchExprType OR t.[DBDefSearchExpression] <> s.DBDefSearchExpression); END IF (@ExcludeDbVolume = 0) BEGIN UPDATE [dbo].[DbVolume] SET LastUpdateDate = s.LastUpdateDate, EpkPath = s.EpkPath FROM dbo.DbVolume t INNER JOIN @DbVolume AS s ON s.DbVerNo = t.DbVerNo AND s.Volume = t.Volume WHERE (t.[LastUpdateDate] <> s.LastUpdateDate OR t.[EpkPath] <> s.EpkPath); END --Process received records in temp tables: insert records that are new in temp tables IF (@ExcludeDbAuthority = 0) BEGIN INSERT INTO [dbo].[DbAuthority] ( [MainDbVerNo], [AuthDbVerNo], [OwnedFlag], [SeqNo]) SELECT s.MainDbVerNo, s.AuthDbVerNo, s.OwnedFlag, s.SeqNo FROM @DbAuthority s LEFT OUTER JOIN dbo.DbAuthority t ON s.MainDbVerNo = t.MainDbVerNo AND s.AuthDbVerNo = t.AuthDbVerNo WHERE t.MainDbVerNo IS NULL ; END IF (@ExcludeDbParamXmlValues = 0) BEGIN INSERT INTO [dbo].[DbParamXmlValues] ( [DbVerNo], [ParamNo], [ItemName], [ParamValue], [SeqNo]) SELECT s.DbVerNo, s.ParamNo, s.ItemName, s.ParamValue, s.SeqNo FROM @DbParamXmlValues s LEFT OUTER JOIN dbo.DbParamXmlValues t ON s.DbVerNo = t.DbVerNo AND s.ParamNo = t.ParamNo AND s.ItemName = t.ItemName WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbBrowseOption = 0) BEGIN INSERT INTO [dbo].[DbBrowseOption] ( [DbVerNo], [BrowseOptionNo], [OptionType], [SearchString], [TargetDb], [SourceType], [TabImage], [AuthoritySubset], [AuthorityView], [IsHeading]) SELECT s.DbVerNo, s.BrowseOptionNo, s.OptionType, s.SearchString, s.TargetDb, s.SourceType, s.TabImage, s.AuthoritySubset, s.AuthorityView, s.IsHeading FROM @DbBrowseOption s LEFT OUTER JOIN dbo.DbBrowseOption t ON s.DbVerNo = t.DbVerNo AND s.BrowseOptionNo = t.BrowseOptionNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbBrowseOptionCaption = 0) BEGIN INSERT INTO [dbo].[DbBrowseOptionCaption] ( [DbVerNo], [BrowseOptionNo], [LangCode], [OptionCaption], [ResultCaption], [Description]) SELECT s.DbVerNo, s.BrowseOptionNo, s.LangCode, s.OptionCaption, s.ResultCaption, s.Description FROM @DbBrowseOptionCaption s LEFT OUTER JOIN dbo.DbBrowseOptionCaption t ON s.DbVerNo = t.DbVerNo AND s.BrowseOptionNo = t.BrowseOptionNo AND s.LangCode = t.LangCode WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbInterfaceBrowseOption = 0) BEGIN INSERT INTO [dbo].[DbInterfaceBrowseOption] ( [DbVerNo], [IntfScreenNo], [BrowseOptionNo], [Show], [SeqNo]) SELECT s.DbVerNo, s.IntfScreenNo, s.BrowseOptionNo, s.Show, s.SeqNo FROM @DbInterfaceBrowseOption s LEFT OUTER JOIN dbo.DbInterfaceBrowseOption t ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.BrowseOptionNo = t.BrowseOptionNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbCluster = 0) BEGIN INSERT INTO [dbo].[DbCluster] ( [DbVerNo], [ClustNo], [Enable], [DbSearchTag]) SELECT s.DbVerNo, s.ClustNo, s.Enable, s.DbSearchTag FROM @DbCluster s LEFT OUTER JOIN dbo.DbCluster t ON s.DbVerNo = t.DbVerNo AND s.ClustNo = t.ClustNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbFeature = 0) BEGIN INSERT INTO [dbo].[DbFeature] ( [DbVerNo], [FeatureNo]) SELECT s.DbVerNo, s.FeatureNo FROM @DbFeature s LEFT OUTER JOIN dbo.DbFeature t ON s.DbVerNo = t.DbVerNo AND s.FeatureNo = t.FeatureNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbServerParams = 0) BEGIN INSERT INTO [dbo].[DbServerParams] ( [DbVerNo], [Threads], [WaitForRequest], [DefSearchInstances], [MaxSearchInstances], [DefRetrieveInstances], [MaxRetrieveInstances], [DefFormatInstances], [MaxFormatInstances], [DefFullTextInstances], [MaxFullTextInstances], [DefThesaurusInstances], [MaxThesaurusInstances], [MaxFuzzyTerms], [MaxBooleanTerms], [MaxFuzzyRecordNumbers], [MaxBooleanRecordNumbers], [MaxRecords]) SELECT s.DbVerNo, s.Threads, s.WaitForRequest, s.DefSearchInstances, s.MaxSearchInstances, s.DefRetrieveInstances, s.MaxRetrieveInstances, s.DefFormatInstances, s.MaxFormatInstances, s.DefFullTextInstances, s.MaxFullTextInstances, s.DefThesaurusInstances, s.MaxThesaurusInstances, s.MaxFuzzyTerms, s.MaxBooleanTerms, s.MaxFuzzyRecordNumbers, s.MaxBooleanRecordNumbers, s.MaxRecords FROM @DbServerParams s LEFT OUTER JOIN dbo.DbServerParams t ON s.DbVerNo = t.DbVerNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeInterfaceNonSearchDbs = 0) BEGIN INSERT INTO [dbo].[InterfaceNonSearchDbs] ( [InterfaceID], [Version], [DbVerNo], [SeqNo]) SELECT s.InterfaceID, s.Version, s.DbVerNo, s.SeqNo FROM @InterfaceNonSearchDbs s LEFT OUTER JOIN dbo.InterfaceNonSearchDbs t ON s.InterfaceID = t.InterfaceID AND s.Version = t.Version AND s.DbVerNo = t.DbVerNo WHERE t.InterfaceID IS NULL ; END IF (@ExcludeDbListExternalSource = 0) BEGIN INSERT INTO [dbo].[DbListExternalSource] ( [ExternalDbID], [DbVerNo], [VendorName], [ConnectorType], [Free], [ConnectorProvider], [Notes]) SELECT s.ExternalDbID, s.DbVerNo, s.VendorName, s.ConnectorType, s.Free, s.ConnectorProvider, s.Notes FROM @DbListExternalSource s LEFT OUTER JOIN dbo.DbListExternalSource t ON s.DbVerNo = t.DbVerNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbFieldGroup = 0) BEGIN INSERT INTO [dbo].[DbFieldGroup] ( [DbVerNo], [FieldGroupNo]) SELECT s.DbVerNo, s.FieldGroupNo FROM @DbFieldGroup s LEFT OUTER JOIN dbo.DbFieldGroup t ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbFieldElement = 0) BEGIN INSERT INTO [dbo].[DbFieldElement] ( [DbVerNo], [FieldGroupNo], [FieldElementNo]) SELECT s.DbVerNo, s.FieldGroupNo, s.FieldElementNo FROM @DbFieldElement s LEFT OUTER JOIN dbo.DbFieldElement t ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.FieldElementNo = t.FieldElementNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbFieldGroupCaption = 0) BEGIN INSERT INTO [dbo].[DbFieldGroupCaption] ( [DbVerNo], [FieldGroupNo], [LangCode], [Caption]) SELECT s.DbVerNo, s.FieldGroupNo, s.LangCode, s.Caption FROM @DbFieldGroupCaption s LEFT OUTER JOIN dbo.DbFieldGroupCaption t ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.LangCode = t.LangCode WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbFieldGroupDefaults = 0) BEGIN INSERT INTO [dbo].[DbFieldGroupDefaults] ( [DbVerNo], [FieldGroupNo], [OutputMode], [MarketID], [DefValue]) SELECT s.DbVerNo, s.FieldGroupNo, s.OutputMode, s.MarketID, s.DefValue FROM @DbFieldGroupDefaults s LEFT OUTER JOIN dbo.DbFieldGroupDefaults t ON s.DbVerNo = t.DbVerNo AND s.FieldGroupNo = t.FieldGroupNo AND s.OutputMode = t.OutputMode AND s.MarketID = t.MarketID WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbForm = 0) BEGIN INSERT INTO [dbo].[DbForm] ( [DbVerNo], [FormNumber], [FormName], [Encoding], [Category]) SELECT s.DbVerNo, s.FormNumber, s.FormName, s.Encoding, s.Category FROM @DbForm s LEFT OUTER JOIN dbo.DbForm t ON s.DbVerNo = t.DbVerNo AND s.FormNumber = t.FormNumber WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbGroup = 0) BEGIN INSERT INTO [dbo].[DbGroup] ( [DbVerNo], [GroupNo]) SELECT s.DbVerNo, s.GroupNo FROM @DbGroup s LEFT OUTER JOIN dbo.DbGroup t ON s.DbVerNo = t.DbVerNo AND s.GroupNo = t.GroupNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbLimiter = 0) BEGIN INSERT INTO [dbo].[DbLimiter] ( [DbVerNo], [LimiterNo], [ResFlag], [SearchString], [SeqNo], [DefValue]) SELECT s.DbVerNo, s.LimiterNo, s.ResFlag, s.SearchString, s.SeqNo, s.DefValue FROM @DbLimiter s LEFT OUTER JOIN dbo.DbLimiter t ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbInterfaceLimiter = 0) BEGIN INSERT INTO [dbo].[DbInterfaceLimiter] ( [DbVerNo], [IntfScreenNo], [LimiterNo], [ControlType], [Show], [DefValue], [GroupNo], [SeqNo], [DefPosn], [ColNum]) SELECT s.DbVerNo, s.IntfScreenNo, s.LimiterNo, s.ControlType, s.Show, s.DefValue, s.GroupNo, s.SeqNo, s.DefPosn, s.ColNum FROM @DbInterfaceLimiter s LEFT OUTER JOIN dbo.DbInterfaceLimiter t ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.LimiterNo = t.LimiterNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbLimiterCaption = 0) BEGIN INSERT INTO [dbo].[DbLimiterCaption] ( [DbVerNo], [LimiterNo], [LangCode], [Caption], [MouseOverText]) SELECT s.DbVerNo, s.LimiterNo, s.LangCode, s.Caption, s.MouseOverText FROM @DbLimiterCaption s LEFT OUTER JOIN dbo.DbLimiterCaption t ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo AND s.LangCode = t.LangCode WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbLimiterDetail = 0) BEGIN INSERT INTO [dbo].[DbLimiterDetail] ( [DbVerNo], [LimiterNo], [ControlTemplate]) SELECT s.DbVerNo, s.LimiterNo, s.ControlTemplate FROM @DbLimiterDetail s LEFT OUTER JOIN dbo.DbLimiterDetail t ON s.DbVerNo = t.DbVerNo AND s.LimiterNo = t.LimiterNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDBMultiDbAuthList = 0) BEGIN INSERT INTO [dbo].[DBMultiDbAuthList] ( [MultiDbAuthID], [DbVerNo]) SELECT s.MultiDbAuthID, s.DbVerNo FROM @DBMultiDbAuthList s LEFT OUTER JOIN dbo.DBMultiDbAuthList t ON s.MultiDbAuthID = t.MultiDbAuthID AND s.DbVerNo = t.DbVerNo WHERE t.MultiDbAuthID IS NULL ; END IF (@ExcludeDbParamScalarValues = 0) BEGIN INSERT INTO [dbo].[DbParamScalarValues] ( [DbVerNo], [ParamNo], [ParamValue]) SELECT s.DbVerNo, s.ParamNo, s.ParamValue FROM @DbParamScalarValues s LEFT OUTER JOIN dbo.DbParamScalarValues t ON s.DbVerNo = t.DbVerNo AND s.ParamNo = t.ParamNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbPublisher = 0) BEGIN INSERT INTO [dbo].[DbPublisher] ( [DbVerNo], [DbName], [PublisherName], [PubID]) SELECT s.DbVerNo, s.DbName, s.PublisherName, s.PubID FROM @DbPublisher s LEFT OUTER JOIN dbo.DbPublisher t ON s.DbVerNo = t.DbVerNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbRTACInfo = 0) BEGIN INSERT INTO [dbo].[DbRTACInfo] ( [DbVerNo], [Enable], [Config], [Translation], [ILSIntegration]) SELECT s.DbVerNo, s.Enable, s.Config, s.Translation, s.ILSIntegration FROM @DbRTACInfo s LEFT OUTER JOIN dbo.DbRTACInfo t ON s.DbVerNo = t.DbVerNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbPickupLocation = 0) BEGIN INSERT INTO [dbo].[DbPickupLocation] ( [DbVerNo], [LocationID], [DisplayName], [SeqNo]) SELECT s.DbVerNo, s.LocationID, s.DisplayName, s.SeqNo FROM @DbPickupLocation s LEFT OUTER JOIN dbo.DbPickupLocation t ON s.DbVerNo = t.DbVerNo AND s.LocationID = t.LocationID WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbSearchContextMapping = 0) BEGIN INSERT INTO [dbo].[DbSearchContextMapping] ( [DbVerNo], [ContextName], [ConceptName], [SearchTag]) SELECT s.DbVerNo, s.ContextName, s.ConceptName, s.SearchTag FROM @DbSearchContextMapping s LEFT OUTER JOIN dbo.DbSearchContextMapping t ON s.DbVerNo = t.DbVerNo AND s.ContextName = t.ContextName AND s.ConceptName = t.ConceptName AND s.SearchTag = t.SearchTag WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbSearchOption = 0) BEGIN INSERT INTO [dbo].[DbSearchOption] ( [DbVerNo], [SearchOptionNo], [OptionType], [SearchString], [TargetDb], [SourceType], [TabImage], [AuthoritySubset], [AuthorityView]) SELECT s.DbVerNo, s.SearchOptionNo, s.OptionType, s.SearchString, s.TargetDb, s.SourceType, s.TabImage, s.AuthoritySubset, s.AuthorityView FROM @DbSearchOption s LEFT OUTER JOIN dbo.DbSearchOption t ON s.DbVerNo = t.DbVerNo AND s.SearchOptionNo = t.SearchOptionNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbInterfaceSearchOption = 0) BEGIN INSERT INTO [dbo].[DbInterfaceSearchOption] ( [DbVerNo], [IntfScreenNo], [SearchOptionNo], [Show], [SeqNo]) SELECT s.DbVerNo, s.IntfScreenNo, s.SearchOptionNo, s.Show, s.SeqNo FROM @DbInterfaceSearchOption s LEFT OUTER JOIN dbo.DbInterfaceSearchOption t ON s.DbVerNo = t.DbVerNo AND s.IntfScreenNo = t.IntfScreenNo AND s.SearchOptionNo = t.SearchOptionNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbSearchOptionCaption = 0) BEGIN INSERT INTO [dbo].[DbSearchOptionCaption] ( [DbVerNo], [SearchOptionNo], [LangCode], [OptionCaption], [ResultCaption], [Description]) SELECT s.DbVerNo, s.SearchOptionNo, s.LangCode, s.OptionCaption, s.ResultCaption, s.Description FROM @DbSearchOptionCaption s LEFT OUTER JOIN dbo.DbSearchOptionCaption t ON s.DbVerNo = t.DbVerNo AND s.SearchOptionNo = t.SearchOptionNo AND s.LangCode = t.LangCode WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbSegment = 0) BEGIN INSERT INTO [dbo].[DbSegment] ( [DbVerNo], [SegName], [SegDescription], [SeqNo], [ProductionDate]) SELECT s.DbVerNo, s.SegName, s.SegDescription, s.SeqNo, s.ProductionDate FROM @DbSegment s LEFT OUTER JOIN dbo.DbSegment t ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbBibMap = 0) BEGIN INSERT INTO [dbo].[DbBibMap] ( [DbVerNo], [SegName], [BibField], [FieldTag], [SeqNo]) SELECT s.DbVerNo, s.SegName, s.BibField, s.FieldTag, s.SeqNo FROM @DbBibMap s LEFT OUTER JOIN dbo.DbBibMap t ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.BibField = t.BibField WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbFieldTag = 0) BEGIN INSERT INTO [dbo].[DbFieldTag] ( [DbVerNo], [SegName], [FieldTag], [Description], [IndexType], [Category], [ThesNumber], [FieldNumbers], [SeqNo], [Description2]) SELECT s.DbVerNo, s.SegName, s.FieldTag, s.Description, s.IndexType, s.Category, s.ThesNumber, s.FieldNumbers, s.SeqNo, s.Description2 FROM @DbFieldTag s LEFT OUTER JOIN dbo.DbFieldTag t ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.FieldTag = t.FieldTag WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbSegFileInfo = 0) BEGIN INSERT INTO [dbo].[DbSegFileInfo] ( [DbVerNo], [SegName], [Volume], [EpsFile], [EpdFile], [EpiFile], [EpfFile], [JumpFile], [LookupDir], [EplFile], [EpgFile], [EpuFile], [ImageServerURL]) SELECT s.DbVerNo, s.SegName, s.Volume, s.EpsFile, s.EpdFile, s.EpiFile, s.EpfFile, s.JumpFile, s.LookupDir, s.EplFile, s.EpgFile, s.EpuFile, s.ImageServerURL FROM @DbSegFileInfo s LEFT OUTER JOIN dbo.DbSegFileInfo t ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.Volume = t.Volume WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbThesaurus = 0) BEGIN INSERT INTO [dbo].[DbThesaurus] ( [DbVerNo], [SegName], [Volume], [ThesNumber], [ThesFile], [UserControlled], [StoreKWIC]) SELECT s.DbVerNo, s.SegName, s.Volume, s.ThesNumber, s.ThesFile, s.UserControlled, s.StoreKWIC FROM @DbThesaurus s LEFT OUTER JOIN dbo.DbThesaurus t ON s.DbVerNo = t.DbVerNo AND s.SegName = t.SegName AND s.Volume = t.Volume AND s.ThesNumber = t.ThesNumber WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbDiscipline = 0) BEGIN INSERT INTO [dbo].[DbDiscipline] ( [DisciplineNo], [DbName]) SELECT s.DisciplineNo, s.DbName FROM @DbDiscipline s LEFT OUTER JOIN dbo.DbDiscipline t ON s.DisciplineNo = t.DisciplineNo AND s.DbName = t.DbName WHERE t.DisciplineNo IS NULL ; END IF (@ExcludeDbSourceTarget = 0) BEGIN INSERT INTO [dbo].[DbSourceTarget] ( [SourceDbNo], [TargetDbNo], [TargetType], [SLCollID]) SELECT s.SourceDbNo, s.TargetDbNo, s.TargetType, s.SLCollID FROM @DbSourceTarget s LEFT OUTER JOIN dbo.DbSourceTarget t ON s.SourceDbNo = t.SourceDbNo AND s.TargetDbNo = t.TargetDbNo WHERE t.SourceDbNo IS NULL ; END IF (@ExcludeDbSort = 0) BEGIN INSERT INTO [dbo].[DbSort] ( [DbVerNo], [SortID], [SortName], [SortField], [SeqNo], [Hide]) SELECT s.DbVerNo, s.SortID, s.SortName, s.SortField, s.SeqNo, s.Hide FROM @DbSort s LEFT OUTER JOIN dbo.DbSort t ON s.DbVerNo = t.DbVerNo AND s.SortID = t.SortID WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbDocType = 0) BEGIN INSERT INTO [dbo].[DbDocType] ( [DbVerNo], [DocTypeNo], [TargetDb], [SearchString]) SELECT s.DbVerNo, s.DocTypeNo, s.TargetDb, s.SearchString FROM @DbDocType s LEFT OUTER JOIN dbo.DbDocType t ON s.DbVerNo = t.DbVerNo AND s.DocTypeNo = t.DocTypeNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbSubset = 0) BEGIN INSERT INTO [dbo].[DbSubset] ( [SubsetDbVerNo], [PhysDbVerNo], [MergeSearches], [DBDefSearchExprType], [DBDefSearchExpression]) SELECT s.SubsetDbVerNo, s.PhysDbVerNo, s.MergeSearches, s.DBDefSearchExprType, s.DBDefSearchExpression FROM @DbSubset s LEFT OUTER JOIN dbo.DbSubset t ON s.SubsetDbVerNo = t.SubsetDbVerNo WHERE t.SubsetDbVerNo IS NULL ; END IF (@ExcludeDbTopic = 0) BEGIN INSERT INTO [dbo].[DbTopic] ( [DbVerNo], [TopicNo]) SELECT s.DbVerNo, s.TopicNo FROM @DbTopic s LEFT OUTER JOIN dbo.DbTopic t ON s.DbVerNo = t.DbVerNo AND s.TopicNo = t.TopicNo WHERE t.DbVerNo IS NULL ; END IF (@ExcludeDbVolume = 0) BEGIN INSERT INTO [dbo].[DbVolume] ( [DbVerNo], [Volume], [LastUpdateDate], [EpkPath]) SELECT s.DbVerNo, s.Volume, s.LastUpdateDate, s.EpkPath FROM @DbVolume s LEFT OUTER JOIN dbo.DbVolume t ON s.DbVerNo = t.DbVerNo AND s.Volume = t.Volume WHERE t.DbVerNo IS NULL ; END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceTopicList_77] (@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT it.IntfTopicNo , tl.TopicID , ISNULL(itc.Caption,tc.Caption) AS Caption, it.SeqNo FROM [dbo].[InterfaceTopic] it LEFT OUTER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo=itc.IntfTopicNo AND itc.LangCode = 'en' INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version AND tl.ParentTopicNo is null AND tc.LangCode = 'en' ORDER BY it.SeqNo END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceKnownSearchItems_103](@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10))AS BEGIN SELECT iks.KnownSearchItemNo, iks.SearchString, iksc.Label, iksc.GhostText FROM [dbo].[InterfaceKnownSearchItems] iks JOIN [dbo].[InterfaceKnownSearchItemCaption] iksc ON iks.KnownSearchItemNo = iksc.KnownSearchItemNo WHERE iks.InterfaceID = @InterfaceID AND iks.Version =@Version AND iksc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerPLinksFilterTitles_81](@CustID varchar(10))AS BEGIN DECLARE @PlinksTitles Varchar(500) SET @PlinksTitles = dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'RestrictPLinkTitles') SELECT ISNULL([dbo].[MasterTitle].[ISSN],'') AS ISSN FROM [dbo].[MasterTitle] WHERE ISNULL([dbo].[MasterTitle].[RestrictPLinks],0) = 1 AND LEN(ISNULL([dbo].[MasterTitle].[ISSN], '')) > 0 AND [dbo].[MasterTitle].[TitleNo] IN (SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@PlinksTitles, ',')) END
create PROCEDURE [dbo].[EAUI_GetExternalSourceDbList_102]( @DbLabel varchar(10), @SourceType char(1)) AS BEGIN /* SourceType for external source would be 'M' always */ SELECT l.DbVerNo, CASE l.DisplayName WHEN N'' THEN N'...' ELSE l.DisplayName END AS DisplayName, l.DbName, l.DbLabel, ExternalSourceID=ISNULL( CASE e.ConnectorProvider WHEN 'M' THEN muse.ExternalDbID WHEN 'I' THEN indexData.ExternalDbID END,''), CASE e.Free WHEN 0 THEN 'Paid' WHEN 1 THEN 'Free' END AS FreeInd, COUNT([cedbl].[CustNo]) AS UsageCount, e.ConnectorProvider, ISNULL(e.ConnectorType,'') AS ConnectorType, ISNULL(e.VendorName,'') as Vendor FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedbl ON l.DbVerNo=cedbl.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse on (muse.DbVerNo = e.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData on (indexData.DbVerNo = e.DbVerNo) WHERE l.SourceType = @SourceType AND l.DbLabel = @DbLabel GROUP BY l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, CASE e.ConnectorProvider WHEN 'M' THEN muse.ExternalDbID WHEN 'I' THEN indexData.ExternalDbID END, e.Free, e.ConnectorType, e.ConnectorProvider, e.VendorName ORDER BY DisplayName END
CREATE PROCEDURE [dbo].[EAIP_TblParam_AddModifyItem_92](@ParamName varchar(100), @ItemID varchar(10), @SeqNo int, @AutoAddToInterface bit=1, @InterfaceID varchar(10)=null, @Version varchar(10)=null) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName AND [dbo].[CustomParamList].[ParamType]='T' IF @ParamNo is null BEGIN RAISERROR('Parameter %s type table does not exists', 16, -1, @ParamName) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblItems].[ItemID]=@ItemID) UPDATE [dbo].[CustomParamTblItems] SET [dbo].[CustomParamTblItems].[SeqNo]=@SeqNo, [dbo].[CustomParamTblItems].[AutoAddToInterface]= @AutoAddToInterface WHERE [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblItems].[ItemID]=@ItemID ELSE INSERT INTO [dbo].[CustomParamTblItems]([dbo].[CustomParamTblItems].[ParamNo], [dbo].[CustomParamTblItems].[ItemID], [dbo].[CustomParamTblItems].[SeqNo], [dbo].[CustomParamTblItems].[AutoAddToInterface]) VALUES(@ParamNo,@ItemID, @SeqNo, @AutoAddToInterface) IF @AutoAddToInterface=0 AND @InterfaceID is not null BEGIN INSERT INTO [dbo].[CustomParamTblItemsInterface] ([dbo].[CustomParamTblItemsInterface].[ParamNo], [dbo].[CustomParamTblItemsInterface].[ItemID], [dbo].[CustomParamTblItemsInterface].[InterfaceID], [dbo].[CustomParamTblItemsInterface].[Version]) SELECT @ParamNo, @ItemID, b.InterfaceID, b.Version FROM ( select distinct iv.InterfaceID, iv.Version from [dbo].[InterfaceVersion] iv INNER JOIN [dbo].[CustomParamDefaults] d ON iv.InterfaceID=d.InterfaceID and iv.Version=d.Version left outer join [dbo].[CustomParamTblItemsInterface] ct on d.ParamNo=ct.ParamNo and ct.ItemID=@ItemID and d.InterfaceID=ct.InterfaceID and d.Version=ct.Version where iv.InterfaceID=@InterfaceID AND iv.Version=@Version and d.ParamNo=@ParamNo and ct.ParamNo is null) b END END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileAndPwd_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ProfName nvarchar(100), @MarketID varchar(20), @DbLabel varchar(10), @DefLangCode varchar(10), @Pwd varchar(10)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) IF @DbLabel IS NULL OR @DbLabel='' SET @DbLabel='live' BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Profile/Pwd', @ProfLogName, @ProfName, @MarketID, @DbLabel,@DefLangCode UPDATE [dbo].[Profile] SET [dbo].[Profile].[ProfName] = @ProfName, [dbo].[Profile].[MarketID] = @MarketID, [dbo].[Profile].[DbLabel]=@DBLabel, [dbo].[Profile].[DefLangCode]=@DefLangCode, [dbo].[Profile].[ProfPwd]=@Pwd WHERE [dbo].[Profile].[ProfNo] = @ProfNo COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_IsValidCPID_70( @PatronID varchar(30), @Mask varchar(30), @ModelID varchar(30)) RETURNS bit BEGIN DECLARE @MaskLength int IF (DATALENGTH(@PatronID) <> DATALENGTH(@Mask)) BEGIN RETURN 0 END SELECT @MaskLength=DATALENGTH(@Mask) WHILE (@MaskLength>0) BEGIN IF SUBSTRING(@Mask,1,1) = '1' BEGIN IF SUBSTRING(@PatronID,1,1) <> SUBSTRING(@ModelID,1,1) BEGIN RETURN 0 END END SELECT @MaskLength = @MaskLength-1 SELECT @Mask = SUBSTRING(@Mask,2,@MaskLength) SELECT @PatronID = SUBSTRING(@PatronID,2,@MaskLength) SELECT @ModelID = SUBSTRING(@ModelID,2,@MaskLength) END RETURN 1 END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerSettings_70] (@CustID varchar(10)) AS BEGIN Declare @UserDefined1 nvarchar(255) Declare @UserDefined2 nvarchar(255) DECLARE @DbVerNo int --Declare @Email varchar(255) Select @UserDefined1=[dbo].[CustDefField].[UserDefined1],@UserDefined2=[dbo].[CustDefField].[UserDefined2] from [dbo].[CustDefField] Where [dbo].[CustDefField].[CustID]=@CustID SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]='edspub' AND [dbo].[DbList].[DbLabel]='live' --Select @Email=Email from EASUPPORT.dbo.AdminUser Where UserID=@CustID SELECT [a].[CustName], ISNULL(@UserDefined1,'') as UserDefined1, ISNULL(@UserDefined2,'') as UserDefined2, c.Description as CustType,[a].[MarketID], dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'enforceSimUsage') as EnforceSimUsage, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'logStatistics') as LogStatistics, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'hasLinkSource') as LinkSource, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'RestrictPLinkTitles') as PLinkSelTitles, -- This procedure will no longer return Email that is now stored in AdminAccount table in Authentication database -- ISNULL(@Email, '') as Email, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'allowUnlimitedAlerts') as AllowUnlimitedAlerts, /*03/30/2009 AW Allow Authentication shown if cust has Geo settings in dbo.AuthGeoLocation*/ /* 01/2011 (Release 10.0) AllowGeoLocation information will be coming from AuthenticationManagement service, comment out the geosetting call */ -- case when (select dbo.EAIF_GetCustomerGeoSettings(@CustID,'ISOCountryCode')) is not null then 1 else 0 end as AllowGeoLocation, EASUPPORT.dbo.EAIF_GetCustomerHasExternalSources_92(@CustID) as HasExternalSources, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'allowClustersOnEITIntf') as AllowClustersOnEIT, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'serveStaticFilesFromWebServer') as ServeStaticFilesFromWebServer, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'logPersonalUserLevelTransactions') as LogPersonalUserLevelTransactions, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'numPersUserAccounts') as NumPersUserAccounts, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'enablePersonalUserLevelReporting') as EnablePersonalUserLevelReporting, CASE [a].[CustType] WHEN 'I' then dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'isEPKBMaster') ELSE CASE (SELECT TOP(1) 1 FROM [dbo].[ProfDatabase] pdb JOIN [dbo].[Profile] p ON pdb.ProfNo=p.ProfNo AND p.CustID=@CustID where [pdb].[DbVerNo]=@DbVerNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 )) WHEN 1 THEN dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'isEPKBMaster') ELSE NULL END END AS IsEPKBMaster, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'usesIPWhiteList') as UsesIPWhiteList, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'googleScholarOptOut') as GoogleScholarOptOut, CASE [a].[CustType] WHEN 'I' then dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'ebscoDatabaseOrderIntegration') ELSE CASE (SELECT TOP(1) 1 FROM [dbo].[ProfDatabase] pdb JOIN [dbo].[Profile] p ON pdb.ProfNo=p.ProfNo AND p.CustID=@CustID where [pdb].[DbVerNo]=@DbVerNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 )) WHEN 1 THEN dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'ebscoDatabaseOrderIntegration') ELSE NULL END END as EbscoDatabaseOrderIntegration, CASE [a].[CustType] WHEN 'I' then dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'ebscoEbookAudiobookOrderIntegration') ELSE CASE (SELECT TOP(1) 1 FROM [dbo].[ProfDatabase] pdb JOIN [dbo].[Profile] p ON pdb.ProfNo=p.ProfNo AND p.CustID=@CustID where [pdb].[DbVerNo]=@DbVerNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 )) WHEN 1 THEN dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'ebscoEbookAudiobookOrderIntegration') ELSE NULL END END as EbscoEbookAudiobookOrderIntegration, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'institutionalID') as InstitutionalID FROM dbo.Customer AS a INNER JOIN dbo.CharValueMap AS c ON a.CustType=c.FieldCode WHERE a.CustID=@CustID AND c.FieldName='CustType' END
CREATE PROCEDURE [dbo].[EAIP_GetCfgApplication_151](@AppId varchar(20)) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId EXEC [dbo].[EAUI_GetCfgApplication_70] @AppNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceParamListForAdd_161] ( @InterfaceID varchar(10), @Version varchar(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END SELECT cpl.ParamName, cped.PromptText AS Description, cpl.ParamType, cpl.ParamNo, DisplayLink=case When CPL.ParamType in ('N', 'S', 'B', 'M') Then 1 When CPL.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where CPL.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where CPL.ParamNo=f.ParamNo) then 2 When CPL.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where CPL.ParamNo=f.ParamNo) then 3 Else 0 End FROM [dbo].[CustomParamList] cpl JOIN [dbo].[CustomParamEditDetail] cped ON cpl.ParamNo = cped.ParamNo WHERE cpl.ParamLevel='P' AND cpl.WebClient=1 AND cpl.ParamNo NOT IN (SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] Where [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceParamList].[Version]=@Version) AND cpl.ParentParamNo IS Null AND cpl.ParamNo <> dbo.EAIF_GetCustomParamNumber_70('profOtherSrvLinks','P') ORDER by [cped].[PromptText] SELECT cpl.ParamName,cped.PromptText AS Description, cpl.ParamType, cpl.ParamNo, DisplayLink=case When CPL.ParamType in ('N', 'S', 'B', 'M') Then 1 When CPL.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where CPL.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where CPL.ParamNo=f.ParamNo) then 2 When CPL.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where CPL.ParamNo=f.ParamNo) then 3 Else 0 End FROM [dbo].[InterfaceParamList] ipl JOIN [dbo].[CustomParamList] cpl ON ipl.ParamNo = cpl.ParamNo JOIN [dbo].[CustomParamEditDetail] cped ON cpl.ParamNo = cped.ParamNo Where [ipl].[InterfaceID]=@InterfaceID AND [ipl].[Version]=@Version END
CREATE procedure [dbo].[EAUI_ResetProfileDbLimiterGroupedItemSettings_144]( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LimiterNo int, @ScreenNo int) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @LimiterID varchar(10) SELECT @LimiterID=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo BEGIN TRY BEGIN TRANSACTION Delete [dbo].[ProfDbLimiterDbOrder] Where [dbo].[ProfDbLimiterDbOrder].[ProfNo]=@ProfNo and [dbo].[ProfDbLimiterDbOrder].[LimiterNo]=@LimiterNo and [dbo].[ProfDbLimiterDbOrder].[IntfScreenNo]=@ScreenNo Update [dbo].[ProfDbLimiter2] set [DefValue]=null from [dbo].[ProfDbLimiter2] pl INNER JOIN [dbo].[LimiterList] ll ON pl.LimiterNo=ll.LimiterNo WHERE pl.ProfNo=@ProfNo AND pl.LimiterNo=@LimiterNo AND [pl].[IntfScreenNo]=@ScreenNo AND ll.IsListContentsGrouped = 1 EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP,'Profiles','Reset Database Limiter Group Item Settings to Default', @ProfLogName, @LimiterId,@ScreenNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetColID_70](@ColNo int) RETURNS nvarchar(50) AS BEGIN RETURN (SELECT [dbo].[Collection].[ColID] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0) END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceSearchTheme_83](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20))AS BEGIN DECLARE @Caption nvarchar(255) DECLARE @InterfaceThemeNo int SET @InterfaceThemeNo = 0 SELECT @ThemeID=i.ThemeID, @Caption=ISNULL(ic.Caption , sc.Caption), @InterfaceThemeNo=i.InterfaceThemeNo FROM dbo.InterfaceSearchTheme i LEFT OUTER JOIN dbo.InterfaceSearchThemeCaption ic ON i.InterfaceThemeNo=ic.InterfaceThemeNo AND ic.LangCode='en' INNER JOIN dbo.SearchThemeCaption sc ON i.ThemeID=sc.ThemeID WHERE i.ThemeID=@ThemeID AND i.InterfaceID = @InterfaceID AND i.Version = @Version AND sc.LangCode='en' BEGIN TRANSACTION DELETE dbo.InterfaceSearchTheme FROM dbo.InterfaceSearchTheme it INNER JOIN dbo.EAIF_GetSearchThemeHierarchyTable_83(@ThemeID) ht ON it.ThemeID = ht.ThemeID WHERE it.InterfaceID = @InterfaceID AND it.Version = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID, @UserIP, 'InterfaceSearchTheme','Delete Interface Search Theme', @ThemeID, @Caption,@InterfaceID,@Version COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_DeleteDbFromProfiles_70](@CallerUserID nvarchar(20), @CallerUserIP varchar(15), @PrdOffNo int, @ProductID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ProductID AND [dbo].[DbList].[DbLabel]='live' IF @DbVerNo IS NULL RETURN BEGIN TRANSACTION DECLARE @WRK_Profile TABLE (ProfNo int, CustID varchar(10), GroupID varchar(10), ProfID varchar(10), IncludeInOtherPO bit, AccessEndDate DATETIME) INSERT INTO @WRK_Profile SELECT [p].[ProfNo], p.CustID, p.GroupID, p.ProfID, 0, s.EndDate FROM [dbo].[Profile] AS p INNER JOIN EASUPPORT.dbo.CustSubscription AS s ON p.CustID=s.CustID INNER JOIN EASUPPORT.dbo.ProductInterface AS i ON p.InterfaceID=i.InterfaceID AND p.Version=i.Version WHERE s.PrdOffNo=@PrdOffNo AND i.ProductID=@ProductID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END; /* To retrieve the latest subscription date */ WITH ProfilesWithProduct (ProfNo, AccessEndDate) AS ( SELECT p.ProfNo, CASE WHEN s.Mode = 'S' THEN dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(prd.GracePeriod,90),null,null) ELSE dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) END AS AccessEndDate FROM @WRK_Profile a INNER JOIN dbo.[Profile] p ON a.ProfNo=p.ProfNo INNER JOIN EASUPPORT.dbo.CustSubscription s ON p.CustID=s.CustID INNER JOIN EASUPPORT.dbo.ProductPackage pkg ON s.PrdOffNo=pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface i ON p.InterfaceID=i.InterfaceID AND p.[Version]=i.[Version] INNER JOIN EASUPPORT.dbo.Product prd ON pkg.ProductID=prd.ProductID WHERE s.PrdOffNo <> @PrdOffNo AND pkg.ProductID=@ProductID AND i.ProductID=@ProductID ) UPDATE w SET [w].[IncludeInOtherPO] = 1, [w].[AccessEndDate] = p.AccessEndDate FROM @WRK_Profile w INNER JOIN (SELECT [ProfilesWithProduct].[ProfNo], MAX([ProfilesWithProduct].[AccessEndDate]) AS AccessEndDate FROM ProfilesWithProduct GROUP BY [ProfilesWithProduct].[ProfNo]) p ON p.ProfNo = w.ProfNo; /* Log the ProfNo & DbVerNo deleted from ProfDatabase. */ INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Delete Profile Databases', (a.CustID+'.'+a.GroupID+'.'+a.ProfID), dbl.DbName, NULL, NULL, NULL FROM [dbo].[ProfDatabase] AS pdb INNER JOIN @WRK_Profile AS a ON pdb.ProfNo=a.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON pdb.DbVerNo=dbl.DbVerNo WHERE pdb.DbVerNo=@DbVerNo AND a.IncludeInOtherPO = 0 ORDER BY a.CustID,a.GroupID,a.ProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[ProfDatabase] FROM [dbo].[ProfDatabase] AS pdb INNER JOIN @WRK_Profile AS a ON pdb.ProfNo = a.ProfNo WHERE pdb.DbVerNo = @DbVerNo AND a.IncludeInOtherPO = 0 UPDATE pdb SET pdb.AccessEndDate = w.AccessEndDate FROM [dbo].[ProfDatabase] pdb INNER JOIN @WRK_Profile w ON pdb.ProfNo=w.ProfNo WHERE pdb.DbVerNo=@DbVerNo AND w.IncludeInOtherPO=1; IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @LimiterList varchar(100) SELECT @LimiterList=[EASUPPORT].[dbo].[ProductPackage].[Limiters] FROM EASUPPORT.dbo.ProductPackage where [EASUPPORT].[dbo].[ProductPackage].[PrdOffNo] =@PrdOffNo AND [EASUPPORT].[dbo].[ProductPackage].[ProductID]=@ProductID IF LEN(@LimiterList)>0 BEGIN /*remove hidden profile database limiters from profiles that have an access to the database through other Product Offering*/ /*remove only limiters specific to product Offering that is about to be removed*/ DECLARE @PrdOffID varchar(20) SELECT @PrdOffID=[EASUPPORT].[dbo].[ProductOffering].[PrdOffID] FROM EASUPPORT.dbo.ProductOffering WHERE [EASUPPORT].[dbo].[ProductOffering].[PrdOffNo] = @PrdOffNo CREATE TABLE #WRK_ProfDbLimiter2 (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int) INSERT INTO #WRK_ProfDbLimiter2 SELECT wp.ProfNo, @DbVerNo, ins.IntfScreenNo, ll.LimiterNo FROM @WRK_Profile AS wp INNER JOIN [dbo].[Profile] AS p WITH (INDEX(IX_Profile)) ON wp.ProfNo=p.ProfNo INNER JOIN [dbo].[ProfDatabase] AS pdb ON p.ProfNo = pdb.ProfNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID= ins.InterfaceID AND p.Version = ins.Version INNER JOIN [dbo].[DbLimiter] AS dbl ON pdb.DbVerNo = dbl.DbVerNo INNER JOIN [dbo].[LimiterList] AS ll ON ll.LimiterNo = dbl.LimiterNo INNER JOIN dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a ON ll.LimiterId = a.Item WHERE wp.IncludeInOtherPO=1 AND pdb.DbVerNo = @DbVerNo AND dbo.EAIF_IsLimiterAttachedToOtherCustPO_79(p.CustID,@PrdOffID, @ProductID, ll.LimiterId)=0 DELETE [dbo].[ProfDbLimiter2] FROM #WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[ProfDbLimiter2] AS pdbl ON a.ProfNo = pdbl.ProfNo AND a.DbVerNo = pdbl.DbVerNo AND a.IntfScreenNo = pdbl.IntfScreenNo AND a.LimiterNo = pdbl.LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Remove ProductOffering Limiters for a Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, ins.Description,ll.LimiterId, '' FROM #WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[Profile] AS prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON prf.InterfaceID = ins.InterfaceID AND prf.Version = ins.Version INNER JOIN [dbo].[LimiterList] AS ll ON ll.LimiterNo = a.LimiterNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetProfileParameterDefaultLabel_152] (@ProfNo INT, @ParamName VARCHAR(100)) AS BEGIN DECLARE @Value NVARCHAR(4000) SELECT @Value = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, @ParamName) IF (CharIndex('{libName}', @Value) > 0) BEGIN DECLARE @libName AS NVARCHAR(4000) = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo , 'libName') IF (@libName IS NULL OR @libName = '') BEGIN SET @Value = REPLACE(@Value,'{libName}', '{CustName}') END ELSE BEGIN SET @Value = REPLACE(@Value,'{libName}', @libName) END END IF (CharIndex('{CustName}', @Value) > 0) BEGIN DECLARE @CustName NVARCHAR(255) SELECT @CustName = C.CustName FROM [dbo].[Customer] C INNER JOIN [dbo].[Profile] P ON C.CustID = P.CustID WHERE P.ProfNo = @ProfNo SET @Value = REPLACE(@Value,'{CustName}', @CustName) END SELECT @Value END
Create PROCEDURE [dbo].[EAUI_AddModifyInterfaceVersion_144] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @ClientType varchar(10)='web', @Action varchar(4), @PersLinkURL varchar(255)='', @SupportDbTitles bit=0, @DefProfID varchar(10)='', @DefLangCode varchar(10)='en', @NewWin bit = 0, @AutoAddAuth bit = 1, @AutoAddExp bit = 1, @IsMobile bit = 1, @EncodingType varchar(20), @SignType varchar(20), @EncryptionType varchar(20), @SignatureKey varchar(100), @EncryptionKey varchar(100), @EncodedPart varchar(200), @EncryptedPart varchar(200), @AllowPersonalization bit=1, @AllowPrimaryDatabases bit = 0, @InterfaceType tinyint=0, @PlinkAuthFailureRedirect BIT, @PlinkAuthFailureRedirectURL nvarchar(255)=NULL) AS BEGIN DECLARE @AddMod varchar(25) IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The InterfaceId:"%s" with Version:"%s" already exists.', 16,-1, @InterfaceID, @Version ) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID]=@DefProfID) BEGIN RAISERROR('The default profile ID %s already exists',16,-1,@DefProfID) RETURN END EXEC [dbo].[EAIP_AddInterfaceVersion_144] @InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @InterfaceName, @ClientType, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode, @NewWin, @AutoAddAuth, @AutoAddExp, @IsMobile, @AllowPersonalization, @AllowPrimaryDatabases, @InterfaceType, @PlinkAuthFailureRedirect, @PlinkAuthFailureRedirectURL -- add 'D' type parameters to new interface IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamType]='D' AND ([dbo].[CustomParamList].[ParentParamNo] IS NULL OR [dbo].[CustomParamList].[ParamNo] NOT IN (SELECT DISTINCT(ParentParamNo) FROM [dbo].[CustomParamList])) -- add 'ProfileOrder', 'ProfileDescription' to new interface 5/13/09 INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamName] in ('profileOrder','profileDescription') UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[EncodingType] = @EncodingType, [dbo].[InterfaceVersion].[SignType] = @SignType, [dbo].[InterfaceVersion].[EncryptionType] = @EncryptionType, [dbo].[InterfaceVersion].[SignatureKey] = @SignatureKey, [dbo].[InterfaceVersion].[EncryptionKey] = @EncryptionKey, [dbo].[InterfaceVersion].[EncodedPart] = @EncodedPart, [dbo].[InterfaceVersion].[EncryptedPart] = @EncryptedPart WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Add Version' END ELSE BEGIN DECLARE @AutoAddAuthority_old bit SELECT @AutoAddAuthority_old=[dbo].[InterfaceVersion].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[SiteID] = @SiteID, [dbo].[InterfaceVersion].[SiteURL] = @SiteURL, [dbo].[InterfaceVersion].[PassingMode]= @PassingMode, [dbo].[InterfaceVersion].[PersistentLinkURL]=@PersLinkURL, [dbo].[InterfaceVersion].[SupportDbTitleLists]=@SupportDbTitles, [dbo].[InterfaceVersion].[DefLangCode]=@DefLangCode, [dbo].[InterfaceVersion].[NewWin]=@NewWin, [dbo].[InterfaceVersion].[AutoAddAuthority]=@AutoAddAuth, [dbo].[InterfaceVersion].[AutoAddExpanders]=@AutoAddExp, [dbo].[InterfaceVersion].[IsMobile]=@IsMobile, [dbo].[InterfaceVersion].[EncodingType] = @EncodingType, [dbo].[InterfaceVersion].[SignType] = @SignType, [dbo].[InterfaceVersion].[EncryptionType] = @EncryptionType, [dbo].[InterfaceVersion].[SignatureKey] = @SignatureKey, [dbo].[InterfaceVersion].[EncryptionKey] = @EncryptionKey, [dbo].[InterfaceVersion].[EncodedPart] = @EncodedPart, [dbo].[InterfaceVersion].[EncryptedPart] = @EncryptedPart, [dbo].[InterfaceVersion].[AllowPersonalization]=@AllowPersonalization, [dbo].[InterfaceVersion].[AllowPrimaryDatabases] = @AllowPrimaryDatabases, [dbo].[InterfaceVersion].[InterfaceType]=@InterfaceType, [dbo].[InterfaceVersion].[PlinkAuthFailureRedirect]=@PlinkAuthFailureRedirect, [dbo].[InterfaceVersion].[PlinkAuthFailureRedirectURL]=@PlinkAuthFailureRedirectURL WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Edit Version' IF @AutoAddAuthority_old=0 AND @AutoAddAuth=1 DELETE ia FROM [dbo].[InterfaceDbAuthority] ia INNER JOIN [dbo].[DbList] db ON ia.AuthDbVerNo = db.DbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version AND db.IncludeWhenAutoAdd = 1 END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces',@AddMod, @InterfaceID,@Version,@SiteID, @SiteURL,@PassingMode END
CREATE PROCEDURE [dbo].[EPCS_GetZ3950Targets_70](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') DECLARE @ProfNo int SET @ProfNo=dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) SELECT a.ParamValue FROM [dbo].[CustomParamXmlValues] AS a INNER JOIN [dbo].[Z3950Vendors] AS b ON a.ItemName = CONVERT(varchar(20), b.VendorID) WHERE (a.TargetNo = @ProfNo) AND (a.ParamLevel = 'P') AND (a.ParamNo = @ParamNo) END
CREATE PROCEDURE [dbo].[EACOPY_LogActivityXml_99](@UserId varchar(20), @UserIP varchar(15), @Category varchar(50), @Activity varchar(100), @ActivityXml xml, @ErrorXml xml ) AS BEGIN SET NOCOUNT ON INSERT INTO EASUPPORT.dbo.ActivityLogXml([EASUPPORT].[dbo].[ActivityLogXml].[UserID], [EASUPPORT].[dbo].[ActivityLogXml].[IPAddress], [EASUPPORT].[dbo].[ActivityLogXml].[LogTime], [EASUPPORT].[dbo].[ActivityLogXml].[Category], [EASUPPORT].[dbo].[ActivityLogXml].[Activity], [EASUPPORT].[dbo].[ActivityLogXml].[ActivityXml], [EASUPPORT].[dbo].[ActivityLogXml].[ErrorXml]) VALUES(@UserId, @UserIP, getdate(), @Category, @Activity, @ActivityXml, @ErrorXml) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceTopicListForAdd_77] ( @InterfaceID VARCHAR(10), @Version VARCHAR(10) ) AS BEGIN SELECT distinct tl.TopicNo, tc.Caption+'('+tl.TopicID+')' AS Caption, tc.Caption AS DummyCaption FROM [dbo].[TopicList] tl LEFT OUTER JOIN [dbo].[InterfaceTopic] it ON it.InterfaceID= @InterfaceID AND it.Version=@Version AND tl.TopicNo = it.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo INNER JOIN [dbo].[TopicList] tlc ON tl.TopicNo = tlc.ParentTopicNo WHERE tl.ParentTopicNo is null AND tc.LangCode = 'en' AND it.TopicNo is null ORDER BY Caption END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceList_77](@LangCode varchar(10))AS BEGIN SELECT iv.InterfaceID, iv.Version, il.InterfaceName, il.LinkText, il.HelpText FROM [dbo].[InterfaceVersion] iv LEFT OUTER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version=il.Version AND il.LangCode=@LangCode WHERE iv.InterfaceID<>'all' END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerProfilesInfo_211] (@CustID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX)) AS BEGIN --Select group info EXEC dbo.EAIP_GetCustomerGroupsInfo_231 @CustID, @RequiredGroupParams --Select profile info SELECT p.GroupNo, p.ProfNo, p.ProfID, p.ProfName, p.SeqNo, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP FROM [dbo].[EAIF_GetCustomerProfilesInfo_231](@CustID) AS p ORDER BY p.GroupNo, p.SeqNo, p.ProfID END
CREATE PROCEDURE [dbo].[EAUI_GetExternalSourceDbList_92]( @DbLabel varchar(10), @SourceType char(1)) AS BEGIN /* SourceType for external source would be 'M' always */ SELECT l.DbVerNo, CASE l.DisplayName WHEN N'' THEN N'...' ELSE l.DisplayName END AS DisplayName, l.DbName, l.DbLabel, e.ExternalDbID AS ExternalSourceID, CASE e.Free WHEN 0 THEN 'Paid' WHEN 1 THEN 'Free' END AS FreeInd, COUNT([cedbl].[CustNo]) AS UsageCount FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedbl ON l.DbVerNo=cedbl.DbVerNo WHERE l.SourceType = @SourceType AND l.DbLabel = @DbLabel GROUP BY l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, e.ExternalDbID, e.Free ORDER BY DisplayName END
/*======================================================================================= Developer: Anne Wan Create date: 3/18/2008 Description: Initialize Access End Date in EAMASTER.dbo.ProfDatabase Update history: 9/4/2008 AW adjusted procedure to process a selected number of rows per run exec EAIP_UpdateAccessEndDate_91 ========================================================================================*/ CREATE procedure [dbo].[EAIP_UpdateAccessEndDate_91] as begin set nocount on declare @ErrorMessage varchar(60) set @ErrorMessage = 'Error!Please go to job history log at ' + cast(getdate() as varchar) /*To process a number of rows per run & Output statement*/ declare @RowsToProcess table(CustID varchar(10), DbVerNo int, Mode char(1), EndDate datetime, AccessEndDate datetime) insert into @RowsToProcess select top 500000 --3000 [EASUPPORT].[dbo].[CustSubProfDatabase].[CustID],[EASUPPORT].[dbo].[CustSubProfDatabase].[DbVerNo],[EASUPPORT].[dbo].[CustSubProfDatabase].[Mode],[EASUPPORT].[dbo].[CustSubProfDatabase].[EndDate],[EASUPPORT].[dbo].[CustSubProfDatabase].[AccessEndDate] from EASUPPORT.dbo.CustSubProfDatabase where [EASUPPORT].[dbo].[CustSubProfDatabase].[Processed] = 0 /*To hold AED updated rows in memory & confirm processing status back to table*/ declare @RowsHaveAEDUpdated table(ProfNo int, DbVerNo int, Mode char(1), AccessEndDate datetime) /*Update AccessEndDate on EAMASTER.dbo.ProfDatabase*/ if (select count(CustID) from @RowsToProcess) > 0 begin begin transaction update [dbo].[ProfDatabase] set [AccessEndDate] = cpd.AccessEndDate output inserted.ProfNo, inserted.DbVerNo, inserted.Mode, inserted.AccessEndDate into @RowsHaveAEDUpdated from [dbo].[ProfDatabase] pd JOIN @RowsToProcess cpd ON pd.DbVerNo = cpd.DbVerNo JOIN [dbo].[Profile] prof ON prof.ProfNo = pd.ProfNo where pd.AccessEndDate is null and pd.Mode in ('s','t') and cpd.CustID = prof.CustID if @@Error = 0 begin commit transaction update EASUPPORT.dbo.CustSubProfDatabase set [Processed] = 1, --Processed regardless of AED being updated or not [LastUpdated]=getdate() from EASUPPORT.dbo.CustSubProfDatabase cpd JOIN @RowsToProcess pr ON cpd.CustID = pr.CustID AND cpd.DbVerNo = pr.DbVerNo AND cpd.Mode = pr.Mode AND cpd.EndDate = pr.EndDate where cpd.Processed = 0 /*Execute once*/ if (select count(CustID) from @RowsToProcess) < 500000 --3000 update EASUPPORT.dbo.CustSubProfDatabase set [ExecutionMessage] = 'Finished at ' + convert(varchar, getdate(),100) --Last subset updated from EASUPPORT.dbo.CustSubProfDatabase cpd JOIN @RowsToProcess pr ON cpd.CustID = pr.CustID AND cpd.DbVerNo = pr.DbVerNo AND cpd.Mode = pr.Mode AND cpd.EndDate = pr.EndDate where cpd.Processed = 1 if (select count(ProfNo) from @RowsHaveAEDUpdated) > 0 update EASUPPORT.dbo.CustSubProfDatabase set [ExecutionMessage] = 'S' --Success. AED updated by the process from EASUPPORT.dbo.CustSubProfDatabase cpd JOIN [dbo].[Profile] prof ON cpd.CustID = prof.CustID JOIN @RowsHaveAEDUpdated upd ON prof.ProfNo = upd.ProfNo AND cpd.DbVerNo = upd.DbVerNo AND cpd.Mode = upd.Mode AND cpd.AccessEndDate = upd.AccessEndDate where cpd.Processed = 1 declare @RowCnt int set @RowCnt = (select count(CustID) from @RowsToProcess) print 'There are ' + cast(@RowCnt as varchar) + ' sets of CustID/DbVerNo processed at this running' end else if (@@Trancount > 0) begin rollback transaction update EASUPPORT.dbo.CustSubProfDatabase set [ExecutionMessage] = @ErrorMessage from EASUPPORT.dbo.CustSubProfDatabase cpd JOIN @RowsToProcess pr ON cpd.CustID = pr.CustID AND cpd.DbVerNo = pr.DbVerNo AND cpd.Mode = pr.Mode AND cpd.EndDate = pr.EndDate where cpd.Processed <> 1 end end set nocount off end
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileAndPwd_76] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ProfName nvarchar(100), @MarketID varchar(20), @DbLabel varchar(10), @DefLangCode varchar(10), @Pwd varchar(10), @URL nvarchar(255)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) IF @DbLabel IS NULL OR @DbLabel='' SET @DbLabel='live' DECLARE @SiteURL varchar(255) SELECT @SiteURL=LTRIM(RTRIM(iv.SiteURL)) FROM [dbo].[Profile] p INNER JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version WHERE p.ProfNo=@ProfNo SELECT @URL=LTRIM(RTRIM(@URL)) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Profile/Pwd', @ProfLogName, @ProfName, @MarketID, @DbLabel,@DefLangCode IF LOWER(@SiteURL)=LOWER(@URL) OR @URL='' SET @URL = null UPDATE [dbo].[Profile] SET [dbo].[Profile].[ProfName] = @ProfName, [dbo].[Profile].[MarketID] = @MarketID, [dbo].[Profile].[DbLabel]=@DBLabel, [dbo].[Profile].[DefLangCode]=@DefLangCode, [dbo].[Profile].[ProfPwd]=@Pwd, [dbo].[Profile].[URL]=@URL WHERE [dbo].[Profile].[ProfNo] = @ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_MakeUrlSecure_86(@URL varchar(255), @UseHttps char(1)) RETURNS varchar(255) AS BEGIN IF @UseHttps='1' SET @URL= REPLACE(@URL,'http://','https://') RETURN @URL END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerSubscriptionInterfaceList_70](@CustID varchar(10)) AS BEGIN SELECT il.InterfaceName, il.InterfaceID, il.Version, i.ClientType FROM dbo.InterfaceLanguage il INNER JOIN dbo.Interface i ON il.InterfaceID = i.InterfaceID INNER JOIN (SELECT distinct [pi].[InterfaceID], [pi].[Version] FROM EASUPPORT.dbo.CustSubscription cs INNER JOIN EASUPPORT.dbo.ProductPackage pp ON cs.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface pi ON pp.ProductID = pi.ProductID WHERE cs.CustID = @CustID) s ON il.InterfaceID = s.InterfaceID AND il.Version = s.Version WHERE il.LangCode = 'en' ORDER BY il.InterfaceName END
CREATE PROCEDURE [dbo].[EAIP_GetCfgAppParam_151](@AppId varchar(20), @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END SELECT @ParamNo=p.ParamNo FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName EXEC [dbo].[EAUI_GetCfgAppParam_70] @ParamNo END
CREATE PROCEDURE dbo.EAIP_GetInterfacePrimaryAddDatabaseList_161 (@InterfaceID varchar(10), @Version varchar(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END DECLARE @AllowPrimaryDatabases BIT SET @AllowPrimaryDatabases = (SELECT [dbo].[InterfaceVersion].[AllowPrimaryDatabases] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID and [dbo].[InterfaceVersion].[Version] =@Version) IF @AllowPrimaryDatabases = 0 BEGIN RAISERROR('"Allow Primary Databases" option is disabled for the given Interface-Version: %s-%s, hence no databases can be attached', 16,-1, @InterfaceID, @Version ) RETURN END SELECT CAST(a.DbVerNo AS VARCHAR(10)) AS DbverNo, a.DisplayName + N'(' + CONVERT(NVARCHAR(10), a.DbName) + N')' as DisplayName, 0 as Selected FROM [dbo].[DbList] a Left outer join [dbo].[InterfacePrimaryDatabases] s on (s.InterfaceID=@InterfaceID and s.Version=@Version and s.DbVerNo=a.DbVerNo) Where a.DbType = 1 AND a.SourceType='D' and a.DbLabel='live' and s.DbVerNo is null /* Restrict the list to Regular EP databases, 'live' label and not already configured as the interface primary database */ Order by a.DisplayName END
CREATE procedure [dbo].[EAUI_ResetProfileDbLimiterGroupedItemSettings_912]( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LimiterNo int) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @LimiterID varchar(10) SELECT @LimiterID=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo BEGIN TRY BEGIN TRANSACTION Delete [dbo].[ProfDbLimiterDbOrder] Where [dbo].[ProfDbLimiterDbOrder].[ProfNo]=@ProfNo and [dbo].[ProfDbLimiterDbOrder].[LimiterNo]=@LimiterNo Update [dbo].[ProfDbLimiter2] set [DefValue]=null from [dbo].[ProfDbLimiter2] pl INNER JOIN [dbo].[LimiterList] ll ON pl.LimiterNo=ll.LimiterNo WHERE pl.ProfNo=@ProfNo AND pl.LimiterNo=@LimiterNo AND ll.IsListContentsGrouped = 1 EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Reset Database Limiter Group Item Settings to Default', @ProfLogName, @LimiterId COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetColName_70](@ColNo int, @CustID varchar(10), @ColID nvarchar(50)) RETURNS nvarchar(100) AS BEGIN /* Return CollectName from ColNo or by CustId-ColId combo */ DECLARE @ColName nvarchar(100) IF @ColNo>0 BEGIN SELECT @ColName=[dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 END ELSE BEGIN SELECT @ColName=[dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 END RETURN @ColName END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceToolbarItem_77] (@UserID nvarchar(20),@UserIP varchar(30), @IntfToolbarItem int)AS BEGIN DECLARE @ItemName varchar(10) DECLARE @Interface varchar(30) SELECT @Interface=[dbo].[InterfaceToolbar].[InterfaceID]+','+[dbo].[InterfaceToolbar].[Version], @ItemName=[dbo].[InterfaceToolbar].[ItemName] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem BEGIN TRANSACTION DELETE [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Delete ToolbarItem', @Interface ,@ItemName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_DeleteDbParamScalarValue_70](@DbVerNo int,@ParamNo int) AS BEGIN DELETE FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAUI_GetProfileParamGlobalDefaults_132] (@ProfNo int, @ParamName varchar(100)) AS BEGIN -- Return the global defaults for the input profile parameter SELECT b.ParamNo ,e.ParamName ,b.PromptText ,b.HelpText ,b.EditSubGroup ,b.EditControl ,b.ValueTemplate ,ISNULL(ISNULL(d.ParamValue,e.DefValue),0) AS Value ,case when (Select [cpsv].[ParamValue] from [dbo].[CustomParamScalarValues] cpsv where [cpsv].[TargetNo]=@ProfNo and [cpsv].[ParamLevel] = 'P' and cpsv.ParamNo=b.ParamNo) is null then 1 else 0 end as IsDefault ,e.ParamType ,ISNULL(b.ProcInfo,'') AS ProcInfo ,0 AS HasChildParams ,b.SeqNo ,ISNULL(b.HintText,'') AS HintText ,'0' AS HasXmlFields ,b.HierarchyDisplayOptions ,IsNull(e.DefValuePrefix,N'') as DefValuePrefix FROM [dbo].[CustomParamList] e JOIN [dbo].[CustomParamEditDetail] b ON b.ParamNo=e.ParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = @ProfNo AND d.ParamLevel = 'P' AND d.ParamNo = e.ParamNo WHERE e.ParamName=@ParamName END
--sql content merged from file: \StoredProcedures\EAUI_AddModifyInterfaceVersion_70.sql CREATE PROCEDURE [dbo].[EAUI_AddModifyInterfaceVersion_70] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @ClientType varchar(10)='web', @Action varchar(4), @PersLinkURL varchar(255)='', @SupportDbTitles bit=0, @DefProfID varchar(10)='', @DefLangCode varchar(10)='en', @NewWin bit = 0, @AutoAddAuth bit = 1, @AutoAddExp bit = 1, @IsMobile bit = 1, @AllowPersonalization bit=1) AS BEGIN DECLARE @AddMod varchar(25) IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The InterfaceId:"%s" with Version:"%s" already exists.', 16,-1, @InterfaceID, @Version ) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID]=@DefProfID) BEGIN RAISERROR('The default profile ID %s already exists',16,-1,@DefProfID) RETURN END EXEC [dbo].[EAIP_AddInterfaceVersion_70] @InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @InterfaceName, @ClientType, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode, @NewWin, @AutoAddAuth, @AutoAddExp, @IsMobile, @AllowPersonalization -- add 'D' type parameters to new interface IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamType]='D' -- add 'ProfileOrder', 'ProfileDescription' to new interface 5/13/09 INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamName] in ('profileOrder','profileDescription') SET @AddMod = 'Add Version' END ELSE BEGIN DECLARE @AutoAddAuthority_old bit SELECT @AutoAddAuthority_old=[dbo].[InterfaceVersion].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[SiteID] = @SiteID, [dbo].[InterfaceVersion].[SiteURL] = @SiteURL, [dbo].[InterfaceVersion].[PassingMode]= @PassingMode, [dbo].[InterfaceVersion].[PersistentLinkURL]=@PersLinkURL, [dbo].[InterfaceVersion].[SupportDbTitleLists]=@SupportDbTitles, [dbo].[InterfaceVersion].[DefLangCode]=@DefLangCode, [dbo].[InterfaceVersion].[NewWin]=@NewWin, [dbo].[InterfaceVersion].[AutoAddAuthority]=@AutoAddAuth, [dbo].[InterfaceVersion].[AutoAddExpanders]=@AutoAddExp, [dbo].[InterfaceVersion].[IsMobile]=@IsMobile, [dbo].[InterfaceVersion].[AllowPersonalization]=@AllowPersonalization WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Edit Version' IF @AutoAddAuthority_old=0 AND @AutoAddAuth=1 DELETE ia FROM [dbo].[InterfaceDbAuthority] ia INNER JOIN [dbo].[DbList] db ON ia.AuthDbVerNo = db.DbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version AND db.IncludeWhenAutoAdd = 1 END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces',@AddMod, @InterfaceID,@Version,@SiteID, @SiteURL,@PassingMode END
CREATE PROCEDURE [dbo].[EPCS_GetZ3950VendorDetails_70] (@VendorID int)AS BEGIN SELECT [dbo].[Z3950Vendors].[VendorID], [dbo].[Z3950Vendors].[VendorName], [dbo].[Z3950Vendors].[CallType], [dbo].[Z3950Vendors].[SearchMask], [dbo].[Z3950Vendors].[XSL] FROM [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=@VendorID END
CREATE PROCEDURE [dbo].[EAIP_AddCfgAppParam_70]( @AppNo int, @ParamName varchar(100), @ParamType char, @PromptText varchar(255), @HelpText varchar(255), @EditGroup varchar(100), @SeqNo int, @EditLevel int, @EditControl varchar(50), @ValueTemplate nvarchar(1000), @ProcInfo varchar(1000), @ParamValue nvarchar(2000), @ItemName varchar(100), @ParamXMLValue nvarchar(max)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ApplicationNo]=@AppNo AND [dbo].[ConfigParamList].[ParamName]=@ParamName) BEGIN RAISERROR('The Parameter (%s) already exists', 16,-1, @ParamName ) RETURN END BEGIN TRANSACTION INSERT INTO [dbo].[ConfigParamList] ( [dbo].[ConfigParamList].[ApplicationNo], [dbo].[ConfigParamList].[ParamName], [dbo].[ConfigParamList].[ParamType]) VALUES ( @AppNo, @ParamName, @ParamType) IF (@@ERROR <> 0) BEGIN RAISERROR('Inserting Into ConfigParamList Failed For Parameter "%s".',16,-1,@ParamName) ROLLBACK TRANSACTION RETURN END DECLARE @ParamNo int SELECT @ParamNo = [dbo].[ConfigParamList].[ParamNo] FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ApplicationNo]=@AppNo AND [dbo].[ConfigParamList].[ParamName]=@ParamName IF @ParamType = 'X' INSERT INTO [dbo].[ConfigParamXmlValues]( [dbo].[ConfigParamXmlValues].[TargetNo], [dbo].[ConfigParamXmlValues].[ParamLevel], [dbo].[ConfigParamXmlValues].[ParamNo], [dbo].[ConfigParamXmlValues].[ItemName], [dbo].[ConfigParamXmlValues].[ParamValue]) VALUES ( @AppNo, 'A', @ParamNo, @ItemName, @ParamXMLValue) ELSE INSERT INTO [dbo].[ConfigParamScalarValues] ( [dbo].[ConfigParamScalarValues].[TargetNo], [dbo].[ConfigParamScalarValues].[ParamLevel], [dbo].[ConfigParamScalarValues].[ParamNo], [dbo].[ConfigParamScalarValues].[ParamValue]) VALUES ( @AppNo, 'A', @ParamNo, @ParamValue) IF (@@ERROR <> 0) BEGIN RAISERROR('Inserting Into ConfigParamScalarValues Failed For Parameter "%s".',16,-1,@ParamName) ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[ConfigParamEditDetail] ( [dbo].[ConfigParamEditDetail].[ParamNo], [dbo].[ConfigParamEditDetail].[PromptText], [dbo].[ConfigParamEditDetail].[HelpText], [dbo].[ConfigParamEditDetail].[EditGroup], [dbo].[ConfigParamEditDetail].[SeqNo], [dbo].[ConfigParamEditDetail].[EditLevel], [dbo].[ConfigParamEditDetail].[EditControl], [dbo].[ConfigParamEditDetail].[ValueTemplate], [dbo].[ConfigParamEditDetail].[ProcInfo]) VALUES ( @ParamNo, @PromptText, @HelpText, @EditGroup, @SeqNo, @EditLevel, @EditControl, @ValueTemplate, @ProcInfo) IF (@@ERROR <> 0) BEGIN RAISERROR('Inserting Into ConfigParamEditDetail Failed For Parameter "%s".',16,-1,@ParamName) ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_GetInterfaceVersion_70.sql CREATE PROCEDURE [dbo].[EAUI_GetInterfaceVersion_70] ( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT a.SiteID, a.SiteURL, a.PassingMode, b.InterfaceName, c.ClientType, a.PersistentLinkURL, SupportDbTitleLists = CASE When a.SupportDbTitleLists=1 THEN '1' ELSE '0' end, a.DefProfID, a.DefLangCode, a.NewWin, a.AutoAddAuthority, a.AutoAddExpanders, a.IsMobile, a.AllowPersonalization, a.AllowPrimaryDatabases, a.InterfaceType FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID=b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[Interface] c ON a.InterfaceID=c.InterfaceID WHERE a.InterfaceID=@InterfaceID AND a.Version=@Version AND b.LangCode='en' END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceMultiDbAuthorities_90](@InterfaceID varchar(10), @Version varchar(10),@langCode varchar(10))AS BEGIN SELECT [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId], [dbo].[MultiDbAuthInterfaceCaption].[LinkText], [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText] FROM [dbo].[MultiDbAuthInterfaceCaption] WHERE [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceID AND [dbo].[MultiDbAuthInterfaceCaption].[Version] =@Version AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode]=@langCode END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerProfilesInfoByDbGroupId_231] ( @CustID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX), @DbGroupID VARCHAR(MAX), @DbLabel VARCHAR(10) ) AS BEGIN EXEC [dbo].[EAIP_GetCustomerGroupsInfo_231] @CustID, @RequiredGroupParams; DECLARE @CurrentDate DATETIME = GETDATE(); IF EXISTS(SELECT 1 FROM [dbo].[GroupList] WHERE GroupID = @DbGroupID) BEGIN SELECT p.GroupNo, p.ProfNo, p.ProfID, p.ProfName, p.SeqNo, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP FROM [dbo].[EAIF_GetCustomerProfilesInfo_231](@CustID) AS p WHERE EXISTS ( SELECT 1 FROM [dbo].[GroupList] gl INNER JOIN [dbo].[DbGroup] dbg ON gl.GroupNo = dbg.GroupNo INNER JOIN [dbo].[DbList] AS dbl ON dbg.DbVerNo = dbl.DbVerNo INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo = pd.ProfNo and pd.DbVerNo = dbl.DbVerNo WHERE gl.GroupID = @DbGroupID AND dbl.DbLabel = @DbLabel AND (pd.[AccessEndDate] >= @CurrentDate OR pd.[AccessEndDate] IS NULL) AND pd.Enable = 1 ) ORDER BY p.GroupNo, p.SeqNo, p.ProfID END ELSE BEGIN DECLARE @CustGroupNo INT = TRY_CONVERT(INT, @DbGroupID) SELECT p.GroupNo, p.ProfNo, p.ProfID, p.ProfName, p.SeqNo, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP FROM [dbo].[EAIF_GetCustomerProfilesInfo_231](@CustID) as p WHERE exists ( SELECT 1 FROM [dbo].[ProfCustGroupList] pcgl INNER JOIN [dbo].[ProfCustGroupDb] pcdbg ON pcgl.GroupNo = pcdbg.GroupNo and pcgl.ProfNo = p.ProfNo INNER JOIN [dbo].[ProfDatabase] AS pd ON pcdbg.DbVerNo = pd.DbVerNo and p.ProfNo = pd.ProfNo WHERE pcgl.GroupNo = @CustGroupNo and (pd.[AccessEndDate] >= @CurrentDate OR pd.[AccessEndDate] IS NULL) AND pd.Enable = 1 ) ORDER BY p.GroupNo, p.SeqNo, p.ProfID END END
CREATE PROCEDURE [dbo].[EAUI_GetExternalSourceListBrowseByDbName_102](@DbLabel varchar(10), @DbName varchar(10),@SourceType char(1)) AS BEGIN SELECT l.DbVerNo, DisplayName= case l.DisplayName when N'' Then N'...' else l.DisplayName End, l.DbName, l.DbLabel, ExternalSourceID= case e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, ISNULL(e.VendorName,N'') as Vendor, ISNULL(e.ConnectorType,'') as ConnectorType, ISNULL(d.ParamValue,N'') as ResourceType, FreeInd=case e.Free when '0' then 'Paid' when '1' then 'Free' end, Count([cedbl].[CustNo]) as UsageCount, ISNULL(e.ConnectorProvider,'') as ConnectorProvider FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamList] pl ON pl.ParamName='ResourceType' LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON (d.DbVerNo=l.DbVerNo AND d.ParamNo = pl.ParamNo) Left Outer Join [dbo].[CustExternalDbList] cedbl on l.DbVerNo=cedbl.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse on (muse.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData on (indexData.DbVerNo = l.DbVerNo) WHERE l.DbLabel = @DbLabel AND l.DbName Like @DbName + '%' AND l.SourceType = @SourceType group by l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, case e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, e.VendorName, e.ConnectorType, e.ConnectorProvider, e.Free, d.ParamValue ORDER BY l.DbName END
--sql content merged from file: \StoredProcedures\EAIP_UpdateAdminBuildLog_912.sql CREATE PROCEDURE [dbo].[EAIP_UpdateAdminBuildLog_912] (@ParamName varchar(100), @AdminBuildVersion varchar (100),@LogNotes varchar(100)) AS BEGIN DECLARE @adminBuildNum varchar (100) IF (@AdminBuildVersion is null or @AdminBuildVersion = '') SELECT @adminBuildNum = [dbo].[AdminState].[ParamValue] FROM dbo.AdminState WHERE [dbo].[AdminState].[ParamName]=@ParamName ELSE SELECT @adminBuildNum = @AdminBuildVersion INSERT INTO [dbo].[AdminBuildLog] VALUES (@adminBuildNum, GETDATE(),@LogNotes); END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileBranging_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @Branding varchar(20) ) AS BEGIN DECLARE @ParamBrandingNo int SELECT @ParamBrandingNo = dbo.EAIF_GetCustomParamNumber_70('profBranding','P') DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles', 'Modify Branding for a Profile',@ProfLogName,@Branding IF @Branding='None' EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @ProfNo, 'P', @ParamBrandingNo ELSE EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @ProfNo, 'P', @ParamBrandingNo, @Branding COMMIT TRANSACTION END
Create Function [dbo].[EAIF_MergeGlobalAndInterfaceDbFeatureValues_103](@InterfaceDocHandle int, @InterfaceDbFeatureValue xml, @GlobalDocHandle int, @GlobalFeatureValue xml) returns xml as Begin Declare @newxml nvarchar(max) select @newxml='' --get merged values for elements without a lang attribute select @newxml=@newxml + [a].[FieldValueXml] from (select a.type, a.name, a.lang, N''+ ISNULL(b.value, a.value) + ' ' as FieldValueXml from (select * from OPENXML(@GlobalDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is null) a left outer join (select * from OPENXML(@InterfaceDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is null) b on a.name=b.name union -- get merged values for elements with a lang attribute where the Global value has been set for a given lang -- if exists get the Interface level value for that lang - get the Global level otherwise Select a.type, a.name, a.lang, N''+ ISNULL(b.value, a.value) + ' ' as FieldValueXml from (select * from OPENXML(@GlobalDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) a left outer join (select * from OPENXML(@InterfaceDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) b on a.name=b.name and a.lang=b.lang union -- get merged values for elements where the Global value has not been set for a given lang, but the Interface level for that lang has been set select b.type, b.name, b.lang, Case when b.lang IS NULL then N''+ b.value + ' ' else N''+ b.value + ' ' end as FieldValueXml from (select * from OPENXML(@GlobalDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) a right outer join (select * from OPENXML(@InterfaceDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) b on a.name=b.name and a.lang=b.lang where a.name is null) a declare @test int set @test=Convert(xml,@newxml).exist('/field') if @test=1 set @newxml=N'' + @newxml + N' ' else set @newxml=null return @newxml End
CREATE PROCEDURE [dbo].[EAUI_GetCustomerType_70] (@CustID varchar(10)) AS BEGIN SELECT [dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAIP_GetCfgAppServerList_151](@AppId varchar(20)) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId EXEC [dbo].[EAUI_GetCfgAppServerList_70] @AppNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfacePrimaryDatabasesList_103](@InterfaceID varchar(10), @Version varchar(10)) AS /** procedure is used by EACopy **/ BEGIN SELECT ip.InterfaceID, ip.Version, d.DbName, d.DbLabel, ip.SeqNo FROM [dbo].[InterfacePrimaryDatabases] ip Inner Join [dbo].[DbList] d on (ip.DbVerNo=d.DbVerNo) WHERE ip.InterfaceID=@InterfaceID AND ip.Version =@Version END
CREATE PROCEDURE [dbo].[EAUI_ResetProfileDbLimiters_133]( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNo int, @ScreenNo INT, @ExcludeContentTypeList NVARCHAR(max) ) AS BEGIN BEGIN TRANSACTION DECLARE @ContentTable TABLE (Description NVARCHAR(50)) DECLARE @DbName varchar(10), @ProfLogName varchar(32) SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SELECT @ProfLogName = dbo.EAIF_GetProfDottedName_70(@ProfNo) INSERT @ContentTable SELECT * FROM dbo.EAIF_GetItemTable_70(@ExcludeContentTypeList, ',') -- for eds profiles @DbVerNo will be -1. --restrict the delete to limiter(s) with IsListContentsGrouped = 0. These limiter customization exist -- on the same table ProfDbLimiter2. DELETE [dbo].[ProfDbLimiter2] FROM [dbo].[ProfDbLimiter2] pl JOIN [dbo].[LimiterList] ll ON pl.LimiterNo=ll.LimiterNo AND ll.BitFlag1=0 JOIN [dbo].[DbList] dbl ON pl.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType LEFT OUTER JOIN @ContentTable ct ON dbcl.Description=ct.Description WHERE pl.ProfNo=@ProfNo AND (pl.DbVerNo = @DbVerNo OR @DbVerNo < 0) AND IntfScreenNo=@ScreenNo and ll.IsListContentsGrouped = 0 AND ct.Description IS null -- reset the values for the limiter entries not removed. Update [dbo].[ProfDbLimiter2] set [SeqNo]=null, [Show]=1 From [dbo].[ProfDbLimiter2] pl JOIN [dbo].[LimiterList] ll ON pl.LimiterNo=ll.LimiterNo AND ll.BitFlag1=0 JOIN [dbo].[DbList] dbl ON pl.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType LEFT OUTER JOIN @ContentTable ct ON dbcl.Description=ct.Description WHERE pl.ProfNo=@ProfNo AND (pl.DbVerNo = @DbVerNo OR @DbVerNo < 0) AND IntfScreenNo=@ScreenNo and ll.IsListContentsGrouped = 1 AND ct.Description IS null -- Remove the customized caption for limiter with IsListContentsGrouped = 1. Delete [dbo].[ProfDbLimiterCaption2] from [dbo].[ProfDbLimiterCaption2] pc JOIN [dbo].[LimiterList] ll ON pc.LimiterNo=ll.LimiterNo AND ll.BitFlag1=0 JOIN [dbo].[DbList] dbl ON pc.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType LEFT OUTER JOIN @ContentTable ct ON dbcl.Description=ct.Description WHERE pc.ProfNo=@ProfNo AND (pc.DbVerNo = @DbVerNo OR @DbVerNo < 0) AND IntfScreenNo=@ScreenNo and ll.IsListContentsGrouped = 1 AND ct.Description IS null if @DbVerNo=-1 Begin Delete [dbo].[ProfMDbLimitersExternalSource] where [dbo].[ProfMDbLimitersExternalSource].[ProfNo]=@ProfNo and [dbo].[ProfMDbLimitersExternalSource].[IntfScreenNo]=@ScreenNo Delete [dbo].[ProfMDbLimitersExternalSourceCaption] where [dbo].[ProfMDbLimitersExternalSourceCaption].[ProfNo]=@ProfNo and [dbo].[ProfMDbLimitersExternalSourceCaption].[IntfScreenNo]=@ScreenNo End EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Reset Database Limiters to Default', @ProfLogName, @DbName COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetColNo_70](@CustID varchar(10),@ColID nvarchar(50)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0) END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceVersion_70](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN IF @Version = 'live' BEGIN IF EXISTS(SELECT 1 FROM dbo.Profile WHERE [dbo].[Profile].[InterfaceID]=@InterfaceID AND [dbo].[Profile].[Version]=@Version) BEGIN RAISERROR('You can not delete a live interface when there are active profiles',16,-1) RETURN END END BEGIN TRANSACTION DELETE a FROM dbo.CustomParamScalarValues a INNER JOIN dbo.Profile b ON a.TargetNo = b.ProfNo Where a.ParamLevel='P' AND b.InterfaceID=@InterfaceID AND b.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE a FROM dbo.CustomParamXmlValues a INNER JOIN dbo.Profile b ON a.TargetNo = b.ProfNo Where a.ParamLevel='P' AND b.InterfaceID=@InterfaceID AND b.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE From dbo.Profile WHERE [dbo].[Profile].[InterfaceID]=@InterfaceID AND [dbo].[Profile].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM dbo.CustomParamDefaults Where [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM dbo.InterfaceVersion Where [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID, @UserIP, 'Interfaces', 'Delete a Version', @InterfaceID, @Version COMMIT TRANSACTION END
-- delete the entire DbRTACInfo row for the given database CREATE PROCEDURE [dbo].[EAIP_DeleteDbRTACInfo_101] (@DbVerNo int) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; DELETE FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetProfileParamList_70] AS BEGIN SELECT b.ParamNo, b.ParamName, c.Description AS ParamType, d.PromptText FROM [dbo].[CustomParamList] b LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo WHERE b.ParamLevel = 'P' AND b.ParamType<>'D' ORDER BY d.PromptText END
CREATE PROCEDURE [dbo].[EAUI_AddModLangList_102](@UserID nvarchar(20), @UserIP varchar(15), @LangCode varchar(10), @Description nvarchar(50), @AddEdit varchar(4), @UpdateInterfaces int = 0) AS BEGIN DECLARE @UpdateInt varchar(100) SET @UpdateInt='' DECLARE @SeqNo int IF @UpdateInterfaces=1 SET @UpdateInt='All Interface languages Updated' IF @AddEdit='Add' BEGIN IF EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode) BEGIN RAISERROR('Language Code: %s, already exists.',16, -1, @LangCode) RETURN END BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Languages', 'Add LangCode', @LangCode, @UpdateInt IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SELECT @SeqNo = MAX([dbo].[LangList].[SeqNo])+1 FROM [dbo].[LangList] INSERT INTO [dbo].[LangList]([dbo].[LangList].[LangCode], [dbo].[LangList].[Description], [dbo].[LangList].[SeqNo]) VALUES(@LangCode, @Description, @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @UpdateInterfaces=1 INSERT INTO [dbo].[InterfaceUserLangList]([dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version],[dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName],[dbo].[InterfaceUserLangList].[SeqNo]) SELECT distinct [dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version], @LangCode,@Description,@SeqNo FROM [dbo].[InterfaceUserLangList] IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END ELSE BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Languages', 'Edit Language description', @LangCode, @Description, @UpdateInt IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[LangList] SET [dbo].[LangList].[Description]=@Description WHERE [dbo].[LangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @UpdateInterfaces=1 BEGIN -- update linked interfaces UPDATE [dbo].[InterfaceUserLangList] SET [dbo].[InterfaceUserLangList].[LangDisplayName]=@Description WHERE [dbo].[InterfaceUserLangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --JIRA 2548: Update Language Lists for all Interfaces' will not work after the language has been created -- add the missing links JIRA 2548 -- retrieve the existing SeqNo SELECT @SeqNo = [dbo].[LangList].[SeqNo] FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode -- stuff in the missing records INSERT INTO [dbo].[InterfaceUserLangList]([dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version],[dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName],[dbo].[InterfaceUserLangList].[SeqNo]) SELECT distinct [dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version], @LangCode,@Description,@SeqNo FROM [dbo].[InterfaceUserLangList] WHERE NOT ([dbo].[InterfaceUserLangList].[InterfaceID] in (SELECT [dbo].[InterfaceUserLangList].[InterfaceID] FROM [dbo].[InterfaceUserLangList] where [dbo].[InterfaceUserLangList].[LangCode] = @LangCode)) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- end JIRA 2548 END COMMIT TRANSACTION END END
CREATE PROCEDURE [dbo].[EPCS_GetZ3950VendorForms_70](@VendorID int) AS BEGIN SELECT [dbo].[Z3950Forms].[VendorID], [dbo].[Z3950Forms].[FormID], [dbo].[Z3950Forms].[FormText] FROM [dbo].[Z3950Forms] WHERE [dbo].[Z3950Forms].[VendorID]=@VendorID END
--sql content merged from file: \StoredProcedures\EAIP_AddCustExternalDbList_92.sql Create Procedure [dbo].[EAIP_AddCustExternalDbList_92] @CustID varchar(10), @DbList varchar(max) as Begin Declare @CustNo int Select @CustNo=[dbo].[Customer].[CustNo] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID Begin Try Begin Transaction Delete [dbo].[CustExternalDbList] where [dbo].[CustExternalDbList].[CustNo]=@CustNo and [dbo].[CustExternalDbList].[DbVerNo] not in (select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName] in (Select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@DbList, ','))) Insert [dbo].[CustExternalDbList]([b].[CustNo],[b].[DbVerNo]) Select @CustNo, a.DbVerNo from (select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName] in (Select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@DbList, ','))) a left outer join [dbo].[CustExternalDbList] b on a.DbVerNo=b.DbVerNo where b.DbVerNo is null Commit Transaction End Try Begin catch Rollback Transaction End catch End
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceVersion_99] ( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN -- get the number of primary databases, if any DECLARE @PrimaryDbCount INT SET @PrimaryDbCount = (SELECT COUNT(1) FROM [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID] = @InterfaceID and [dbo].[InterfacePrimaryDatabases].[Version] =@Version) SELECT a.SiteID, a.SiteURL, a.PassingMode, b.InterfaceName, c.ClientType, a.PersistentLinkURL, a.SupportDbTitleLists, a.DefProfID, a.DefLangCode, a.NewWin, a.AutoAddAuthority, a.AutoAddExpanders, a.IsMobile, a.EncodingType, a.SignType, a.EncryptionType, a.SignatureKey, a.EncryptionKey, a.EncodedPart, a.EncryptedPart, a.AllowPersonalization, a.AllowPrimaryDatabases, @PrimaryDbCount AS PrimaryDbCount, a.InterfaceType, a.PlinkAuthFailureRedirect, a.PlinkAuthFailureRedirectURL, a.HideInterface, a.MD5TokenSalt FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID=b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[Interface] c ON a.InterfaceID=c.InterfaceID WHERE a.InterfaceID=@InterfaceID AND a.Version=@Version AND b.LangCode='en' END
Create Procedure [dbo].[EATL_GetInterfaceMultiDbSTS_90] @InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10) as Select [imdbl].[MultiDbSTSID], [imdbc].[Caption], [imdbc].[MouseOverText] from [dbo].[InterfaceMultiDbSTSCaption] imdbc join [dbo].[InterfaceMultiDbSTSList] imdbl On imdbc.IntfMultiDbSTSNo=imdbl.IntfMultiDbSTSNo where [imdbl].[InterfaceID]=@InterfaceID and [imdbl].[Version]=@Version and [imdbc].[LangCode]=@LangCode
CREATE PROCEDURE [dbo].[EPCS_GetCustomerProfilesInfoByDbNames_231] ( @CustID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX), @DbNamesJson VARCHAR(MAX) ) AS BEGIN EXEC [dbo].[EAIP_GetCustomerGroupsInfo_231] @CustID, @RequiredGroupParams; DECLARE @Dbs AS TABLE (DbVerNo INT); INSERT INTO @Dbs SELECT dl.DbVerNo FROM [dbo].[DbList] AS dl INNER JOIN OPENJSON(@DbNamesJson) WITH ( DbName VARCHAR(10) '$.DbName', DbLabel VARCHAR(10) '$.DbLabel' ) AS dn ON dl.DbName = dn.DbName AND dl.DbLabel = dn.DbLabel; DECLARE @DbCnt INT; SELECT @DbCnt = COUNT(*) FROM @Dbs; DECLARE @CurrentDate DATETIME = GETDATE(); SELECT * FROM ( SELECT p.GroupNo, p.ProfNo, p.ProfID, p.ProfName, p.SeqNo, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP, ROW_NUMBER() OVER ( PARTITION BY p.GroupNo, p.ProfNo ORDER BY p.GroupNo, p.ProfNo ) AS RowNum FROM [dbo].[EAIF_GetCustomerProfilesInfo_231](@CustID) AS p INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo = pd.ProfNo INNER JOIN @Dbs AS db ON pd.DbVerNo = db.DbVerNo WHERE (pd.[AccessEndDate] >= @CurrentDate OR pd.[AccessEndDate] IS NULL) AND pd.Enable = 1 ) a WHERE RowNum = @DbCnt ORDER BY GroupNo, SeqNo, ProfID END
--sql content merged from file: \StoredProcedures\EAUI_GetExternalSourceListBrowseByDbName_92.sql CREATE PROCEDURE [dbo].[EAUI_GetExternalSourceListBrowseByDbName_92](@DbLabel varchar(10), @DbName varchar(10),@SourceType char(1)) AS BEGIN SELECT l.DbVerNo, DisplayName= case l.DisplayName when N'' Then N'...' else l.DisplayName End, --l.DisplayName, l.DbName, l.DbLabel, e.ExternalDbID as ExternalSourceID, ISNULL(e.VendorName,N'') as Vendor, ISNULL(e.ConnectorType,'') as ConnectorType, ISNULL(d.ParamValue,N'') as ResourceType, FreeInd=case e.Free when '0' then 'Paid' when '1' then 'Free' end, Count([cedbl].[CustNo]) as UsageCount FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamList] pl ON pl.ParamName='ResourceType' LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON (d.DbVerNo=l.DbVerNo AND d.ParamNo = pl.ParamNo) Left Outer Join [dbo].[CustExternalDbList] cedbl on l.DbVerNo=cedbl.DbVerNo WHERE l.DbLabel = @DbLabel AND l.DbName Like @DbName + '%' AND l.SourceType = @SourceType group by l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, e.ExternalDbID, e.VendorName, e.ConnectorType, e.Free, d.ParamValue ORDER BY l.DbName END
--sql content merged from file: \StoredProcedures\EAIP_UpdateCatalogSeed_97.sql Create Procedure [dbo].[EAIP_UpdateCatalogSeed_97] as Begin Declare @Seed varchar(6) Declare @Char char(1) Declare @NewSeed int Declare @ID varchar(4) declare @DbNameParamNo int Declare @SeedParamNo int Declare @IDParamNo int Declare @AppNo int Declare @DbName varchar(10) Declare @Found bit Select @AppNo=[dbo].[ConfigApplication].[ApplicationNo] from [dbo].[ConfigApplication] where [dbo].[ConfigApplication].[ApplicationID]='eadmin' select @DbNameParamNo=[dbo].[ConfigParamList].[ParamNo] from [dbo].[ConfigParamList] where [dbo].[ConfigParamList].[ApplicationNo]=@AppNo and [dbo].[ConfigParamList].[ParamName]='databaseServer' select @SeedParamNo=[dbo].[ConfigParamList].[ParamNo] from [dbo].[ConfigParamList] where [dbo].[ConfigParamList].[ApplicationNo]=@AppNo and [dbo].[ConfigParamList].[ParamName]='catalogSeed' select @IDParamNo=[dbo].[ConfigParamList].[ParamNo] from [dbo].[ConfigParamList] where [dbo].[ConfigParamList].[ApplicationNo]=@AppNo and [dbo].[ConfigParamList].[ParamName]='databaseServerID' Select @Seed=[dbo].[ConfigParamScalarValues].[ParamValue] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@SeedParamNo and [dbo].[ConfigParamScalarValues].[TargetNo] in (Select [dbo].[ConfigParamScalarValues].[TargetNo] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@DbNameParamNo and [dbo].[ConfigParamScalarValues].[ParamValue]=@@ServerName) if @Seed is null Begin set @Found=0 Select @Seed=[dbo].[ConfigParamScalarValues].[ParamValue] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@SeedParamNo and [dbo].[ConfigParamScalarValues].[TargetNo]=@AppNo End Set @NewSeed=Convert(int,Left(@Seed,Len(@Seed)-1))+1 Set @Char=Right(@Seed,1) if @NewSeed>99999 Begin set @NewSeed=1 set @Char=char(ascii(@Char)+1) End set @Seed=Convert(varchar(5), @NewSeed) Set @Seed=Replicate('0',5-len(@Seed))+@Seed+@Char if @Found=0 Update [dbo].[ConfigParamScalarValues] set [dbo].[ConfigParamScalarValues].[ParamValue]=@Seed where [dbo].[ConfigParamScalarValues].[ParamNo]=@SeedParamNo and [dbo].[ConfigParamScalarValues].[TargetNo]=@AppNo else Update [dbo].[ConfigParamScalarValues] set [dbo].[ConfigParamScalarValues].[ParamValue]=@Seed where [dbo].[ConfigParamScalarValues].[ParamNo]=@SeedParamNo and [dbo].[ConfigParamScalarValues].[TargetNo] in (Select [dbo].[ConfigParamScalarValues].[TargetNo] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@DbNameParamNo and [dbo].[ConfigParamScalarValues].[ParamValue]=@@ServerName) End
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileBrowseOption_76](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @DbVerNo int, @ScreenNo int, @OptionNo int, @Show int, @SeqNo int) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbName varchar(30) SELECT @DbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @ScreenDescr nvarchar(255) SELECT @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[BrowseOptionList].[BrowseOptionId] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionNo]=@OptionNo BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[ProfDbBrowseOption] WHERE [dbo].[ProfDbBrowseOption].[ProfNo]=@ProfNo AND [dbo].[ProfDbBrowseOption].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbBrowseOption].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbBrowseOption].[BrowseOptionNo]=@OptionNo) UPDATE [dbo].[ProfDbBrowseOption] SET [dbo].[ProfDbBrowseOption].[Show]=@Show, [dbo].[ProfDbBrowseOption].[SeqNo]=@SeqNo WHERE [dbo].[ProfDbBrowseOption].[ProfNo]=@ProfNo AND [dbo].[ProfDbBrowseOption].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbBrowseOption].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbBrowseOption].[BrowseOptionNo]=@OptionNo ELSE INSERT INTO [dbo].[ProfDbBrowseOption] ([dbo].[ProfDbBrowseOption].[ProfNo],[dbo].[ProfDbBrowseOption].[DbVerNo],[dbo].[ProfDbBrowseOption].[IntfScreenNo],[dbo].[ProfDbBrowseOption].[BrowseOptionNo],[dbo].[ProfDbBrowseOption].[Show],[dbo].[ProfDbBrowseOption].[SeqNo]) VALUES (@ProfNo,@DbVerNo,@ScreenNo,@OptionNo,@Show,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'BrowseOptions','Modify Profile Browse Option', @ProfLogName, @DbName ,@ScreenDescr, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_OLD_GetProfNo_70](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomLinkItemNameProfileLSMenu_70](@ItemName varchar(255) ) AS BEGIN SELECT b.TargetNo as ProfNo, b.ParamValue FROM dbo.CustomParamXmlValues a INNER JOIN dbo.CustomParamXmlValues b ON a.TargetNo = b.TargetNo WHERE a.ItemName = @ItemName AND a.ParamLevel = 'P' AND b.ParamLevel = 'P' AND b.ParamNo = dbo.EAIF_GetCustomParamNumber_70('linkSourceMenu', 'P') END
CREATE PROCEDURE [dbo].[EAIP_GetCustomerDatabaseList_164] (@CustID varchar(10)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[Consortium]=1 AND [dbo].[Customer].[CustID]=@CustID) BEGIN EXEC [dbo].[EAUI_GetConsortiumLiveDatabaseList_70] @CustID END ELSE BEGIN EXEC [dbo].[EAUI_GetCustomerLiveDatabaseList_70] @CustID END END
CREATE PROCEDURE dbo.EAIP_GetInterfacePrimaryDatabasesList_161 (@InterfaceID varchar(10),@Version varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END DECLARE @AllowPrimaryDatabases BIT SET @AllowPrimaryDatabases = (SELECT [dbo].[InterfaceVersion].[AllowPrimaryDatabases] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID and [dbo].[InterfaceVersion].[Version] =@Version) IF @AllowPrimaryDatabases = 0 BEGIN RAISERROR('"Allow Primary Databases" option is disabled for the given Interface-Version: %s-%s', 16,-1, @InterfaceID, @Version ) RETURN END SELECT CAST(a.DbVerNo AS VARCHAR(10)) AS DbverNo, a.DisplayName + N'(' + CONVERT(NVARCHAR(10), a.DbName) + N')' as DisplayName, ISNULL(s.SeqNo,1) as SeqNo FROM [dbo].[DbList] a inner join [dbo].[InterfacePrimaryDatabases] s on (s.InterfaceID=@InterfaceID and s.Version=@Version and s.DbVerNo=a.DbVerNo) Order by SeqNo, DisplayName END
CREATE PROCEDURE [dbo].[EAUI_ResetProfileDbLimiters_76]( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DBVerNo int ) AS BEGIN BEGIN TRANSACTION DECLARE @DbName varchar(10), @ProfLogName varchar(32) SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DBVerNo SELECT @ProfLogName = dbo.EAIF_GetProfDottedName_70(@ProfNo) DELETE [dbo].[ProfDbLimiter2] FROM [dbo].[ProfDbLimiter2] pl INNER JOIN [dbo].[LimiterList] ll ON pl.LimiterNo=ll.LimiterNo WHERE pl.ProfNo=@ProfNo AND pl.DbVerNo = @DBVerNo AND ll.BitFlag1=0 EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Reset Database Limiters to Default', @ProfLogName, @DbName COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetConfigApplicationID_70](@AppNo int) RETURNS varchar(20) AS BEGIN RETURN( SELECT [dbo].[ConfigApplication].[ApplicationID] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationNo]=@AppNo ) END
--ALTER PROCEDURE EAUI_DeleteInternalCustomer_100 CREATE PROCEDURE [dbo].[EAUI_DeleteInternalCustomer_100](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10)) AS BEGIN -- To be called from DAO from service components, component should also call authentication to delete -- AdminUser/PersonalUser that was done in EAIP_DeleteSupportCustomer_100 when cust type is internal or partner -- IF (@CustType = 'I' OR @CustType = 'P')DELETE AdminUser WHERE Affiliation = @CustID IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID) BEGIN DECLARE @CustType char(1) SELECT @CustType = [dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID IF (@CustType = 'I' OR @CustType = 'P') BEGIN EXEC EASUPPORT.dbo.EAIP_DeleteSupportCustomer_100 @CustID EXEC [dbo].[EAIP_DeleteMasterCustomer_100] @CustID EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Internal Customer & Partners', 'Delete Internal or Partner Customer', @CustID END ELSE BEGIN RAISERROR('The CustID "%s" is not Internal or Partner', 16, -1, @CustID) RETURN END END ELSE BEGIN RAISERROR('The CustID "%s" does not exist.', 16, -1, @CustID) RETURN END END
CREATE PROCEDURE [dbo].[EAIP_DeleteGroupParamScalarValue_70](@CustID varchar(10), @GroupID varchar(10), @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo int DECLARE @GroupNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName, 'G') SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID,@GroupID) EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @GroupNo, 'G', @ParamNo END
CREATE PROCEDURE [dbo].[EAUI_GetProfileParamsDescription_86]( @ProfNos varchar(8000) ) AS SELECT [dbo].[CustomParamList].[ParamNo], [dbo].[CustomParamList].[ParamName], cped.EditControl FROM [dbo].[CustomParamList] INNER JOIN dbo.EAIF_GetItemTable_70(@ProfNos, ',') P ON [dbo].[CustomParamList].[ParamNo] = P.Item JOIN dbo.CustomParamEditDetail cped ON P.Item=cped.ParamNo
CREATE PROCEDURE [dbo].[EAUI_AddModLangList_70](@UserID nvarchar(20), @UserIP varchar(15), @LangCode varchar(10), @Description nvarchar(50), @AddEdit varchar(4), @UpdateInterfaces int = 0) AS BEGIN DECLARE @UpdateInt varchar(100) SET @UpdateInt='' IF @UpdateInterfaces=1 SET @UpdateInt='All Interface languages Updated' IF @AddEdit='Add' BEGIN IF EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode) BEGIN RAISERROR('Language Code: %s, already exists.',16, -1, @LangCode) RETURN END BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Languages', 'Add LangCode', @LangCode, @UpdateInt IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @SeqNo int /** Get Next SeqNo Number for this new Language **/ SELECT @SeqNo=MAX([dbo].[LangList].[SeqNo])+1 FROM [dbo].[LangList] IF @SeqNo IS NULL SET @SeqNo=1 INSERT INTO [dbo].[LangList]([dbo].[LangList].[LangCode], [dbo].[LangList].[Description], [dbo].[LangList].[SeqNo]) VALUES(@LangCode, @Description, @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @UpdateInterfaces=1 INSERT INTO [dbo].[InterfaceUserLangList]([dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version],[dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName],[dbo].[InterfaceUserLangList].[SeqNo]) SELECT distinct [dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version], @LangCode,@Description,@SeqNo FROM [dbo].[InterfaceUserLangList] IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END ELSE BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Languages', 'Edit Language description', @LangCode, @Description, @UpdateInt IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[LangList] SET [dbo].[LangList].[Description]=@Description WHERE [dbo].[LangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @UpdateInterfaces=1 UPDATE [dbo].[InterfaceUserLangList] SET [dbo].[InterfaceUserLangList].[LangDisplayName]=@Description WHERE [dbo].[InterfaceUserLangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END END
--sql content merged from file: \StoredProcedures\EPCS_IsProfColorsUpdated_97.sql CREATE Procedure dbo.EPCS_IsProfColorsUpdated_97 ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10) ) AS BEGIN IF EXISTS ( SELECT 1 FROM [dbo].[Profile] AS pr INNER JOIN [dbo].[CustomParamScalarValues] AS v ON pr.ProfNo=v.TargetNo INNER JOIN [dbo].[CustomParamList] AS c ON v.ParamNo=c.ParamNo INNER JOIN [dbo].[CustomParamList] AS p ON c.ParentParamNo=p.ParamNo WHERE pr.CustID=@CustID AND pr.GroupID= @GroupID AND pr.ProfID=@ProfID AND v.ParamLevel='P' AND p.ParamName='brandCustColors') SELECT 1 ELSE SELECT 0 END
CREATE PROCEDURE [dbo].[EAIP_AddCustomerContentFilters_181](@CustID varchar(10), @ContentFilterIdList varchar(max), @UserID NVARCHAR(20), @UserIP VARCHAR(15)) AS BEGIN DECLARE @WRK_Table TABLE (ContentFilterId varchar(25)) DECLARE @WRK_InsertedCustContentFilterNo TABLE (CustContentFilterNo int, CustId varchar(10)) INSERT INTO @WRK_Table (ContentFilterId) SELECT a.Item FROM dbo.EAIF_GetItemTable_70(@ContentFilterIdList, ',') a BEGIN TRY BEGIN TRANSACTION -- Add / link ContentFilter(s) to Customer INSERT INTO [dbo].[CustContentFilters]([ccf].[ContentFilterNo],[ccf].[CustID]) OUTPUT INSERTED.CustContentFilterNo,INSERTED.CustID INTO @WRK_InsertedCustContentFilterNo SELECT c.ContentFilterNo,@CustID FROM @WRK_Table w JOIN dbo.ContentFilterList c on c.ContentFilterListID=w.ContentFilterId LEFT OUTER JOIN [dbo].[CustContentFilters] ccf ON ccf.CustID = @CustID AND ccf.ContentFilterNo=c.ContentFilterNo WHERE ccf.CustID is NULL --- Enable (Set Default = 'On') ContentFilters on all Customer profiles INSERT INTO dbo.ProfContentFilters ([pf].[ProfNo],[pf].[IntfScreenNo],[pf].[CustContentFilterNo],[pf].[DefValue]) Select p.ProfNo,s.IntfScreenNo,w.CustContentFilterNo,'On' FROM [dbo].[Profile] p join [dbo].[InterfaceScreen] s ON s.InterfaceID=p.InterfaceID AND s.Version=p.Version Join @WRK_InsertedCustContentFilterNo w ON w.CustId=p.CustID LEFT OUTER JOIN [dbo].[ProfContentFilters] pf ON pf.ProfNo = p.ProfNo AND pf.IntfScreenNo=s.IntfScreenNo AND pf.CustContentFilterNo=w.CustContentFilterNo Where p.CustID=@CustID AND pf.ProfNo IS NULL INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomerContentFilter', 'Add ContentFilter for the Customer /Profile', @CustID, w.ContentFilterId,'','','' FROM @WRK_Table w ORDER BY 1 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceVersionsList_70](@InterfaceID varchar(10), @InterfaceName nvarchar(255),@NotIncludeVersion varchar(10)) AS BEGIN SELECT a.InterfaceID, a.Version, b.InterfaceName FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version WHERE b.LangCode = 'en' AND a.InterfaceID = @InterfaceID AND b.InterfaceName = @InterfaceName AND a.Version<>@NotIncludeVersion END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceSearchThemes_83](@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10))AS BEGIN SELECT DISTINCT ist.ThemeID, itc.Caption, itc.ImageAltText FROM [dbo].[InterfaceSearchTheme] ist INNER JOIN [dbo].[InterfaceSearchThemeCaption] itc ON ist.InterfaceThemeNo = itc.InterfaceThemeNo WHERE ist.InterfaceID = @InterfaceID AND ist.Version = @Version AND itc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerProxyDetails_70]( @ProxyID varchar(255)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = @ProxyID END
CREATE PROCEDURE [dbo].[EAUI_GetExternalSourceListBrowseByDisplayName_102](@DbLabel varchar(10), @DisplayName nvarchar(200), @SourceType char(1)) AS BEGIN SELECT l.DbVerNo, DisplayName= case l.DisplayName when N'' Then N'...' else l.DisplayName End, --l.DisplayName, l.DbName, l.DbLabel, ExternalSourceID= CASE e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, e.ExternalDbID as ExternalSourceID, ISNULL(e.ConnectorProvider,'') as ConnectorProvider, ISNULL(e.VendorName,N'') as Vendor, ISNULL(e.ConnectorType,'') as ConnectorType, ISNULL(d.ParamValue,N'') as ResourceType, FreeInd=case e.Free when '0' then 'Paid' when '1' then 'Free' end, Count([cedbl].[CustNo]) as UsageCount FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamList] pl ON (pl.ParamName='ResourceType' ) LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON (d.DbVerNo=l.DbVerNo AND d.ParamNo = pl.ParamNo) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedbl on (l.DbVerNo=cedbl.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse on (muse.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData on (indexData.DbVerNo = l.DbVerNo) WHERE l.DbLabel = @DbLabel AND l.DisplayName Like @DisplayName + N'%' AND ((l.SourceType = @SourceType) or (@SourceType='')) group by l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, CASE e.ConnectorProvider WHEN 'M' THEN muse.ExternalDbID WHEN 'I' THEN indexData.ExternalDbID END, e.ExternalDbID, e.VendorName, e.ConnectorType, e.ConnectorProvider, e.Free, d.ParamValue ORDER BY l.DbName END
CREATE PROCEDURE [dbo].[EAIP_UpdateCfgAppParam_70]( @ParamNo int, @ParamName varchar(100), @ParamType char, @PromptText varchar(255), @HelpText varchar(255), @EditGroup varchar(100), @SeqNo int, @EditLevel int, @EditControl varchar(50), @ValueTemplate nvarchar(1000), @ProcInfo varchar(1000), @ParamValue nvarchar(2000), @ItemName varchar(100), @ParamXMLValue nvarchar(max)) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[ConfigParamList] SET [dbo].[ConfigParamList].[ParamName] = @ParamName, [dbo].[ConfigParamList].[ParamType] = @ParamType WHERE [dbo].[ConfigParamList].[ParamNo] = @ParamNo IF (@@ERROR <> 0) BEGIN RAISERROR('Updating ConfigParamList Failed For Parameter "%s".',16,-1, @ParamName) ROLLBACK TRANSACTION RETURN END IF @ParamType = 'X' UPDATE [dbo].[ConfigParamXmlValues] SET [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName, [dbo].[ConfigParamXmlValues].[ParamValue] = @ParamXMLValue WHERE [dbo].[ConfigParamXmlValues].[ParamLevel] = 'A' AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo ELSE UPDATE [dbo].[ConfigParamScalarValues] SET [dbo].[ConfigParamScalarValues].[ParamValue] = LTRIM(RTRIM( REPLACE(@ParamValue, (CHAR(13)+CHAR(10)), N'') )) WHERE [dbo].[ConfigParamScalarValues].[ParamLevel] = 'A' AND [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo IF (@@ERROR <> 0) BEGIN RAISERROR('Updating ConfigParamScalarValues Failed For Parameter "%s".',16,-1,@ParamName) ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[ConfigParamEditDetail] WHERE [dbo].[ConfigParamEditDetail].[ParamNo] = @ParamNo) UPDATE [dbo].[ConfigParamEditDetail] SET [dbo].[ConfigParamEditDetail].[PromptText] = @PromptText, [dbo].[ConfigParamEditDetail].[HelpText] = @HelpText, [dbo].[ConfigParamEditDetail].[EditGroup] = @EditGroup, [dbo].[ConfigParamEditDetail].[SeqNo] = @SeqNo, [dbo].[ConfigParamEditDetail].[EditLevel] = @EditLevel, [dbo].[ConfigParamEditDetail].[EditControl] = @EditControl, [dbo].[ConfigParamEditDetail].[ValueTemplate] = @ValueTemplate, [dbo].[ConfigParamEditDetail].[ProcInfo] = @ProcInfo WHERE [dbo].[ConfigParamEditDetail].[ParamNo] = @ParamNo ELSE INSERT INTO [dbo].[ConfigParamEditDetail] ( [dbo].[ConfigParamEditDetail].[ParamNo], [dbo].[ConfigParamEditDetail].[PromptText], [dbo].[ConfigParamEditDetail].[HelpText], [dbo].[ConfigParamEditDetail].[EditGroup], [dbo].[ConfigParamEditDetail].[SeqNo], [dbo].[ConfigParamEditDetail].[EditLevel], [dbo].[ConfigParamEditDetail].[EditControl], [dbo].[ConfigParamEditDetail].[ValueTemplate], [dbo].[ConfigParamEditDetail].[ProcInfo]) VALUES ( @ParamNo, @PromptText, @HelpText, @EditGroup, @SeqNo, @EditLevel, @EditControl, @ValueTemplate, @ProcInfo) IF (@@ERROR <> 0) BEGIN RAISERROR('Updating ConfigParamEditDetail Failed For Parameter "%s".',16,-1,@ParamName) ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileCluster_80.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileCluster_80] (@UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @ClustNo int, @Show bit, @SeqNo int, @DefaultToOpen bit=0, @LangCode varchar(10), @Caption nvarchar(255))AS BEGIN declare @GlobalCaption nvarchar(255) select @GlobalCaption=[gcc].[Caption] from [dbo].[GlobalClusterCaption] gcc join [dbo].[ClusterList] cl on gcc.ID=cl.ClustId and gcc.LangCode=@LangCode where [cl].[ClustNo]=@ClustNo -- EADM-3245, if @GlobalCaption is NULL then the comparison @Caption<>@GlobalCaption returns true and -- the logic passes through to the delete and the caption never gets written SET @GlobalCaption = ISNULL(@GlobalCaption, '') Begin Try Begin Transaction IF EXISTS (SELECT 1 FROM [dbo].[ProfileClusters2] WHERE [dbo].[ProfileClusters2].[ProfNo]=@ProfNo AND [dbo].[ProfileClusters2].[ClustNo]=@ClustNo) UPDATE [dbo].[ProfileClusters2] SET [dbo].[ProfileClusters2].[Show]=@Show, [dbo].[ProfileClusters2].[SeqNo]=@SeqNo, [dbo].[ProfileClusters2].[DefaultToOpen]=@DefaultToOpen WHERE [dbo].[ProfileClusters2].[ProfNo]=@ProfNo AND [dbo].[ProfileClusters2].[ClustNo]=@ClustNo ELSE INSERT INTO [dbo].[ProfileClusters2] ([dbo].[ProfileClusters2].[ProfNo], [dbo].[ProfileClusters2].[ClustNo], [dbo].[ProfileClusters2].[Show], [dbo].[ProfileClusters2].[SeqNo], [dbo].[ProfileClusters2].[DefaultToOpen]) VALUES (@ProfNo, @ClustNo, @Show, @SeqNo, @DefaultToOpen) if @Caption<>@GlobalCaption Begin if exists (select 1 from [dbo].[ProfileClusterCaptions] where [dbo].[ProfileClusterCaptions].[ProfNo]=@ProfNo and [dbo].[ProfileClusterCaptions].[ClustNo]=@ClustNo and [dbo].[ProfileClusterCaptions].[LangCode]=@LangCode) update [dbo].[ProfileClusterCaptions] set [dbo].[ProfileClusterCaptions].[Caption]=@Caption where [dbo].[ProfileClusterCaptions].[ProfNo]=@ProfNo and [dbo].[ProfileClusterCaptions].[ClustNo]=@ClustNo and [dbo].[ProfileClusterCaptions].[LangCode]=@LangCode else insert [dbo].[ProfileClusterCaptions] ([dbo].[ProfileClusterCaptions].[ProfNo], [dbo].[ProfileClusterCaptions].[ClustNo], [dbo].[ProfileClusterCaptions].[LangCode], [dbo].[ProfileClusterCaptions].[Caption]) Values (@ProfNo, @ClustNo, @LangCode, @Caption) end else begin delete [dbo].[ProfileClusterCaptions] where [dbo].[ProfileClusterCaptions].[ProfNo]=@ProfNo and [dbo].[ProfileClusterCaptions].[ClustNo]=@ClustNo and [dbo].[ProfileClusterCaptions].[LangCode]=@LangCode end DECLARE @LoggingProfile varchar(30) SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Update Profile Cluster',@LoggingProfile, @ClustNo, @LangCode COMMIT TRANSACTION End Try Begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch END
CREATE FUNCTION [dbo].[EAIF_PasswordDecrypt_70](@StrPass varchar(100)) RETURNS varchar(50) AS BEGIN DECLARE @RevStrPass varchar(100) DECLARE @RetPass varchar(50) DECLARE @RetVal varchar(50) DECLARE @sBuf varchar(2) DECLARE @cBuf char(1) DECLARE @iBuf int DECLARE @StrLength int DECLARE @StrPos int DECLARE @iTranspose int IF @StrPass='' BEGIN SET @RetVal='' END ELSE BEGIN SET @RevStrPass =REVERSE(@StrPass) SET @StrLength =DATALENGTH(@StrPass) SET @StrPos =3 SET @RetPass='' WHILE(@StrPos < @StrLength) BEGIN SET @sBuf =SUBSTRING(@RevStrPass,@StrPos,2) SET @cBuf =SUBSTRING(@sBuf,1,1) IF(@cBuf >= '#' AND @cBuf <= '/') BEGIN SET @iBuf =ASCII(SUBSTRING(@sBuf,2,1)) END ELSE BEGIN SET @iBuf = dbo.EAIF_BinToInt_70(@sBuf) END SET @iTranspose =@iBuf/16+(@iBuf%16)*16 SET @StrPos =@StrPos+2 SET @RetPass =@RetPass+CHAR(@iTranspose) END SET @RetVal=LTRIM(@RetPass) END RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamDetails_70](@ParamNo int, @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT cpl.ParamType, --isnull(icped.PromptText, cped.PromptText) PromptText, cped.EditControl EditControl, isnull(icped.ValueTemplate, cped.ValueTemplate) ValueTemplate, cpl.AllowDefaultUpdate cped.PromptText, cped.EditControl EditControl, cped.ValueTemplate ValueTemplate, cpl.AllowDefaultUpdate FROM [dbo].[CustomParamList] cpl left outer Join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo=cped.ParamNo --left outer Join InterfaceCustomParamEditDetail icped --on cpl.ParamNo=icped.ParamNo --And icped.InterfaceID=@InterfaceID and icped.Version=@Version where cpl.ParamNo=@ParamNo END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamTblInterfaceFieldValues_161] (@ParamNo int, @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @LangCode varchar(10) )AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo) SET @LangCode='' ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode) SET @LangCode='en' SELECT @LangCode AS LangCode EXEC [dbo].[EAUI_GetCustomParamTblInterfaceFieldValues_90] @ParamNo, @InterfaceID, @Version, @MarketID, @LangCode END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceScreenDetails_161] ( @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ScreenID VARCHAR(10) ) AS IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID and [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID and [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @ScreenID, @InterfaceID, @Version) RETURN END BEGIN SELECT * FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID and [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version END
CREATE PROCEDURE [dbo].[EAUI_ResetProfileExpanders_70]( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int ) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[ProfExpander] WHERE [dbo].[ProfExpander].[ProfNo]=@ProfNo DECLARE @ProfLogName varchar(32) SELECT @ProfLogName = dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Reset Expanders for a Profile', @ProfLogName COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetConfigApplicationNo_70](@ApplicationID varchar(20)) RETURNS int AS BEGIN RETURN( SELECT [dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteLangList_70]( @UserID nvarchar(20), @UserIP varchar(15), @LangCode varchar(10)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefLangCode]=@LangCode) BEGIN RAISERROR('Language Code: %s is used as default interface language and can not be deleted',16, -1, @LangCode) RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Languages','Delete Language Code', @LangCode DELETE [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode END
CREATE PROCEDURE [dbo].[EAIP_DeleteIndividualSubscriberProfSettings_164] ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @ProductIDList VARCHAR(MAX) ) AS ---------------------------------------------------------------------------------------- -- Delete products from profile in product list -- Delete profile if there are no longer and products associated ---------------------------------------------------------------------------------------- BEGIN SET XACT_ABORT ON; SET NOCOUNT ON; -- List of databases from dblist which need to be removed DECLARE @dblist TABLE (DbVerNo INT); DECLARE @ProfNo INT; SET @ProfNo = (SELECT [dbo].[Profile].[ProfNo] FROM dbo.[Profile] WITH(NOLOCK) WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID); -- list of products which are to be removed from the profile INSERT INTO @dblist (DbVerNo) SELECT d.DbVerNo FROM dbo.EAIF_GetItemTable_70(@ProductIDList,',') p INNER JOIN dbo.DbList d WITH(NOLOCK) ON d.DbName = p.Item WHERE d.DbLabel = 'live'; BEGIN TRY BEGIN TRANSACTION; -- delete databases for selected products DELETE FROM dbo.ProfDatabase WHERE [dbo].[ProfDatabase].[ProfNo] = @ProfNo AND EXISTS(SELECT 1 FROM @dblist l WHERE l.DbVerNo = dbo.ProfDatabase.DbVerNo); -- delete profile if no products exist IF NOT EXISTS(SELECT 1 FROM dbo.ProfDatabase WHERE [dbo].[ProfDatabase].[ProfNo] = @ProfNo) BEGIN DELETE FROM dbo.CustomParamScalarValues WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P'; DELETE FROM dbo.CustomParamXmlValues WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P'; DELETE FROM dbo.[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo; END; COMMIT TRANSACTION; END TRY BEGIN CATCH IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION; DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE(); DECLARE @ErrorSeverity INT = ERROR_SEVERITY(); DECLARE @ErrorState INT = ERROR_STATE(); RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END;
CREATE PROCEDURE [dbo].[EAUI_GetProfileParentLinkList_70](@SiteID varchar(10), @ProfNo int) AS BEGIN DECLARE @CustParamNo int DECLARE @ProfParamNo int SELECT @CustParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') DECLARE @DefSeqNo smallint SELECT @DefSeqNo=0 SELECT a.CustID , b.ItemName , b.ParamValue ,@DefSeqNo As SeqNo FROM ( SELECT a.CustID, a.CustNo FROM [dbo].[Customer] a WHERE [a].[CustID] = @SiteID UNION SELECT a.CustID, a.CustNo FROM [dbo].[CustomerGroup] g INNER JOIN [dbo].[Customer] a ON g.ParentID = a.CustID WHERE g.ChildID = @SiteID ) a JOIN [dbo].[CustomParamXmlValues] b ON a.CustNo=b.TargetNo AND b.ParamLevel='C' AND b.ParamNo=@CustParamNo AND b.ItemName NOT IN (SELECT [dbo].[CustomParamXmlValues].[ItemName] From [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ProfParamNo AND [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo) END
CREATE PROCEDURE [dbo].[EAUI_AddProfCustFeatureItem_102](@UserID nvarchar(20), @UserIP varchar(30),@ProfNo int, @InterfaceFeatureNo int, @FieldsXML nvarchar(max))AS BEGIN DECLARE @FeatureName varchar(50) DECLARE @FieldsXML2 XML SET @FieldsXML2=CAST(@FieldsXML as XML) DECLARE @itemNo int DECLARE @iSeqNo int -- Interface SeqNo DECLARE @dSeqNo int -- Interface default customized at profile level (Item type :D) DECLARE @cSeqNo int -- Feature Items added at Profile level (Item type :C) Declare @SeqNo int -- Determine the SeqNo -- Note: the interface default entries can be reordered at profile level -- Get the counts separately and determine which one to use. SELECT @iSeqNo=ISNULL(Max(i.SeqNo),0) FROM [dbo].[InterfaceFeatureValues] i -- interface feature items WHERE i.InterfaceFeatureNo=@InterfaceFeatureNo AND i.ItemNo>0 SELECT @cSeqNo = ISNULL(Max(c.SeqNo),0) FROM [dbo].[ProfFeatureValues] c -- profile specific customized entries WHERE c.ProfNo=@ProfNo and c.InterfaceFeatureNo=@InterfaceFeatureNo AND c.ItemNo>0 If @iSeqNo > @cSeqNo SET @SeqNo = @iSeqNo else SET @SeqNo = @cSeqNo SELECT @ItemNo=ISNULL(Max([dbo].[ProfFeatureValues].[ItemNo])+1,1), @SeqNo=@SeqNo + 1 FROM [dbo].[ProfFeatureValues] WHERE [dbo].[ProfFeatureValues].[ProfNo] = @ProfNo and [dbo].[ProfFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo and [dbo].[ProfFeatureValues].[ItemType]='C' BEGIN TRANSACTION INSERT INTO [dbo].[ProfFeatureValues] ([dbo].[ProfFeatureValues].[ProfNo],[dbo].[ProfFeatureValues].[InterfaceFeatureNo], [dbo].[ProfFeatureValues].[ItemNo], [dbo].[ProfFeatureValues].[ItemType],[dbo].[ProfFeatureValues].[FieldValueXml], [dbo].[ProfFeatureValues].[Show],[dbo].[ProfFeatureValues].[SeqNo]) VALUES (@ProfNo,@InterfaceFeatureNo, @ItemNo, 'C', @FieldsXML2, '1', @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Features','Add Feature Item', @ProfNo,@InterfaceFeatureNo,@ItemNo,@SeqNo COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_ScanLocalTitles_70](@CustID varchar(10), @ColID varchar(50), @Term nvarchar(430), @StartPos int, @RecCount int) AS BEGIN DECLARE @ColNo int DECLARE @TempTable table(RecNo int identity(1,1), TitleNo int) SET @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID,@ColID) -- Start Pos is used only for direction IF @StartPos > 1 -- Going backwards BEGIN INSERT INTO @TempTable (TitleNo) SELECT Top(@RecCount) a.TitleNo FROM [dbo].[LocalTitle] AS a INNER JOIN [dbo].[MasterTitle] AS b ON a.TitleNo = b.TitleNo WHERE a.ColNo=@ColNo AND b.Title <= @Term ORDER BY b.Title DESC SELECT b.Title, b.ISSN, IsNull(a.Notes,'') as Notes, IsNull(a.CallNumber,'') as CallNumber, IsNull(a.SummaryHoldings,'') as SummaryHoldings, dbo.EAIF_GetLocalTitleDates_70(a.ColNo,a.TitleNo) as Dates,a.TitleNo FROM [dbo].[LocalTitle] a INNER JOIN [dbo].[MasterTitle] b ON a.TitleNo=b.TitleNo INNER JOIN @TempTable c ON a.TitleNo=c.TitleNo WHERE a.ColNo=@ColNo ORDER BY [c].[RecNo] DESC END ELSE BEGIN INSERT INTO @TempTable (TitleNo) SELECT Top(@RecCount)a.TitleNo FROM [dbo].[LocalTitle] a INNER JOIN [dbo].[MasterTitle] b ON a.TitleNo=b.TitleNo WHERE a.ColNo=@ColNo AND b.Title >= @Term ORDER BY b.Title SELECT b.Title, b.ISSN, IsNull(a.Notes,'') as Notes, IsNull(a.CallNumber,'') as CallNumber, IsNull(a.SummaryHoldings,'') as SummaryHoldings, dbo.EAIF_GetLocalTitleDates_70(a.ColNo,a.TitleNo) as Dates FROM [dbo].[LocalTitle] AS a INNER JOIN [dbo].[MasterTitle] AS b ON a.TitleNo=b.TitleNo INNER JOIN @TempTable c ON a.TitleNo=c.TitleNo WHERE a.ColNo=@ColNo ORDER BY c.RecNo END END
CREATE PROCEDURE [dbo].[EAIP_AddCustomerEmailAddressForCopy_153] ( @CustNo VARCHAR(10), @ParamName VARCHAR(100), @ParamLevel VARCHAR (5), @CreateDate DATETIME2, @EmailAddress NVARCHAR(255), @EmailHash VARBINARY(600) )AS BEGIN DECLARE @ParamNo INT SELECT @ParamNo = [dbo].[CustomParamEmailList].[ParamNo] FROM dbo.CustomParamEmailList WHERE [dbo].[CustomParamEmailList].[ParamName] = @ParamName AND [dbo].[CustomParamEmailList].[ParamLevel] = 'C' OPEN SYMMETRIC KEY Sym_EmailAddress DECRYPTION BY CERTIFICATE Cert_EmailAddress DECLARE @hashEmailMatch AS TABLE(PUAID INT, DecryptedEmail NVARCHAR(600)) INSERT INTO @hashEmailMatch( DecryptedEmail ) SELECT CONVERT ( NVARCHAR(255), DECRYPTBYKEY([dbo].[CustomParamEmailListValues].[EmailAddress])) FROM dbo.CustomParamEmailListValues WHERE [dbo].[CustomParamEmailListValues].[EmailHash] = @EmailHash AND [dbo].[CustomParamEmailListValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamEmailListValues].[TargetNo] = @CustNo DECLARE @EmailEnc VARBINARY(600) SELECT @EmailEnc = ENCRYPTBYKEY(KEY_GUID('Sym_EmailAddress'),@EmailAddress) CLOSE SYMMETRIC KEY Sym_EmailAddress INSERT INTO dbo.CustomParamEmailListValues( [dbo].[CustomParamEmailListValues].[TargetNo] , [dbo].[CustomParamEmailListValues].[ParamNo], [dbo].[CustomParamEmailListValues].[ParamLevel] ,[dbo].[CustomParamEmailListValues].[CreateDate] ,[dbo].[CustomParamEmailListValues].[EmailAddress] , [dbo].[CustomParamEmailListValues].[EmailHash] , [dbo].[CustomParamEmailListValues].[EmailName] ) VALUES ( @CustNo , -- TargetNo - int @ParamNo , -- ParamNo - int @ParamLevel, -- ParamLevel - Char @CreateDate , -- CreateDate - datetime2 @EmailEnc , -- EmailAddress - varbinary(600) @EmailHash , -- EmailHash - varbinary(600) NULL -- EmailName - varbinary(600) ) END
CREATE PROCEDURE [dbo].[EAUI_GetInternalCustomerInterfaceList_70](@CustID varchar(10)) AS BEGIN SELECT DISTINCT il.InterfaceName, il.InterfaceID, il.Version FROM [dbo].[Profile] pl INNER JOIN [dbo].[InterfaceVersion] iv ON pl.InterfaceID = iv.InterfaceID AND pl.Version = iv.Version INNER JOIN [dbo].[InterfaceLanguage] il ON pl.InterfaceID = il.InterfaceID AND pl.Version = il.Version WHERE pl.CustID = @CustID ORDER BY [il].[InterfaceName] END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceToolbarItems_77](@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10))AS BEGIN SELECT it.ItemName, itc.Caption FROM [dbo].[InterfaceToolbar] it INNER JOIN [dbo].[InterfaceToolbarCaption] itc ON it.IntfToolbarItem = itc.IntfToolbarItem WHERE it.InterfaceID = @InterfaceID AND it.Version = @Version AND itc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetCustomersForFMO_203] @pageIndex INT = 0, @pagSize INT = 10 AS BEGIN WITH Data_CTE AS ( SELECT ROW_NUMBER() OVER(ORDER BY ca.CustId) AS RowNr, ca.CustId, ca.CompanyName, LTRIM(RTRIM(ca.Address1)) Address1, LTRIM(RTRIM(ca.Address2)) Address2, LTRIM(RTRIM(ca.Address3)) Address3, ca.City, ca.State, ca.PostalCode, co.CountryName, STUFF((SELECT DISTINCT ',' + p.InterfaceID FROM dbo.Profile p WHERE p.CustID = c.CustID AND EXISTS(SELECT 1 FROM dbo.ProfDatabase pd WHERE pd.ProfNo = p.ProfNo and pd.enable = 1 and (pd.AccessEndDate > GETDATE() or pd.AccessEndDate is null)) FOR XML PATH('')),1,1,'') Interfaces, ISNULL(cac.PrefAuthOrderForFlipster,def.PrefAuthOrderForFlipster) AuthOrder, ISNULL((SELECT CONVERT(XML,pv.ParamValue).value('(/customerProxy/@urlMask)[1]','nvarchar(max)') FROM dbo.CustomParamXmlValues pv INNER JOIN dbo.CustomParamList cpl on cpl.ParamNo = pv.ParamNo WHERE pv.TargetNo = c.CustNo and cpl.ParamLevel = 'C' and cpl.ParamName = 'customerProxy' and cac.PrefAuthProxyForFlipster = pv.ItemName), def.PrefAuthProxyForFlipster) AuthProxy FROM dbo.Customer c INNER JOIN dbo.CustAddress ca on ca.CustID = c.CustID INNER JOIN Authentication.dbo.CustomerAuthenticationConfiguration cac on cac.CustID = c.CustID INNER JOIN Authentication.dbo.CustomerAuthenticationConfiguration def on def.CustID = 'default' INNER JOIN dbo.Country co on co.CountryID = ca.CountryID WHERE c.CustType <> 'I' AND cac.DisplayLibraryOnFindMyOrg = 1 AND EXISTS(SELECT p.InterfaceID FROM dbo.Profile p WHERE p.CustID = c.CustID AND EXISTS(SELECT 1 FROM dbo.ProfDatabase pd WHERE pd.ProfNo = p.ProfNo AND pd.enable = 1 AND (pd.AccessEndDate > GETDATE() OR pd.AccessEndDate is null))) ), Count_CTE AS ( SELECT COUNT(*) AS TotalCount FROM Data_CTE ) SELECT d.CustID, d.CompanyName, d.Address1, d.Address2, d.Address3, d.City, d.State, d.PostalCode, d.CountryName, d.Interfaces, d.AuthOrder, d.AuthProxy, NULL as TotalCount FROM Data_CTE AS d WHERE d.rowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize UNION ALL SELECT NULL AS CustID, NULL AS CompanyName, NULL AS Address1, NULL AS Address2, NULL AS Address3, NULL AS City, NULL AS State, NULL AS PostalCode, NULL AS CountryName, NULL AS Interfaces, NULL AS AuthOrder, NULL AS AuthProxy, TotalCount FROM Count_CTE END
--sql content merged from file: \StoredProcedures\EAUI_GetExternalSourceListBrowseByDisplayName_92.sql CREATE PROCEDURE [dbo].[EAUI_GetExternalSourceListBrowseByDisplayName_92](@DbLabel varchar(10), @DisplayName nvarchar(200), @SourceType char(1)) AS BEGIN SELECT l.DbVerNo, DisplayName= case l.DisplayName when N'' Then N'...' else l.DisplayName End, --l.DisplayName, l.DbName, l.DbLabel, e.ExternalDbID as ExternalSourceID, ISNULL(e.VendorName,N'') as Vendor, ISNULL(e.ConnectorType,'') as ConnectorType, ISNULL(d.ParamValue,N'') as ResourceType, FreeInd=case e.Free when '0' then 'Paid' when '1' then 'Free' end, Count([cedbl].[CustNo]) as UsageCount FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamList] pl ON pl.ParamName='ResourceType' LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON (d.DbVerNo=l.DbVerNo AND d.ParamNo = pl.ParamNo) Left Outer Join [dbo].[CustExternalDbList] cedbl on l.DbVerNo=cedbl.DbVerNo WHERE l.DbLabel = @DbLabel AND l.DisplayName Like @DisplayName + '%' AND l.SourceType = @SourceType group by l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, e.ExternalDbID, e.VendorName, e.ConnectorType, e.Free, d.ParamValue ORDER BY l.DbName END
CREATE PROCEDURE [dbo].[EAIP_UpdateCollection_70] ( @ColNo int, @ColName nvarchar(50), @Exclude bit = 0, @Notes nvarchar(255) = null, @AddAlternates bit = 1) AS BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[ColName]=@ColName, [dbo].[Collection].[Notes]=@Notes, [dbo].[Collection].[Exclude] = @Exclude, [dbo].[Collection].[AddAlternates] = @AddAlternates WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileCustomLinksOrder_70] (@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int,@LinksList varchar(8000), @SeqNoList varchar(8000))AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @ShowFullTextGrid int Select @ShowFullTextGrid = dbo.EAIF_GetProfileParamScalarValue_70 (@ProfNo,'showFullTextGridOnAdminCustomLinkPage') SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) -- use a temp table for the items so we can use it in both places DECLARE @Temp table (Item VARCHAR(255), Value int) INSERT INTO @Temp (Item,Value) SELECT a.Item AS Item, a.Value AS Value FROM dbo.EAIF_GetItemValueTable_70(@LinksList,@SeqNoList,'+') a DECLARE @ProfParamNo int SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') UPDATE [dbo].[CustomParamXmlValues] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[CustomParamXmlValues] a INNER JOIN @Temp b ON a.ItemName=b.Item WHERE a.TargetNo=@ProfNo AND a.ParamLevel='P' AND ParamNo = @ProfParamNo -- EADM-2993 - reordering Full Text custom link (used by eds/pfi interface only) -- if we're updating this parameter at all we -- need to check if there is a profile-level entry in the CustomParamXmlValue table for the 'systemFTPlaceHolderLink' parameter -- if not, we need to add one before trying to update with the new sequence number -- is this an eds /pfi interface profile? DECLARE @InterfaceId VARCHAR(10) SELECT @InterfaceId = [dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo --IF @InterfaceId = 'eds' -- Note: Logic for @ShowFullTextGrid check added in Release 14.2 ( for EHPMEBSCOADMIN-2050) IF @ShowFullTextGrid = 1 BEGIN -- first get the parameter number for 'systemFTPlaceHolderLink' DECLARE @SystemTargetNo int DECLARE @FTPlaceHolderParamNo INT DECLARE @LinkedFTPlaceHolderParamNo INT DECLARE @ItemName VARCHAR(255) DECLARE @LinkedFTPlaceHolderItemName VARCHAR (255) SELECT @SystemTargetNo=dbo.EAIF_GetCustNo_70('system') SELECT @FTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemFTPlaceHolderLink','C') SELECT @LinkedFTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemLinkedFTPlaceHolderLink','C') -- next get the item name for 'systemFTPlaceHolderLink' SELECT @ItemName = [dbo].[CustomParamXmlValues].[ItemName] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @FTPlaceHolderParamNo AND [dbo].[CustomParamXmlValues].[ParamLevel] ='C' AND [dbo].[CustomParamXmlValues].[TargetNo] = @SystemTargetNo SELECT @LinkedFTPlaceHolderItemName=[b].[ItemName] from [dbo].[CustomParamXmlValues] b Where b.TargetNo=@SystemTargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo -- use the item name to see if we're even updating 'systemFTPlaceHolderLink' IF EXISTS (SELECT 1 FROM @Temp WHERE Item = @ItemName) BEGIN -- now check if there is already a profile-level entry for 'systemFTPlaceHolderLink' IF EXISTS (SELECT 1 FROM dbo.CustomParamXmlValues WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @FTPlaceHolderParamNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'P' AND [dbo].[CustomParamXmlValues].[TargetNo] = @ProfNo) BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[CustomParamXmlValues] a INNER JOIN @Temp b ON a.ItemName=b.Item WHERE a.TargetNo=@ProfNo AND a.ParamLevel='P' AND ParamNo = @FTPlaceHolderParamNo END ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], [dbo].[CustomParamXmlValues].[SeqNo]) SELECT @ProfNo, 'P', @FTPlaceHolderParamNo, @ItemName , NULL, t.Value FROM @Temp t WHERE t.Item = @ItemName END END -- use the item name to see if we're even updating 'systemLinkedFTPlaceHolderLink' IF EXISTS (SELECT 1 FROM @Temp WHERE Item = @LinkedFTPlaceHolderItemName) BEGIN -- now check if there is already a profile-level entry for 'systemLinkedFTPlaceHolderLink' IF EXISTS (SELECT 1 FROM dbo.CustomParamXmlValues WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @LinkedFTPlaceHolderParamNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'P' AND [dbo].[CustomParamXmlValues].[TargetNo] = @ProfNo) BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[CustomParamXmlValues] a INNER JOIN @Temp b ON a.ItemName=b.Item WHERE a.TargetNo=@ProfNo AND a.ParamLevel='P' AND ParamNo = @LinkedFTPlaceHolderParamNo END ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], [dbo].[CustomParamXmlValues].[SeqNo]) SELECT @ProfNo, 'P', @LinkedFTPlaceHolderParamNo, @LinkedFTPlaceHolderItemName , NULL, t.Value FROM @Temp t WHERE t.Item = @LinkedFTPlaceHolderItemName END END END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Re-Order Custom Links', @ProfLogName, @LinksList, @SeqNoList END
CREATE FUNCTION [dbo].[EAIF_PasswordEncrypt_70](@StrPass varchar(50)) RETURNS varchar(100) AS BEGIN DECLARE @EncPass varchar(100) DECLARE @RetVal varchar(100) DECLARE @StrLength int DECLARE @StrPos int DECLARE @Buf varchar(2) DECLARE @iBuf int DECLARE @cBuf char DECLARE @iTranspose int DECLARE @iMarker int IF @StrPass='' BEGIN SET @RetVal='' END ELSE BEGIN SELECT @StrLength =DATALENGTH(@StrPass) SET @Buf=dbo.EAIF_IntToBin_70(@StrLength) SET @EncPass=@Buf SET @StrPos =1 SET @iMarker =35 WHILE(@StrPos <= @StrLength) BEGIN SELECT @cBuf =CONVERT(char,SUBSTRING(@StrPass,@StrPos,1)) SET @iBuf =ASCII(@cBuf) SET @iTranspose =@iBuf/16+(@iBuf%16)*16 IF(@iTranspose > 47 AND @iTranspose < 127) BEGIN SELECT @EncPass =@EncPass+CHAR(@iMarker)+CHAR(@iTranspose) END ELSE BEGIN SET @Buf=dbo.EAIF_IntToBin_70(@iTranspose) SET @EncPass =@EncPass+@Buf END SET @StrPos =@StrPos+1 SET @iMarker =@iMarker+1 IF(@iMarker > 38) BEGIN SET @iMarker =35 END END SET @RetVaL=REVERSE(@EncPass) END RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamEditDetail_70](@ParamNo int) AS BEGIN SELECT d.PromptText, d.HelpText, d.EditGroup, d.EditSubGroup, d.SeqNo, d.EditControl, d.ValueTemplate, d.ProcInfo, l.ParamName, d.HintText FROM dbo.CustomParamList l INNER JOIN dbo.CustomParamEditDetail d ON l.ParamNo = d.ParamNo WHERE l.ParamNo = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamTblProfFieldValues_154] ( @ParamNo int, @ProfNo int, @LangCode varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo) SET @LangCode='' ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode) SET @LangCode='en' SELECT @LangCode AS LangCode EXEC [dbo].[EAUI_GetCustomParamTblProfFieldValues_90] @ParamNo, @ProfNo, @LangCode END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceScreenLimiterGroups_161] ( @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ScreenID VARCHAR(10) ) AS BEGIN DECLARE @ScreenNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID AND [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @ScreenID, @InterfaceID, @Version) RETURN END SELECT @ScreenNo = [dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version] = @Version AND [dbo].[InterfaceScreen].[ScreenID] = @ScreenID SELECT [dbo].[InterfaceLimiterGroup].[GroupNo], [dbo].[InterfaceLimiterGroup].[Description] FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @ScreenNo ORDER BY [dbo].[InterfaceLimiterGroup].[GroupNo] END
CREATE PROCEDURE [dbo].[EAUI_RestoreDefaultOrderDatabaseInterfaceAuthorities_85]( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @MainDbVerNo int) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDbAuthorityOrder].[Version]=@Version AND [dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo]=@MainDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @MainDbName varchar(10), @Dblabel varchar(10) SELECT @MainDbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MainDbVerNo DECLARE @Interface varchar (25) SET @Interface = @InterfaceID+'/'+@Version EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@MainDbName, @DbLabel,'Restore default order Interface Authority', 'Interface',@Interface IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetConfigParamName_70](@ParamNo int) RETURNS varchar(100) AS BEGIN RETURN( SELECT [dbo].[ConfigParamList].[ParamName] FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ParamNo]=@ParamNo ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteLimiter_70] (@UserID nvarchar(20), @UserIP varchar(15), @LimiterNo int, @DbLabel varchar(10)) AS BEGIN DECLARE @LimiterId varchar(25) SELECT @LimiterId = [dbo].[LimiterList].[LimiterId]+'/'+CONVERT(varchar,@LimiterNo) FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Limiter', 'Delete Limiter', 'LimiterID/Number:', @LimiterId, @DbLabel BEGIN DELETE FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo AND [dbo].[LimiterList].[DbLabel]=@DbLabel IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END END
CREATE PROCEDURE [dbo].[EAIP_DeleteLinkedMasterTitle]( @SrcTitleNo int, @TgtTitleNo int) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@SrcTitleNo AND [dbo].[TitleLink].[TgtTitleNo]=@TgtTitleNo) BEGIN RAISERROR('The title %d is not linked to the title %d',16,-1,@SrcTitleNo,@TgtTitleNo) RETURN END BEGIN TRANSACTION DELETE FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@SrcTitleNo AND [dbo].[TitleLink].[TgtTitleNo]=@TgtTitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@TgtTitleNo AND [dbo].[TitleLink].[TgtTitleNo]=@SrcTitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[LinkCount] = [dbo].[MasterTitle].[LinkCount] -1 WHERE [dbo].[MasterTitle].[TitleNo] = @SrcTitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[LinkCount] = [dbo].[MasterTitle].[LinkCount] -1 WHERE [dbo].[MasterTitle].[TitleNo] = @TgtTitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileProductLabel_97.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileProductLabel_97] (@ProfNo int) AS BEGIN DECLARE @Value nvarchar(4000) DECLARE @CustName nvarchar(255) SELECT @Value = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo , 'custProductLabel') IF @Value='' or CharIndex ('{CustName}',@Value) > 0 BEGIN SELECT @CustName= a.CustName From [dbo].[Customer] a INNER JOIN [dbo].[Profile] b ON a.CustID = b.CustID Where b.ProfNo = @ProfNo Select @Value = 'Discovery Service for' + ' ' + @CustName END SELECT @Value END
--sql content merged from file: \StoredProcedures\EAUI_AddProfCustGroupDb_86.sql CREATE PROCEDURE [dbo].[EAUI_AddProfCustGroupDb_86](@UserID nvarchar(20),@UserIP varchar(15), @ProfNo int,@Caption nvarchar(255),@DbList varchar(8000) )AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[LangCode]='en' AND [dbo].[ProfCustGroupCaption].[Caption] =@Caption) OR EXISTS (SELECT 1 FROM [dbo].[ProfGroupCaption] WHERE [dbo].[ProfGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfGroupCaption].[LangCode]='en' AND [dbo].[ProfGroupCaption].[Caption]=@Caption) BEGIN RAISERROR('Group "%s" already exists.',16,-1,@Caption) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[Caption]=@Caption) BEGIN RAISERROR('Group caption "%s" is reserved for standard database group names',16,-1,@Caption) RETURN END DECLARE @CGCount Int, @GGCount Int SELECT @CGCount = Count(pg.SeqNo) FROM [dbo].[ProfCustGroupList] pg WHERE pg.ProfNo = @ProfNo SELECT @GGCount = Count(Distinct gdb.GroupNo) FROM [dbo].[ProfDatabase] pdb INNER JOIN [dbo].[DbGroup] gdb ON pdb.DbVerNo = gdb.DbVerNo WHERE pdb.ProfNo = @ProfNo BEGIN TRANSACTION INSERT INTO [dbo].[ProfCustGroupList]([dbo].[ProfCustGroupList].[ProfNo], [dbo].[ProfCustGroupList].[Show], [dbo].[ProfCustGroupList].[SeqNo]) SELECT @ProfNo, 1, MAX(a.SeqNo) FROM (select ISNULL(MAX([pcgl].[SeqNo]+1),1) AS SeqNo FROM [dbo].[ProfCustGroupList] pcgl WHERE pcgl.ProfNo=@ProfNo union all select ISNULL(MAX([pgl].[SeqNo]+1),1)AS SeqNo FROM [dbo].[ProfGroupList] pgl WHERE pgl.ProfNo=@ProfNo union all select @CGCount + @GGCount + 1 AS SeqNo ) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @GroupNo int SELECT @GroupNo=pcgl.GroupNo FROM [dbo].[ProfCustGroupList] pcgl LEFT OUTER JOIN [dbo].[ProfCustGroupCaption] pcgc ON pcgl.ProfNo = pcgc.ProfNo AND pcgl.GroupNo = pcgc.GroupNo AND pcgc.LangCode ='en' WHERE pcgl.ProfNo=@ProfNo AND pcgc.GroupNo is null INSERT INTO [dbo].[ProfCustGroupCaption]([dbo].[ProfCustGroupCaption].[ProfNo],[dbo].[ProfCustGroupCaption].[GroupNo],[dbo].[ProfCustGroupCaption].[LangCode],[dbo].[ProfCustGroupCaption].[Caption]) VALUES (@ProfNo,@GroupNo,'en',@Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[ProfCustGroupDb].[SeqNo])+1 FROM [dbo].[ProfCustGroupDb] Where [dbo].[ProfCustGroupDb].[ProfNo]=@ProfNo and [dbo].[ProfCustGroupDb].[GroupNo]=@GroupNo SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) INSERT INTO [dbo].[ProfCustGroupDb]([dbo].[ProfCustGroupDb].[ProfNo],[dbo].[ProfCustGroupDb].[GroupNo],[dbo].[ProfCustGroupDb].[DbVerNo],[dbo].[ProfCustGroupDb].[SeqNo],[dbo].[ProfCustGroupDb].[MergeFlag]) SELECT @ProfNo, @GroupNo, Convert(int, a.Item),a.Num,a.MergeFlag FROM dbo.EAIF_GetCustGroupDbInsertValues_92(@DbList,'+',@NextSeqNo,1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbNameList nvarchar(1024) SELECT @DbnameList = dbo.EAIF_GetProfCustGroupDbList_86(@ProfNo,@GroupNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Add Profile Db Group', @ProfLogName, @Caption, @DbNameList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPLR_AddDbTarget_912] ( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @TargetDbName varchar(10), @TargetType varchar(20) ) AS BEGIN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; DECLARE @Dblabel varchar(10) SET @Dblabel='live' DECLARE @SourceDbVerNo int DECLARE @TargetDbVerNo int SELECT @SourceDbVerNo =[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName] =@DbName And [dbo].[DbList].[DbLabel]=@Dblabel IF @SourceDbVerNo is null BEGIN select 60001 AS ReturnStatus, 'Source Database does not exist' AS ReturnMessage; return; END SELECT @TargetDbVerNo =[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName] =@TargetDbName And [dbo].[DbList].[DbLabel]=@Dblabel IF @TargetDbVerNo is null BEGIN select 60001 AS ReturnStatus, 'Target Database does not exist' AS ReturnMessage; return; END IF EXISTS (SELECT 1 FROM [dbo].[DbSourceTarget] Where [dbo].[DbSourceTarget].[SourceDbNo]=@SourceDbVerNo AND [dbo].[DbSourceTarget].[TargetDbNo]=@TargetDbVerNo) BEGIN select 60001 AS ReturnStatus, 'The requested target already exists' AS ReturnMessage; return; END IF NOT EXISTS (SELECT 1 FROM [dbo].[DbSourceTargetTypeList] WHERE [dbo].[DbSourceTargetTypeList].[TargetType]=@TargetType) BEGIN select 60001 AS ReturnStatus, 'TargetType does not exist' AS ReturnMessage; return; END BEGIN TRY BEGIN TRANSACTION -- Add Targets for the given Source INSERT INTO [dbo].[DbSourceTarget] ([dbo].[DbSourceTarget].[SourceDbNo], [dbo].[DbSourceTarget].[TargetDbNo], [dbo].[DbSourceTarget].[TargetType], [dbo].[DbSourceTarget].[SLCollID]) Values( @SourceDbVerNo, @TargetDbVerNo, @TargetType, dbo.EAIF_GetSLCollectionID_912(@TargetType,@TargetDbName)) -- Target System Collection will not be added per Smith request -- Log activity EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel,'Add Db Target', @TargetDbName , @TargetType COMMIT TRANSACTION select 0 AS ReturnStatus, '' AS ReturnMessage; END TRY BEGIN CATCH -- Get the error info before any statements are executed SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- If there is an active transaction, roll it back IF (XACT_STATE()) <> 0 BEGIN ROLLBACK TRANSACTION; END; BEGIN select @ErrorState AS ReturnStatus, @ErrorMessage AS ReturnMessage; return; END END CATCH END
CREATE PROCEDURE [dbo].[EAIP_AddCustomerEmailListAddress_153] ( @CustID VARCHAR(10), @ListName VARCHAR(100), @EmailAddress NVARCHAR(255), @EmailHash VARBINARY(600) )AS BEGIN DECLARE @CustNo INT DECLARE @ParamNo INT SET @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo = [dbo].[CustomParamEmailList].[ParamNo] FROM dbo.CustomParamEmailList WHERE [dbo].[CustomParamEmailList].[ParamName] = @ListName AND [dbo].[CustomParamEmailList].[ParamLevel] = 'C' OPEN SYMMETRIC KEY Sym_EmailAddress DECRYPTION BY CERTIFICATE Cert_EmailAddress DECLARE @hashEmailMatch AS TABLE(PUAID INT, DecryptedEmail NVARCHAR(600)) INSERT INTO @hashEmailMatch( DecryptedEmail ) SELECT CONVERT ( NVARCHAR(255), DECRYPTBYKEY([dbo].[CustomParamEmailListValues].[EmailAddress])) FROM dbo.CustomParamEmailListValues WHERE [dbo].[CustomParamEmailListValues].[EmailHash] = @EmailHash AND [dbo].[CustomParamEmailListValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamEmailListValues].[TargetNo] = @CustNo IF EXISTS (SELECT 1 FROM @hashEmailMatch WHERE DecryptedEmail = @EmailAddress) BEGIN CLOSE SYMMETRIC KEY Sym_EmailAddress RAISERROR ('Email Address already exists.', 16, 1) RETURN -1 END DECLARE @EmailEnc VARBINARY(600) SELECT @EmailEnc = ENCRYPTBYKEY(KEY_GUID('Sym_EmailAddress'),@EmailAddress) CLOSE SYMMETRIC KEY Sym_EmailAddress INSERT INTO dbo.CustomParamEmailListValues( [dbo].[CustomParamEmailListValues].[TargetNo] , [dbo].[CustomParamEmailListValues].[ParamNo], [dbo].[CustomParamEmailListValues].[ParamLevel] ,[dbo].[CustomParamEmailListValues].[CreateDate] ,[dbo].[CustomParamEmailListValues].[EmailAddress] , [dbo].[CustomParamEmailListValues].[EmailHash] , [dbo].[CustomParamEmailListValues].[EmailName] ) VALUES ( @CustNo , -- TargetNo - int @ParamNo , -- ParamNo - int 'C', GETDATE() , -- CreateDate - datetime2 @EmailEnc , -- EmailAddress - varbinary(600) @EmailHash , -- EmailHash - varbinary(600) NULL -- EmailName - varbinary(600) ) END
CREATE PROCEDURE [dbo].[EAUI_GetInternalCustomerList_70] AS BEGIN SELECT [dbo].[Customer].[CustName], [dbo].[Customer].[CustID], CASE [dbo].[Customer].[CustType] WHEN 'I' THEN 'Internal' WHEN 'P' THEN 'Partner' END AS CustType FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustType] IN ('I','P') AND [dbo].[Customer].[CustID]<>'system' END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceTopics_77](@InterfaceID varchar(10), @Version varchar(10),@LangCode varchar(10))AS BEGIN SELECT tl.TopicID, itc.Caption, itc.MouseOverText, itc.PhotoAltText FROM [dbo].[TopicList] tl INNER JOIN [dbo].[InterfaceTopic] it ON tl.TopicNo = it.TopicNo INNER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo = itc.IntfTopicNo WHERE it.InterfaceID = @InterfaceID AND it.Version = @Version AND itc.LangCode = @LangCode END
--sql content merged from file: \StoredProcedures\EPCS_GetDatabaseList_912.sql CREATE PROCEDURE [dbo].[EPCS_GetDatabaseList_912](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN DECLARE @CurrentDate DATETIME; SELECT @CurrentDate = GETDATE(); SELECT DISTINCT [dbo].[DbList].[DbName] AS DbName FROM [dbo].[ProfDatabase] WITH (NOLOCK) INNER JOIN [dbo].[Profile] WITH (NOLOCK) ON [dbo].[Profile].[ProfNo] = [dbo].[ProfDatabase].[ProfNo] INNER JOIN [dbo].[DbList] WITH (NOLOCK) ON [dbo].[ProfDatabase].[DbVerNo] = [dbo].[DbList].[DbVerNo] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[ProfDatabase].[Enable] = 1 AND [dbo].[DbList].[SourceType] = 'D' AND ([dbo].[ProfDatabase].[AccessEndDate] is null OR DateDiff(hh, [dbo].[ProfDatabase].[AccessEndDate], @CurrentDate)< 0 ) END
CREATE PROCEDURE [dbo].EAUI_GetExternalSourceListBrowseByID_102 ( @dbLabel VARCHAR(10), @id VARCHAR(200), @sourceType CHAR(1) ) AS BEGIN SELECT l.DbVerNo, DisplayName= case l.DisplayName when N'' Then N'...' else l.DisplayName End, --l.DisplayName, l.DbName, l.DbLabel, ExternalSourceID= CASE e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, ISNULL(e.VendorName,N'') AS Vendor, ISNULL(e.ConnectorType,'') AS ConnectorType, ISNULL(d.ParamValue,N'') AS ResourceType, FreeInd= CASE e.Free WHEN 0 THEN 'Paid' WHEN 1 THEN 'Free' END, Count([cedbl].[CustNo]) AS UsageCount, ISNULL(e.ConnectorProvider,'') AS ConnectorProvider FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamList] pl ON pl.ParamName='ResourceType' LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON (d.DbVerNo=l.DbVerNo AND d.ParamNo = pl.ParamNo) Left Outer Join [dbo].[CustExternalDbList] cedbl ON l.DbVerNo=cedbl.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON (muse.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON (indexData.DbVerNo = l.DbVerNo) WHERE l.DbLabel = @dbLabel AND (((muse.ExternalDbID Like @id + '%') AND (e.ConnectorProvider = 'M')) OR ((indexData.ExternalDbID Like @id + '%') AND (e.ConnectorProvider = 'I'))) AND l.SourceType = @sourceType GROUP BY l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, CASE e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, e.VendorName, e.ConnectorType, e. ConnectorProvider, e.Free, d.ParamValue ORDER BY l.DbName END
CREATE PROCEDURE [dbo].[EAIP_UpdateCollectionAutoRecreateFlag_70](@ColNo int) AS BEGIN DECLARE @OldAutoRecreate bit DECLARE @NewAutoRecreate bit DECLARE @ReqType char(1) SET @NewAutoRecreate=0 SET @ReqType = 'C' SELECT @OldAutoRecreate=[dbo].[Collection].[AutoRecreate], @NewAutoRecreate=([dbo].[Collection].[CrossRef]|[dbo].[Collection].[Eonline]), @ReqType =(CASE WHEN ([dbo].[Collection].[ColID] LIKE N'eo-%' OR [dbo].[Collection].[ColID] LIKE N'eor-%') THEN 'E' ELSE 'C' END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 IF @NewAutoRecreate=0 BEGIN --Check to see atleast one profile is using this collection as a limiter either by 'showing' the limiter --or marking it as permanent limiter (default 'on'/hidden) IF EXISTS(SELECT DISTINCT 1 FROM [dbo].[ProfLocalLimiter2] WHERE [dbo].[ProfLocalLimiter2].[ColNo] = @ColNo AND ([dbo].[ProfLocalLimiter2].[Show]=1 OR [dbo].[ProfLocalLimiter2].[IsHidden]=1 OR [dbo].[ProfLocalLimiter2].[DefValue]='on')) SELECT @NewAutoRecreate=1 END IF @NewAutoRecreate=0 AND dbo.EAIF_IsCollectionUsedByCustomLink_912(@ColNo)=1 SELECT @NewAutoRecreate=1 IF @OldAutoRecreate <> @NewAutoRecreate BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[AutoRecreate]=@NewAutoRecreate WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 EXEC [dbo].[EAIP_RebuildLocalLimiter_70] 'system',@ReqType,@ColNo,null END END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDBEnabled_131] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNoList varchar(8000), @DbEnabledList varchar(8000) ) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @GroupDbs bit DECLARE @ParamNo int DECLARE @CustType CHAR(1) DECLARE @DbVerNoTable table (Id INT IDENTITY(1,1), ProfNo int, DbVerNo int, Enable int) SELECT @CustType = [b].[CustType] FROM [dbo].[Profile] a INNER JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo SELECT @ProfLogName = dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='groupProfDatabases' SELECT @GroupDbs=[dbo].[CustomParamScalarValues].[ParamValue] FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] = @ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel] = 'P' and [dbo].[CustomParamScalarValues].[ParamNo] = @paramNo IF @GroupDbs is null BEGIN SELECT @GroupDbs = [cpd].[DefValue] FROM [dbo].[CustomParamDefaults] cpd JOIN [dbo].[Profile] p ON cpd.InterfaceID = p.InterfaceID and cpd.Version = p.Version and cpd.MarketID = p.MarketID and cpd.STMode = p.STMode WHERE p.ProfNo=@ProfNo and [cpd].[ParamNo]=@ParamNo IF @GroupDbs is null BEGIN SELECT @GroupDbs=[dbo].[CustomParamList].[DefValue] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamNo]=@ParamNo END END BEGIN TRY BEGIN TRANSACTION IF (@CustType='I' OR @CustType='P') BEGIN DECLARE @TempDb table (DbVerNo int, Enable int) INSERT INTO @TempDb (DbVerNo,Enable) SELECT convert(int,a.Item) AS DbVerNo, convert(int,a.Value) AS ENABLE FROM dbo.EAIF_GetItemValueTable_70(@DbVerNoList,@DbEnabledList,'+') a -- Delete the Disabled profDatabase entries for the profile (for internal profile only) DELETE [dbo].[ProfDatabase] FROM [dbo].[ProfDatabase] pd JOIN @TempDb t ON t.DbVerNo=pd.DbVerNo WHERE pd.ProfNo=@ProfNo AND t.Enable=0 -- Remove the disabled entries from tempDb table DELETE FROM @TempDb WHERE Enable=0 -- if the Prof database entry do not exist (for enabled Dbs) ,Insert an entry DECLARE @MaxSeqNo INT SELECT @MaxSeqNo=MAX ([dbo].[ProfDatabase].[SeqNo]) FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo SELECT @MaxSeqNo = ISNULL(@MaxSeqNo,0) -- Use @TempDb to get the Enabled databases only. If not, SeqNo generated in the insert statement -- will not be in sequence. -- Note: Left outer is needed here, as this procedure would get called on submit every time (user might be -- customize other info for enabled databases too) -- INSERT INTO @DbVerNoTable (ProfNo,DbVerNo,Enable) SELECT @ProfNo AS ProfNo, a.DbVerNo AS DbVerNo, a.Enable AS Enable FROM @TempDb a LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.ProfNo=@ProfNo AND pd.DbVerNo=a.DbVerNo WHERE pd.DbVerNo IS null --Insert entry into ProfDatabase for Internal customer INSERT INTO [dbo].[ProfDatabase] ([dbo].[ProfDatabase].[ProfNo],[dbo].[ProfDatabase].[DbVerNo],[dbo].[ProfDatabase].[SeqNo],[dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault],[dbo].[ProfDatabase].[CustomLimiter], [dbo].[ProfDatabase].[Mode]) SELECT d.ProfNo, d.DbVerNo, d.Id + @MaxSeqNo, d.Enable, @GroupDbs, 0, 'I' FROM @DbVerNoTable d INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'Profiles', 'Add Database to Profile', @ProfLogName, dl.DbName, NULL, NULL, NULL FROM @DbVerNoTable dbs INNER JOIN [dbo].[DbList] dl ON dl.DbVerNo=dbs.DbVerNo END ELSE BEGIN UPDATE [dbo].[ProfDatabase] SET [Enable] = convert(int,b.Value) FROM [dbo].[ProfDatabase] a JOIN dbo.EAIF_GetItemValueTable_70(@DbVerNoList, @DbEnabledList,'+') b ON a.DbVerNo=convert(int,b.Item) WHERE [a].[ProfNo] = @ProfNo END UPDATE dbo.Collection SET [LastUpdateDate]=GetDate() FROM [dbo].[Profile] p INNER JOIN [dbo].[Collection] c ON c.CustID=p.CustID WHERE p.ProfNo=@ProfNo AND c.Eonline=0 AND c.IsDeleted = 0 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END
CREATE FUNCTION [dbo].[EAIF_SearchThemeLangAndCaptions_83](@ThemeID varchar(20)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(max) SET @Captions=N'' SET @Langs='' SELECT @Captions=@Captions+N'|'+[dbo].[SearchThemeCaption].[Caption], @Langs=@Langs+'|'+[dbo].[SearchThemeCaption].[LangCode] FROM [dbo].[SearchThemeCaption] WITH (NOLOCK) WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID IF LEN(@Captions)>2 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>2 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+N'|||'+@Langs END
CREATE Procedure [dbo].[EAUI_GetCustomParamScalarFields_89] @TargetNo int, @ParamLevel char(1), @ParamNo int, @InterfaceID varchar(10), @Version varchar(10) as Declare @MarketID varchar(20) Declare @STMode char(1) Select @MarketID=[dbo].[Profile].[MarketID] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@TargetNo Select @STMode=[dbo].[Profile].[STMode] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@TargetNo Select cped.ParamNo, -- IsNull(icped.PromptText, cped.PromptText) PromptText, -- IsNull(icped.HelpText, cped.HelpText) HelpText, cped.PromptText, cped.HelpText, cped.EditGroup, cped.EditSubGroup, cped.SeqNo, cped.EditLevel, cped.EditControl, -- IsNull(icped.ValueTemplate, cped.ValueTemplate) ValueTemplate, cped.ValueTemplate, cped.ProcInfo, cped.Copyable, -- IsNull(icped.HintText, cped.HintText) HintText, cped.HintText, cped.HierarchyDisplayOptions, -- IsNull(icped.ChildEditPromptText, cped.ChildEditPromptText) ChildEditPromptText, cped.ChildEditPromptText, cpl.ParamName, [cpsv].[ParamValue] as [Value] from [dbo].[CustomParamEditDetail] cped join [dbo].[CustomParamList] cpl on cped.ParamNo=cpl.ParamNo join [dbo].[CustomParamScalarValues] cpsv on cped.ParamNo=cpsv.ParamNo -- left outer join InterfaceCustomParamEditDetail icped -- on cpl.ParamNo=icped.ParamNo -- And icped.InterfaceID=@InterfaceID and icped.Version=@Version where [cpl].[ParentParamNo]=@ParamNo and [cpsv].[TargetNo]=@TargetNo and cpsv.ParamLevel=@ParamLevel Union Select cped.ParamNo, -- IsNull(icped.PromptText, cped.PromptText) PromptText, -- IsNull(icped.HelpText, cped.HelpText) HelpText, cped.PromptText, cped.HelpText, cped.EditGroup, cped.EditSubGroup, cped.SeqNo, cped.EditLevel, cped.EditControl, -- IsNull(icped.ValueTemplate, cped.ValueTemplate) ValueTemplate, cped.ValueTemplate, cped.ProcInfo, cped.Copyable, -- IsNull(icped.HintText, cped.HintText) HintText, cped.HintText, cped.HierarchyDisplayOptions, -- IsNull(icped.ChildEditPromptText, cped.ChildEditPromptText) ChildEditPromptText, cped.ChildEditPromptText, cpl.ParamName, cpd.DefValue as [Value] from [dbo].[CustomParamEditDetail] cped join [dbo].[CustomParamList] cpl on cped.ParamNo=cpl.ParamNo join [dbo].[CustomParamDefaults] cpd on cped.ParamNo=cpd.ParamNo -- left outer join InterfaceCustomParamEditDetail icped -- on cpl.ParamNo=icped.ParamNo -- And icped.InterfaceID=@InterfaceID and icped.Version=@Version where [cpl].[ParentParamNo]=@ParamNo and cpd.InterfaceID=@InterfaceID and cpd.Version=@Version and [cpd].[MarketID]=@MarketID and [cpd].[STMode]=@STMode and cped.ParamNo not in (Select [dbo].[CustomParamScalarValues].[ParamNo] from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo and [dbo].[CustomParamScalarValues].[ParamLevel]=@ParamLevel)
CREATE PROCEDURE dbo.[EAIP_GetCustomParamXmlFieldValues_161] (@TargetNo int = null, @ParamNo INT) AS BEGIN DECLARE @InterfaceId VARCHAR(10) DECLARE @Version VARCHAR(10) SELECT @InterfaceId=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] FROM dbo.Profile WHERE [dbo].[Profile].[ProfNo]= @TargetNo EXEC [dbo].[EAUI_GetCustomParamXmlFieldValues_89] @TargetNo,'P',@ParamNo,'',@InterfaceId,@Version END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceScreenList_161] ( @InterfaceID varchar(10), @Version varchar(10) ) AS IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID and [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[ScreenID], [dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[SeqNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
CREATE Procedure [dbo].[EAUI_SaveMultiDbAuthorityInterfaceCustomization_90]( @UserID nvarchar(20), @UserIP varchar(30), @InterfaceId varchar(10), @InterfaceVersion varchar(10), @MDbAId varchar(10), @LangCode varchar(50), @LinkText nvarchar(255), @MouseOverText nvarchar(255)) AS SET NOCOUNT ON IF Exists(SELECT 1 FROM [dbo].[MultiDbAuthInterfaceCaption] WHERE [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MDbAId AND [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceId AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @InterfaceVersion AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @LangCode) UPDATE [dbo].[MultiDbAuthInterfaceCaption] SET [dbo].[MultiDbAuthInterfaceCaption].[LinkText] = @LinkText, [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MDbAId AND [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceId AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @InterfaceVersion AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @LangCode ELSE INSERT INTO [dbo].[MultiDbAuthInterfaceCaption] ([dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId], [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID], [dbo].[MultiDbAuthInterfaceCaption].[Version], [dbo].[MultiDbAuthInterfaceCaption].[LangCode], [dbo].[MultiDbAuthInterfaceCaption].[LinkText], [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText]) VALUES (@MDbAId, @InterfaceId, @InterfaceVersion, @LangCode, @LinkText, @MouseOverText) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbAuth', 'Modify MDb Authority Customization', @MDbAId
CREATE FUNCTION [dbo].[EAIF_GetConfigParamNumber_70](@ApplicationNo varchar(20), @ParamName varchar(100)) RETURNS smallint AS BEGIN RETURN ( SELECT [dbo].[ConfigParamList].[ParamNo] FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ApplicationNo]=@ApplicationNo AND [dbo].[ConfigParamList].[ParamName]=@ParamName) END
CREATE PROCEDURE [dbo].[EAUI_DeleteLinkedTitle_70]( @UserID as nvarchar(20), @UserIP as varchar(15), @SrcTitleNo as int, @TgtTitleNo as int ) AS BEGIN DELETE FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo] = @SrcTitleNo AND [dbo].[TitleLink].[TgtTitleNo] = @TgtTitleNo DECLARE @SrcTitle as nvarchar(430), @TgtTitle as nvarchar(430) SELECT @SrcTitle=[dbo].[MasterTitle].[Title] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo] = @SrcTitleNo SELECT @TgtTitle=[dbo].[MasterTitle].[Title] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo] = @TgtTitleNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Titles', 'Delete Linked Title', @SrcTitle, @TgtTitle END
CREATE PROCEDURE [dbo].[EAIP_DeleteLocalDateFromCollection_191] ( @ColNo INT, @batchSize INT ) AS BEGIN DECLARE @Deleted_Rows INT; SET @Deleted_Rows = 1; BEGIN TRY WHILE (@Deleted_Rows > 0) BEGIN BEGIN TRANSACTION DELETE TOP (@batchSize) dbo.LocalDate WHERE [dbo].[LocalDate].[ColNo] = @ColNo SET @Deleted_Rows = @@ROWCOUNT; COMMIT TRANSACTION END END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(MAX) ,@ErrorSeverity INT ,@ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE() + ' Line ' + CAST(ERROR_LINE() AS NVARCHAR(5)) ,@ErrorSeverity = ERROR_SEVERITY() ,@ErrorState = ERROR_STATE(); ROLLBACK TRANSACTION; RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileProxyList_99.sql CREATE Procedure [dbo].[EAUI_GetProfileProxyList_99] @ProfNo int As Begin Declare @PrimaryParamNo int Declare @SecondaryParamNo int Select @PrimaryParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkPrimaryProxy' Select @SecondaryParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkSecondaryProxy' Select distinct [dbo].[CustomParamScalarValues].[ParamValue], substring([dbo].[CustomParamScalarValues].[ParamValue],charindex(':',[dbo].[CustomParamScalarValues].[ParamValue])+1,len([dbo].[CustomParamScalarValues].[ParamValue])-charindex(':',[dbo].[CustomParamScalarValues].[ParamValue])) from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo] in (@PrimaryParamNo, @SecondaryParamNo) and [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' and [dbo].[CustomParamScalarValues].[ParamValue] is not null and [dbo].[CustomParamScalarValues].[ParamValue]<>'' End
--sql content merged from file: \StoredProcedures\EAUI_AddProfile_70.sql CREATE PROCEDURE [dbo].[EAUI_AddProfile_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @ProfPwd varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @DbLabel varchar(10), @ProfName nvarchar(100), @DefLangCode varchar(10)) AS BEGIN SET @CustID = RTRIM(LTRIM(@CustID)) IF EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID) BEGIN RAISERROR('The profile "%s" already exists!',16,-1,@ProfID) RETURN END DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=@CustID+'.'+@GroupID+'.'+@ProfID IF @ProfPwd IS NULL OR @ProfPwd='' SET @ProfPwd='ebs'+ CONVERT (varchar(10),ROUND(RAND()*10000,0)) IF @DbLabel IS NULL OR @DbLabel='' SET @DbLabel='live' DECLARE @STMode char(1) SELECT @STMode = dbo.EAIF_CustTypeToSTMode_70([dbo].[Customer].[CustType]) FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Add Profile', @ProfLogName EXEC [dbo].[EAIP_AddProfileWithDatabases_70] @CustID, @GroupID, @ProfID, @ProfPwd, @InterfaceID, @Version, @MarketID, @STMode, @DbLabel, @ProfName, @DefLangCode COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\AUTH_GetAuthDebugCustGroupDetails_94.sql CREATE PROCEDURE [dbo].[EPLR_AddMissingSearchContextMappings] AS BEGIN SET NOCOUNT ON /* This stored procedure automatically adds missing DbSearchContextMapping rows for all EPLR-enabled databases for the following EPLR search concept mappings: *AN *DOI *DT *ISBN *ISSN *SPLITSUBJECT *SUBJECT *VOLUME *ISSUE *FILTER1 *TITLE */ CREATE TABLE #t(dbverno int, dbname varchar(10), label varchar(10), searchtag varchar(5)) CREATE TABLE #t2(dbverno int, dbname varchar(10), label varchar(10), conceptName varchar(20), searchtag varchar(5)) CREATE TABLE #noeplr(dbverno int) ---------------------------------------------------------------- -- databases that have EplrEnabled=0 ---------------------------------------------------------------- insert into #noeplr select distinct d.DbVerNo from [dbo].[DbParamScalarValues] as v with(Nolock) join [dbo].[DbList] as d with(Nolock) on v.DbVerNo=d.DbVerNo join [dbo].[DbTypeList] as t with(Nolock) on d.DbType=t.DbType where v.ParamNo=69 and d.DbLabel in ('live','liveqc','rebuild','rebuildqc') ---------------------------------------------------------------- -- find most appropriate default search tag and use for FILTER1 ---------------------------------------------------------------- insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category=3 where f.FieldTag in ('XY') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category=3 where t.dbname is null and f.FieldTag in ('XX') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category=3 where t.dbname is null insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'FILTER1',#t.[searchtag] from #t truncate table #t ---------------------------------------------------------------- -- find most appropriate volume search tag and use for VOLUME ---------------------------------------------------------------- insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('VI') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where t.dbname is null and f.Description2='Volume' insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where t.dbname is null and f.Description2 like '%Volume%' insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'VOLUME',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate ISSUE search tag and use for ISSUE ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('IP') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where t.dbname is null and f.Description2='Issue' insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where t.dbname is null and f.Description2 like '%Issue%' insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'ISSUE',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate TITLE search tag and use for TITLE ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (1) where f.Description2='title' insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (2) where t.dbname is null and f.Description2='title' insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (5) where t.dbname is null and f.Description2='title' insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'TITLE',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate DOI search tag and use for DOI ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (1) and f.IndexType = 'WLS' where f.Description2 in ('DOI','Digital Object Identifier','Document Object Identifier','DOI Word','DOI exact','DOI ALT','DOI Phrase') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (1) and f.IndexType = 'P' where t.dbname is null and f.Description2 in ('DOI','Digital Object Identifier','Document Object Identifier','DOI Word','DOI exact','DOI ALT','DOI Phrase') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (2) and f.IndexType = 'WLS' where t.dbname is null and f.Description2 in ('DOI','Digital Object Identifier','Document Object Identifier','DOI Word','DOI exact','DOI ALT','DOI Phrase') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (2) and f.IndexType = 'P' where t.dbname is null and f.Description2 in ('DOI','Digital Object Identifier','Document Object Identifier','DOI Word','DOI exact','DOI ALT','DOI Phrase') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (5) and f.IndexType = 'WLS' where t.dbname is null and f.Description2 in ('DOI','Digital Object Identifier','Document Object Identifier','DOI Word','DOI exact','DOI ALT','DOI Phrase') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo and f.Category in (5) and f.IndexType = 'P' where t.dbname is null and f.Description2 in ('DOI','Digital Object Identifier','Document Object Identifier','DOI Word','DOI exact','DOI ALT','DOI Phrase') insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'DOI',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate DT search tag and use for DT ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('DT') insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'DT',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate ISSN search tag and use for ISSN ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('IS') and [f].[Description2] like 'ISSN%' insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where t.dbname is null and f.FieldTag in ('ZI') and Description2 like 'ISSN%' insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'ISSN',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate AN search tag and use for AN ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('AN') insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) left join #t t on d.DbName=t.dbname and d.DbLabel=t.label join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where t.dbname is null and f.FieldTag in ('UI') insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'AN',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate ISBN search tag and use for ISBN ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('IB') and (f.Description2 like '%ISBN%' OR f.Description2 like '%IBSN%') insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'ISBN',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate DE search tag and use for SUBJECT ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('DE') insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'SUBJECT',#t.[searchtag] from #t truncate table #t ------------------------------------------------------------ -- find most appropriate SS search tag and use for SPLITSUBJECT ------------------------------------------------------------ insert into #t select distinct d.DbVerNo, d.DbName, d.DbLabel,f.FieldTag from [dbo].[DbList] d with(nolock) join [dbo].[DbFieldTag] f with(nolock) on d.DbVerNo=f.DbVerNo where f.FieldTag in ('SS') insert into #t2 select #t.[dbverno],#t.[dbname],#t.[label],'SPLITSUBJECT',#t.[searchtag] from #t truncate table #t --========================================================== -- done with various concept-mapping logic --========================================================== ------------------------------------------------------------ -- prune out the deadwood ------------------------------------------------------------ DELETE FROM #t2 WHERE #t2.[dbverno] in (SELECT #noeplr.[dbverno] FROM #noeplr) DELETE FROM #t2 WHERE #t2.[label] not in ('live','liveqc','rebuild','rebuildqc') ------------------------------------------------------------ -- explore ------------------------------------------------------------ /* select t.* from #t2 as t left join DbSearchContextMapping as m on m.dbverno=t.dbverno and t.conceptName=m.ConceptName where m.DbVerNo is null order by t.conceptName,t.dbname,t.label select t.conceptName, t.label, COUNT(*) as cnt from #t2 as t left join DbSearchContextMapping as m on m.dbverno=t.dbverno and t.conceptName=m.ConceptName where m.DbVerNo is null group by t.conceptName, t.label order by t.conceptName, t.label */ ------------------------------------------------------------ -- commit additions ------------------------------------------------------------ INSERT INTO [dbo].[DbSearchContextMapping] ([m].[DbVerNo], [m].[ContextName], [m].[ConceptName], [m].[SearchTag]) SELECT t.dbverno,'eplr' as ContextName, t.conceptName, t.searchtag FROM #t2 as t LEFT JOIN [dbo].[DbSearchContextMapping] as m on m.DbVerNo=t.dbverno and t.conceptName=m.ConceptName WHERE m.DbVerNo is null DROP TABLE #t DROP TABLE #t2 DROP TABLE #noeplr SET NOCOUNT OFF END
CREATE PROCEDURE [dbo].[EAIP_AddCustomerGroup_100](@ParentID varchar(10),@ChildID varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@ParentID AND [dbo].[CustomerGroup].[ChildID]=@ChildID) BEGIN INSERT INTO [dbo].[CustomerGroup]([dbo].[CustomerGroup].[ParentID],[dbo].[CustomerGroup].[ChildID]) VALUES(@ParentID, @ChildID) UPDATE [dbo].[Customer] Set [dbo].[Customer].[Consortium]=1 , [dbo].[Customer].[TimeStamp] = GETDATE() WHERE [dbo].[Customer].[CustID]=@ParentID --Update EASUPPORT.dbo.AdminUser --SET UserType=3, AdminGroup='consadmin' --WHERE Affiliation = @ParentID AND UserType=2 AND UserID=@ParentID END END
CREATE PROCEDURE [dbo].[EAUI_GetInternalCustomerListBrowseByCustID_70](@CustID varchar(10)) AS BEGIN SELECT [dbo].[Customer].[CustName], [dbo].[Customer].[CustID], CASE [dbo].[Customer].[CustType] WHEN 'I' THEN 'Internal' WHEN 'P' THEN 'Partner' END AS CustType FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustType] IN ('I','P') AND [dbo].[Customer].[CustID] like @CustID + '%' AND [dbo].[Customer].[CustID]<>'system' END
--sql content merged from file: \StoredProcedures\EATL_GetMultiDbLimitersExternalSource_92.sql Create Procedure [dbo].[EATL_GetMultiDbLimitersExternalSource_92] @LangCode varchar(10) as select [mdbles].[LimiterID], [mdblesc].[Caption] from [dbo].[MDbLimitersExternalSource] mdbles join [dbo].[MDbLimitersExternalSourceCaption] mdblesc on mdbles.LimiterNo=mdblesc.LimiterNo where [mdblesc].[LangCode]=@LangCode
--sql content merged from file: \StoredProcedures\EPCS_GetDBAttributes_70.sql Create PROCEDURE [dbo].[EPCS_GetDBAttributes_104]( @ShortDBName varchar(10), @Label varchar(10)='live', @physicalDb varchar(10)='' ) AS BEGIN DECLARE @DbSourceType varchar(5) SELECT @DbSourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName and [dbo].[DbList].[DbLabel]=@Label if @physicalDb = '' begin SELECT [p].[ParamName], [p].[ParamType], ISNULL(v.ParamValue, IsNull(e.DefValue, IsNull(d.DefValue,N''))) as ParamValue FROM [dbo].[DbParamList] p Left Outer Join [dbo].[DbParamSourceTypeDefaults] e on p.ParamNo=e.ParamNo and e.SourceType=@DbSourceType left OUTER JOIN [dbo].[DbParamDefaults] d ON p.ParamNo = d.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] v ON [v].[DbVerNo] = dbo.EAIF_GetDbVerNo_70(@ShortDBName,@Label) AND p.ParamNo = v.ParamNo WHERE p.ParamSourceType like '%' + @DbSourceType + '%' end else -- Database is SubsetDB begin SELECT [p].[ParamName], [p].[ParamType], case [p].[InheritFromPhysical] when 1 then ISNULL(v1.ParamValue, IsNull(e.DefValue, IsNull(d.DefValue,N''))) -- make sure pick value from physical even subsetDB may have its own value else ISNULL(v.ParamValue, IsNull(e.DefValue, IsNull(d.DefValue,N''))) end as ParamValue FROM [dbo].[DbParamList] p Left Outer Join [dbo].[DbParamSourceTypeDefaults] e on p.ParamNo=e.ParamNo and e.SourceType=@DbSourceType left OUTER JOIN [dbo].[DbParamDefaults] d ON p.ParamNo = d.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] v ON v.DbVerNo = dbo.EAIF_GetDbVerNo_70(@ShortDBName,@Label) AND p.ParamNo = v.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] v1 -- get inheritable Physical DB DbParameters ON v1.DbVerNo = dbo.EAIF_GetDbVerNo_70(@physicalDb,@Label) AND p.ParamNo = v1.ParamNo and p.InheritFromPhysical=1 WHERE p.ParamSourceType like '%' + @DbSourceType + '%' end END
CREATE PROCEDURE [dbo].[EAUI_GetExternalSourceListBrowseByVendorName_102](@DbLabel varchar(10), @DisplayName nvarchar(200), @SourceType char(1)) AS BEGIN SELECT l.DbVerNo, DisplayName= case l.DisplayName when N'' Then N'...' else l.DisplayName End, --l.DisplayName, l.DbName, l.DbLabel, ExternalSourceID= case e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, ISNULL(e.VendorName,N'') as Vendor, ISNULL(e.ConnectorType,'') as ConnectorType, ISNULL(d.ParamValue,N'') as ResourceType, FreeInd=case e.Free when '0' then 'Paid' when '1' then 'Free' end, Count([cedbl].[CustNo]) as UsageCount, ISNULL(e.ConnectorProvider,'') as ConnectorProvider FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamList] pl ON pl.ParamName='ResourceType' LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON (d.DbVerNo=l.DbVerNo AND d.ParamNo = pl.ParamNo) Left Outer Join [dbo].[CustExternalDbList] cedbl on l.DbVerNo=cedbl.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse on (muse.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData on (indexData.DbVerNo = l.DbVerNo) WHERE l.DbLabel = @DbLabel AND e.VendorName Like @DisplayName + '%' AND l.SourceType = @SourceType group by l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, case e.ConnectorProvider WHEN 'M' then muse.ExternalDbID WHEN 'I' then indexData.ExternalDbID END, e.VendorName, e.ConnectorType, e. ConnectorProvider, e.Free, d.ParamValue ORDER BY l.DbName END
--sql content merged from file: \StoredProcedures\EAIP_UpdateCollectionCrossrefFlag_70.sql CREATE PROCEDURE [dbo].[EAIP_UpdateCollectionCrossrefFlag_70](@ProfNo int, @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN DECLARE @CustID varchar(10) DECLARE @ColID nvarchar(50) DECLARE @ColNo int DECLARE @OldCrossref bit DECLARE @NewCrossref bit DECLARE @DotPos int IF @ParamValue = '' RETURN SET @DotPos = CharIndex('.',@ParamValue) SET @CustID = Substring(@ParamValue,1,@DotPos-1) SET @ColID = Substring(@ParamValue,@DotPos+1,10) BEGIN TRANSACTION SET @NewCrossref=0 SELECT @ColNo=[dbo].[Collection].[ColNo],@OldCrossref=[dbo].[Collection].[CrossRef] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 IF EXISTS(SELECT 1 FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamScalarValues] b ON a.ProfNo = b.TargetNo WHERE a.CustID = @CustID AND b.ParamLevel = 'P' AND b.ParamNo = @ParamNo AND b.ParamValue = @ParamValue) SET @NewCrossref=1 IF @OldCrossref <> @NewCrossref BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[CrossRef]=@NewCrossref WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 EXEC [dbo].[EAIP_UpdateCollectionAutoRecreateFlag_70] @ColNo END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDbLimiter_76] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNo int, @ScreenNo int, @LimiterNo int, @ControlDefault varchar(255), @Caption nvarchar(255), ---MBCS: ProfDbLimiterCaption2 - Caption size increased from 100 to 255 @Show int, @LangCode varchar(10), @SeqNo int) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiter].[LimiterNo]=@LimiterNo) RETURN DECLARE @LoggingProfile varchar(30), @DbName varchar(10), @LimiterID varchar(20),@IsListContentsGrouped int SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SELECT @LimiterID = [dbo].[LimiterList].[LimiterId],@IsListContentsGrouped=[dbo].[LimiterList].[IsListContentsGrouped] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo BEGIN TRANSACTION IF (@IsListContentsGrouped <> 1) BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ProfDbLimiter2] WHERE [dbo].[ProfDbLimiter2].[ProfNo]=@profNo AND [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo) UPDATE [dbo].[ProfDbLimiter2] SET [dbo].[ProfDbLimiter2].[Show]=@Show, [dbo].[ProfDbLimiter2].[DefValue]=@ControlDefault, [dbo].[ProfDbLimiter2].[SeqNo]=@SeqNo WHERE [dbo].[ProfDbLimiter2].[ProfNo]=@profNo AND [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo ELSE INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue],[dbo].[ProfDbLimiter2].[SeqNo]) Values (@ProfNo,@DbVerNo,@ScreenNo,@LimiterNo,@Show,@ControlDefault,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END -- If Contents are group, do not update the DefValue column IF (@IsListContentsGrouped = 1) BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ProfDbLimiter2] WHERE [dbo].[ProfDbLimiter2].[ProfNo]=@profNo AND [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo) UPDATE [dbo].[ProfDbLimiter2] SET [dbo].[ProfDbLimiter2].[Show]=@Show,[dbo].[ProfDbLimiter2].[SeqNo]=@SeqNo WHERE [dbo].[ProfDbLimiter2].[ProfNo]=@profNo AND [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo ELSE INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[SeqNo]) Values (@ProfNo,@DbVerNo,@ScreenNo,@LimiterNo,@Show,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END --caption DECLARE @DlCaption nvarchar(255) SELECT @DlCaption=[dbo].[DbLimiterCaption].[Caption] FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo]=@DbverNo AND [dbo].[DbLimiterCaption].[LimiterNo]=@LimiterNo AND [dbo].[DbLimiterCaption].[LangCode]=@LangCode IF @Caption=@DlCaption OR @Caption=N'' DELETE FROM [dbo].[ProfDbLimiterCaption2] WHERE [dbo].[ProfDbLimiterCaption2].[ProfNo]=@profNo AND [dbo].[ProfDbLimiterCaption2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiterCaption2].[LimiterNo]=@LimiterNo AND [dbo].[ProfDbLimiterCaption2].[LangCode]=@LangCode ELSE BEGIN IF EXISTS(SELECT 1 FROM [dbo].[ProfDbLimiterCaption2] WHERE [dbo].[ProfDbLimiterCaption2].[ProfNo]=@profNo AND [dbo].[ProfDbLimiterCaption2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiterCaption2].[LimiterNo]=@LimiterNo AND [dbo].[ProfDbLimiterCaption2].[LangCode]=@LangCode) UPDATE [dbo].[ProfDbLimiterCaption2] SET [dbo].[ProfDbLimiterCaption2].[Caption]=@Caption WHERE [dbo].[ProfDbLimiterCaption2].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiterCaption2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbLimiterCaption2].[LimiterNo]=@LimiterNo AND [dbo].[ProfDbLimiterCaption2].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[ProfDbLimiterCaption2]([dbo].[ProfDbLimiterCaption2].[ProfNo],[dbo].[ProfDbLimiterCaption2].[DbVerNo],[dbo].[ProfDbLimiterCaption2].[IntfScreenNo],[dbo].[ProfDbLimiterCaption2].[LimiterNo],[dbo].[ProfDbLimiterCaption2].[LangCode],[dbo].[ProfDbLimiterCaption2].[Caption]) VALUES(@ProfNo,@DbVerNo,@ScreenNo,@LimiterNo,@LangCode,@Caption) END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify Database Limiters for a Profile', @LoggingProfile, @DbName, @LimiterID, @Seqno, @LangCode COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_SearchThemeLangAndDescription_88](@ThemeID varchar(20)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Descriptions nvarchar(max) DECLARE @Langs varchar(max) SET @Descriptions=N'' SET @Langs='' SELECT @Descriptions=@Descriptions+N'|'+[dbo].[SearchThemeCaption].[Description], @Langs=@Langs+'|'+[dbo].[SearchThemeCaption].[LangCode] FROM [dbo].[SearchThemeCaption] WITH (NOLOCK) WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID IF LEN(@Descriptions)>2 SET @Descriptions=SUBSTRING(@Descriptions, 2, LEN(@Descriptions)) IF LEN(@Langs)>2 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Descriptions+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamTblGlobalFieldValues_90] ( @ParamNo int, @LangCode varchar(10)) AS BEGIN DECLARE @ItemsTable TABLE ( ItemID VARCHAR(10), SortValue int null) INSERT INTO @ItemsTable(ItemID) SELECT [dbo].[CustomParamTblItems].[ItemID] FROM dbo.CustomParamTblItems Where [dbo].[CustomParamTblItems].[ParamNo] = @ParamNo Update @ItemsTable SET [SortValue]= convert(int,g.Value) FROM dbo.CustomParamXmlFields f INNER JOIN dbo.CustomParamTblItems i ON f.ParamNo = i.ParamNo INNER JOIN dbo.CustomParamTblGlobalDefaultValues g ON i.ItemID = g.ItemID AND f.ParamNo=g.ParamNo AND f.FieldNo=g.FieldNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.DisplayLevel like '%g%' AND f.SortField=1 SELECT f.FieldName, i.ItemID, g.Value, ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM dbo.CustomParamXmlFields f INNER JOIN dbo.CustomParamTblItems i ON f.ParamNo = i.ParamNo INNER JOIN dbo.CustomParamTblGlobalDefaultValues g ON i.ItemID = g.ItemID AND f.ParamNo=g.ParamNo AND f.FieldNo=g.FieldNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.DisplayLevel like '%g%' UNION ALL -- multi-language values SELECT a.FieldName, a.ItemID, ISNULL(g.Value,'') AS Value, ISNULL(tmpi.SortValue,a.ItemSeqNo) AS ItemSeqNo, a.FieldSeqNo FROM ( select f.ParamNo, f.FieldNo, f.FieldName, i.ItemID, i.SeqNo AS ItemSeqNo, f.SeqNo AS FieldSeqNo from dbo.CustomParamXmlFields f INNER JOIN dbo.CustomParamTblItems i ON f.ParamNo = i.ParamNo where f.ParamNo = @ParamNo AND f.DisplayLevel like '%g%' AND f.FieldType = 'SM' ) a LEFT OUTER JOIN dbo.CustomParamTblGlobalDefaultSMValues g ON a.ParamNo=g.ParamNo AND a.FieldNo=g.FieldNo AND g.LangCode =@LangCode and a.ItemID=g.ItemID INNER JOIN @ItemsTable tmpi ON a.ItemID = tmpi.ItemID UNION ALL -- database dependancy SELECT f.FieldName, i.ItemID, CASE WHEN dbo.EAIF_GetCustomTblParamDbs_90(@ParamNo, i.ItemID, f.FieldNo) = '' Then 'not set' ELSE dbo.EAIF_GetCustomTblParamDbs_90(@ParamNo, i.ItemID, f.FieldNo) END AS Value, ISNULL(tmpi.SortValue, i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM dbo.CustomParamXmlFields f INNER JOIN dbo.CustomParamTblItems i ON f.ParamNo = i.ParamNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo = @ParamNo AND f.DisplayLevel like '%g%' AND f.FieldType = 'SD' Order by ItemSeqNo, [i].[ItemID], FieldSeqNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceCaptions_161] ( @InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode) BEGIN RAISERROR('The Language ''%s'' does not exist.',16,-1,@LangCode) RETURN END EXEC [dbo].[EAUI_GetInterfaceCaptions_70] @InterfaceID, @Version, @LangCode END
CREATE PROCEDURE dbo.EAIP_GetInterfaceToolbarItem_161 (@InterfaceID VARCHAR(10), @Version VARCHAR(10), @IntfToolbarItemName VARCHAR(50) , @LangCode varchar(10)) AS BEGIN DECLARE @IntfToolbarItem INT DECLARE @InterfaceName VARCHAR(120) IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @IntfToolbarItemName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version) BEGIN RAISERROR('The ToolbarItem:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @IntfToolbarItemName, @InterfaceID, @Version) RETURN END IF @LangCode IS NULL OR @LangCode='' OR (NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version AND [dbo].[InterfaceUserLangList].[LangCode]=@LangCode)) SET @LangCode='en' SELECT @InterfaceName = [dbo].[InterfaceLanguage].[InterfaceName] + ' (' + [dbo].[InterfaceLanguage].[InterfaceID] + ' - ' + [dbo].[InterfaceLanguage].[Version] + ')' FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode SELECT @IntfToolbarItem=[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @IntfToolbarItemName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version SELECT @InterfaceName InterfaceName, it.ItemName,it.Category,it.Alignment,it.Image, ISNULL(itc.Caption, N'') AS Caption FROM [dbo].[InterfaceToolbar] it LEFT OUTER JOIN [dbo].[InterfaceToolbarCaption] itc ON it.IntfToolbarItem = itc.IntfToolbarItem AND [itc].[LangCode]=@LangCode WHERE it.IntfToolbarItem=@IntfToolbarItem END
CREATE PROCEDURE [dbo].[EAUI_ShareCollection_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ColID nvarchar(50), @ColName nvarchar(50), @Notes nvarchar(255), @SharedFrom int) AS BEGIN DECLARE @NewColNo int EXEC [dbo].[EAIPO_AddCollection_70] @CustID, @ColID, @ColName, 0, @Notes, @SharedFrom, 0, @ColNo=@NewColNo OUTPUT EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Share Collection', @CustID, @ColID, @ColName, @Notes END
CREATE FUNCTION [dbo].[EAIF_GetConfigParamScalarValue_70](@TargetNo int, @ParamLevel char(1), @ParamNo int) RETURNS nvarchar(2000) AS BEGIN DECLARE @RetValue nvarchar(2000) SET @RetValue='' SELECT @RetValue=[dbo].[ConfigParamScalarValues].[ParamValue] FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[ConfigParamScalarValues].[ParamLevel]=@ParamLevel AND [dbo].[ConfigParamScalarValues].[ParamNo]=@ParamNo RETURN @RetValue END
CREATE PROCEDURE [dbo].[EAUI_DeleteLocalDates_70](@UserID nvarchar(20), @UserIP varchar(15), @ColNo int, @TitleNo int) AS BEGIN EXEC [dbo].[EAIP_DeleteLocalDates_70] @ColNo, @TitleNo DECLARE @LogColName nvarchar(255) DECLARE @LogTitleName nvarchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo), @LogTitleName = dbo.EAIF_GetLogTitleName_70(@TitleNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Delete Local Dates', @LogColName, @LogTitleName END
CREATE PROCEDURE [dbo].[EAIP_DeleteLocalDates_70] (@ColNo int, @TitleNo int ) AS BEGIN DELETE FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo] = @ColNo AND [dbo].[LocalDate].[TitleNo] = @TitleNo IF (SELECT [dbo].[Collection].[AddAlternates] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo]=@ColNo) = 1 DELETE FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo] = @ColNo AND [dbo].[LocalDate].[TitleNo] IN ( SELECT [dbo].[TitleLink].[TgtTitleNo] FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@TitleNo) END
CREATE PROCEDURE [dbo].[EAUI_GetProfileScalarParamName_100](@ParamNo int) AS SELECT [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo
CREATE PROCEDURE [dbo].[EAUI_AddProfileBrangingToAllSites_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @Branding varchar(100)) AS BEGIN DECLARE @ParamBrandingNo int SELECT @ParamBrandingNo = dbo.EAIF_GetCustomParamNumber_70('profBranding','P') BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Add Branding to all profiles for all sites in consortia',@CustID,@Branding DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]= @ParamBrandingNo AND [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT d.ProfNo FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Profile] d ON a.ParentID=@CustID AND a.ChildID = d.CustID) INSERT INTO [dbo].[CustomParamScalarValues] ([dbo].[CustomParamScalarValues].[TargetNo], [dbo].[CustomParamScalarValues].[ParamLevel], [dbo].[CustomParamScalarValues].[ParamNo], [dbo].[CustomParamScalarValues].[ParamValue]) SELECT d.ProfNo, 'P', @ParamBrandingNo, @Branding FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Profile] d ON a.ChildID = d.CustID WHERE a.ParentID = @CustID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPLR_GetCollections_103]( @DbName VARCHAR(10), @SegName VARCHAR(10), @DbLabel VARCHAR(10), @RefresherTime VARCHAR(14)=null) AS BEGIN SET NOCOUNT ON DECLARE @EonlineBitMask int, @CrossRefBitMask int, @EPFullTextBitMask int, @CustomLinkBitMask int, @SmartLinkBitMask int, @HiddenBitMask int, @ExcludeBitMask int, @DirtyBitMask int, @AutoRecreateBitMask int, @ForceRecreateBitMask int, @AddAlternatesBitMask int -- Should be a power of 2 (4,8,16,32, etc) SELECT @EonlineBitMask = 1, @CrossRefBitMask =2, @EPFullTextBitMask =4, @CustomLinkBitMask =8, @SmartLinkBitMask =16, @HiddenBitMask =32, @ExcludeBitMask =64, @DirtyBitMask =128, @AutoRecreateBitMask =256, @ForceRecreateBitMask =512, @AddAlternatesBitMask =1024 CREATE TABLE #JobsTemp ( [ColNo] [INT] ,[ColID] [varchar] (50) ,[Eonline] [bit]); DECLARE @RefresherTimeDT DATETIME IF @RefresherTime IS NULL OR LEN(@RefresherTime)<>14 OR Substring(@RefresherTime, 1, 4)='0000' SET @RefresherTimeDT = CONVERT(DATETIME, '19000101') ELSE BEGIN SET @RefresherTimeDT = CONVERT(DATETIME,SUBSTRING(@RefresherTime, 1, 8) + ' ' + SUBSTRING(@RefresherTime, 9, 2) + ':' + SUBSTRING(@RefresherTime, 11, 2) + ':' + SUBSTRING(@RefresherTime, 13, 2)) IF @@ERROR <> 0 SET @RefresherTimeDT = CONVERT(DATETIME, '19000101') END DECLARE @DbVerNo int SET @DbVerNo= dbo.EAIF_GetDbVerNo_70(@DbName, @DbLabel) DECLARE @DbListWithSubsetDb table (DbVerNo int, DbName VARCHAR(10) primary key (DbVerNo)); IF (@DbVerNo IS NOT NULL) BEGIN INSERT INTO @DbListWithSubsetDb(DbVerNo, DbName) VALUES (@DbVerNo, @DbName); INSERT INTO @DbListWithSubsetDb(DbVerNo, DbName) SELECT e.DbVerNo, e.DbName FROM [dbo].[DbList] e INNER JOIN [dbo].[DbSubset] ds on ds.SubsetDbVerNo = e.DbVerNo WHERE ds.PhysDbVerNo = @DbVerNo; END ELSE BEGIN -- invalid dataset return empty result set SELECT 1 AS CustID, 1 AS ColID, 1 AS ColNo, 1 AS ColTimeStamp, 1 AS Exclude, 1 AS FlagsBitMap WHERE 1 <> 1 RETURN END -- Check DB and associated subset DBs as well IF NOT EXISTS(SELECT 1 FROM [dbo].[DbSegment] WITH(NOLOCK) WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@SegName) BEGIN SELECT 1 AS CustID, 1 AS ColID, 1 AS ColNo, 1 AS ColTimeStamp, 1 AS Exclude, 1 AS FlagsBitMap WHERE 1 <> 1 -- empty result set RETURN END -- EJS and Customer Collections -- RJ: EADM-3240 Even though DbLabel was passed in, it should be ignored and collections should be -- returned for customers that may have passed dbname attached to a profile -- irrespective of label. (This is to keep it same as EPLR_GetCollections_88 as requested by users) INSERT INTO #JobsTemp SELECT DISTINCT c.ColNo , c.ColID , c.Eonline FROM [dbo].[Collection] c with (nolock) INNER JOIN [dbo].[Profile] p with (nolock) ON p.CustID = c.CustID INNER JOIN [dbo].[ProfDatabase] d with (nolock) ON p.ProfNo = d.ProfNo INNER JOIN [dbo].[DbList] l with (nolock) ON l.DbVerNo = d.DbVerNo INNER JOIN @DbListWithSubsetDb dls ON dls.DbName = l.DbName WHERE --l.DbName = @DbName AND (c.LastUpdateDate > @RefresherTimeDT) AND (c.AutoRecreate=1 OR c.ForceRecreate=1 OR c.Eonline=1 OR c.CrossRef=1) AND c.IsDeleted = 0 -- EJS ppv collection: if EJS is a target for this database (or the the current database is EOAH as Birmingham uses this local: -- this is a hack as we will not be marking EOAH as a source database for XUH) DECLARE @LoadPPV INT SET @LoadPPV = 0 IF (@DbName = 'eoah') -- eoah wil never be subsetdb SET @LoadPPV = 1 ELSE -- Check DB and associated subset DBs as well IF EXISTS(SELECT 1 FROM [dbo].[DbSourceTarget] st WITH(NOLOCK) INNER JOIN @DbListWithSubsetDb d ON d.DbVerNo = st.SourceDbNo WHERE TargetType='ejs') SET @LoadPPV = 1 IF @LoadPPV = 1 INSERT INTO #JobsTemp SELECT c.ColNo , c.ColID , c.Eonline FROM [dbo].[Collection] c WITH(NOLOCK) WHERE c.CustID='system' AND c.ColID='ejs-ppv' AND c.LastUpdateDate>@RefresherTimeDT AND c.IsDeleted = 0 SELECT c.CustID , c.ColID , CASE WHEN (c.SharedFrom<>0) THEN c.SharedFrom ELSE c.ColNo END as ColNo , dbo.EAIF_EplDateTimeToString(c.LastUpdateDate) as ColTimeStamp , c.Exclude , @EonlineBitMask * c.Eonline + @CrossRefBitMask * c.CrossRef + @EPFullTextBitMask * c.EPFullText + @CustomLinkBitMask * c.CustomLink + @SmartLinkBitMask * c.SmartLink + @HiddenBitMask * c.Hidden + @ExcludeBitMask * c.Exclude + @DirtyBitMask * c.Dirty + @AutoRecreateBitMask * c.AutoRecreate + @ForceRecreateBitMask * c.ForceRecreate + @AddAlternatesBitMask * c.AddAlternates AS FlagsBitMap FROM ( SELECT DISTINCT coll.ColNo FROM #JobsTemp jt INNER JOIN dbo.Collection coll ON jt.ColNo = coll.ColNo WHERE (coll.CustID<>'system' OR (coll.CustID='system' AND coll.ColID NOT LIKE 'ep-%')) AND coll.Eonline=0 UNION SELECT DISTINCT coll.ColNo FROM dbo.Collection coll INNER JOIN #JobsTemp jt ON coll.ColID = jt.ColID AND jt.Eonline=1 WHERE coll.CustID='eonline' AND coll.SharedFrom=0 AND coll.LastUpdateDate > @RefresherTimeDT AND coll.IsDeleted = 0 ) jobs INNER JOIN dbo.Collection c ON jobs.ColNo = c.ColNo ORDER BY c.CustID, c.ColID; RETURN END
--sql content merged from file: \StoredProcedures\EAIP_AddCustomParam_70.sql CREATE PROCEDURE [dbo].[EAIP_AddCustomParam_70] ( @ParamLevel char (1), @ParamName varchar(100), @ParamType char(1), @InterfaceID varchar(10) = NULL, @Version varchar(10) = NULL, @DefValue nvarchar(2000) = NULL, @UpdateForNewParamOnly BIT = 1, @EditLevel smallint = 2 ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName) INSERT INTO [dbo].[CustomParamList]([dbo].[CustomParamList].[ParamLevel], [dbo].[CustomParamList].[ParamName], [dbo].[CustomParamList].[ParamType], [dbo].[CustomParamList].[WebClient], [dbo].[CustomParamList].[WinClient], [dbo].[CustomParamList].[CharClient], [dbo].[CustomParamList].[Z3950Client],[dbo].[CustomParamList].[DefValue]) VALUES (@ParamLevel, @ParamName, @ParamType, 1,0,0,0,@DefValue) ELSE BEGIN IF @UpdateForNewParamOnly = 1 BEGIN RETURN END ELSE BEGIN UPDATE [dbo].[CustomParamList] SET [dbo].[CustomParamList].[ParamLevel] = @ParamLevel, [dbo].[CustomParamList].[ParamType] = @ParamType, [dbo].[CustomParamList].[DefValue] = @DefValue WHERE [dbo].[CustomParamList].[ParamName] = @ParamName END END IF @InterfaceID IS NULL RETURN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,@ParamLevel) -- If the Interface Version is provided, Add specific InterfaceID/Version combination IF (@Version IS NOT NULL) BEGIN IF NOT EXISTS ( SELECT 1 FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[ParamNo] = @ParamNo AND [dbo].[InterfaceParamList].[Version]=@Version AND [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID) INSERT INTO [dbo].[InterfaceParamList]([dbo].[InterfaceParamList].[InterfaceID],[dbo].[InterfaceParamList].[Version],[dbo].[InterfaceParamList].[ParamNo],[dbo].[InterfaceParamList].[EditLevel]) SELECT [dbo].[InterfaceVersion].[InterfaceID],[dbo].[InterfaceVersion].[Version],@ParamNo,@EditLevel FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[Version] = @Version AND [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID ELSE UPDATE [dbo].[InterfaceParamList] SET [dbo].[InterfaceParamList].[EditLevel] =@EditLevel WHERE [dbo].[InterfaceParamList].[ParamNo]= @ParamNo AND [dbo].[InterfaceParamList].[Version]=@Version AND [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID IF @DefValue IS NOT NULL BEGIN IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[ParamNo] = @ParamNo AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[InterfaceID] = @InterfaceID) BEGIN INSERT INTO [dbo].[CustomParamDefaults] SELECT @ParamNo, [a].[InterfaceID], [a].[Version],b.MarketID,'S',@DefValue, '',null FROM [dbo].[InterfaceParamList] AS a CROSS JOIN EASUPPORT.dbo.MarketList AS b WHERE a.ParamNo= @ParamNo AND [a].[Version]=@Version AND [a].[InterfaceID] = @InterfaceID INSERT INTO [dbo].[CustomParamDefaults] SELECT @ParamNo, [a].[InterfaceID], [a].[Version],b.MarketID,'T',@DefValue, '',null FROM [dbo].[InterfaceParamList] AS a CROSS JOIN EASUPPORT.dbo.MarketList AS b WHERE a.ParamNo= @ParamNo AND [a].[Version]=@Version AND [a].[InterfaceID] = @InterfaceID END ELSE UPDATE [dbo].[CustomParamDefaults] SET [DefValue]=@DefValue FROM [dbo].[CustomParamDefaults] AS d INNER JOIN [dbo].[InterfaceParamList] AS a ON d.ParamNo=a.ParamNo AND d.InterfaceID=a.InterfaceID AND d.Version=a.Version INNER JOIN EASUPPORT.dbo.MarketList AS b ON d.MarketID= b.MarketID WHERE d.ParamNo=@ParamNo AND a.Version=@Version AND a.InterfaceID = @InterfaceID END -- END of @DefValue is not NULL clause END -- END of @Version is not NULL clause ELSE -- If the Interface Version is NULL, Add all versions for the given Interface ID BEGIN IF NOT EXISTS ( SELECT * FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[ParamNo] = @ParamNo AND [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID) INSERT INTO [dbo].[InterfaceParamList]([dbo].[InterfaceParamList].[InterfaceID],[dbo].[InterfaceParamList].[Version],[dbo].[InterfaceParamList].[ParamNo],[dbo].[InterfaceParamList].[EditLevel]) SELECT [dbo].[InterfaceVersion].[InterfaceID],[dbo].[InterfaceVersion].[Version],@ParamNo,@EditLevel FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID ELSE UPDATE [dbo].[InterfaceParamList] SET [dbo].[InterfaceParamList].[EditLevel] =@EditLevel WHERE [dbo].[InterfaceParamList].[ParamNo]= @ParamNo AND [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID IF @DefValue IS NOT NULL BEGIN IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[ParamNo] = @ParamNo AND [dbo].[CustomParamDefaults].[InterfaceID] = @InterfaceID) BEGIN INSERT INTO [dbo].[CustomParamDefaults] SELECT @ParamNo, [a].[InterfaceID], [a].[Version],b.MarketID,'S',@DefValue, '',null FROM [dbo].[InterfaceParamList] AS a CROSS JOIN EASUPPORT.dbo.MarketList AS b WHERE a.ParamNo= @ParamNo AND [a].[InterfaceID] = @InterfaceID INSERT INTO [dbo].[CustomParamDefaults] SELECT @ParamNo, [a].[InterfaceID], [a].[Version],b.MarketID,'T',@DefValue, '',null FROM [dbo].[InterfaceParamList] AS a CROSS JOIN EASUPPORT.dbo.MarketList AS b WHERE a.ParamNo= @ParamNo AND a.InterfaceID = @InterfaceID END ELSE UPDATE [dbo].[CustomParamDefaults] SET [DefValue]=@DefValue FROM [dbo].[CustomParamDefaults] d INNER JOIN [dbo].[InterfaceParamList] a ON d.ParamNo=a.ParamNo AND d.InterfaceID=a.InterfaceID AND d.Version=a.Version INNER JOIN EASUPPORT.dbo.MarketList b ON d.MarketID= b.MarketID WHERE d.ParamNo=@ParamNo AND a.InterfaceID = @InterfaceID END --End Of @DefValue IS NOT NULL END -- END of @Version is NULL END
CREATE PROCEDURE [dbo].[EAUI_GetInternalCustomerListBrowseByCustName_70](@CustName nvarchar(100)) AS BEGIN SELECT [dbo].[Customer].[CustName], [dbo].[Customer].[CustID], CASE [dbo].[Customer].[CustType] WHEN 'I' THEN 'Internal' WHEN 'P' THEN 'Partner' END AS CustType FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustType] IN ('I','P') AND [dbo].[Customer].[CustName] like @CustName + '%' AND [dbo].[Customer].[CustID]<>'system' END
Create Procedure [dbo].[EATL_GetMultiDbSTS_90] @LangCode varchar(10) as select [dbo].[MultiDbSTSCaption].[MultiDBSTSID], [dbo].[MultiDbSTSCaption].[Caption], [dbo].[MultiDbSTSCaption].[MouseOverText] from [dbo].[MultiDbSTSCaption] where [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode
CREATE PROCEDURE [dbo].[EPCS_GetDBAuthorities_70]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN SET NOCOUNT ON DECLARE @DbVerNo int SET @DbVerNo = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) SELECT d.DbVerNo, d.DbName, d.DbLabel, d.DbType as DbTypeNo, c.Description AS DbType, b.Description as ConType, d.DisplayName, b.ContentType,d.IncludeWhenAutoAdd FROM [dbo].[DbAuthority] a INNER JOIN [dbo].[DbList] d ON a.AuthDbVerNo = d.DbVerNo INNER JOIN [dbo].[DbTypeList] c ON d.DbType= c.DbType INNER JOIN [dbo].[DbContentList] b ON d.ContentType = b.ContentType WHERE a.MainDbVerNo = @DbVerNo AND d.WebClient=1 ORDER BY a.SeqNo SELECT c.DbName, c.DbLabel, b.MultiDbAuthID FROM [dbo].[DbAuthority] a INNER JOIN [dbo].[DBMultiDbAuthList] b ON a.AuthDbVerNo = b.DbVerNo INNER JOIN [dbo].[DbList] c ON a.AuthDbVerNo = c.DbVerNo WHERE a.MainDbVerNo = @DbVerNo AND c.WebClient=1 ORDER BY a.SeqNo END
Create Procedure [dbo].[EAUI_GetFeatureCategoryDescription_104] (@CategoryID varchar(20)) as Select [dbo].[FeatureCategory].[Description] from [dbo].[FeatureCategory] where [dbo].[FeatureCategory].[CategoryID]=@CategoryID
CREATE PROCEDURE [dbo].[EAIP_UpdateCollectionForDeletion_191](@ColNo int) AS BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[IsDeleted]=1 WHERE [dbo].[Collection].[ColNo] = @ColNo END
CREATE PROCEDURE dbo.EAUI_UpdateProfileDbLimiterDbOrder_144( @UserID nvarchar(20),@UserIP varchar(15),@ProfNo int,@DbVerNo int, @LimiterNo int, @NewSeqNo varchar(4),@ScreenNo int)AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbName varchar(10) SELECT @DbName = [dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @LimiterID varchar(10) SELECT @LimiterID=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo BEGIN TRANSACTION UPDATE [dbo].[ProfDbLimiterDbOrder] SET [dbo].[ProfDbLimiterDbOrder].[SeqNo]=convert(int,@NewSeqNo) Where [dbo].[ProfDbLimiterDbOrder].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiterDbOrder].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiterDbOrder].[LimiterNo]=@LimiterNo AND [dbo].[ProfDbLimiterDbOrder].[IntfScreenNo]=@ScreenNo IF @@ROWCOUNT=0 INSERT INTO [dbo].[ProfDbLimiterDbOrder] ([dbo].[ProfDbLimiterDbOrder].[ProfNo],[dbo].[ProfDbLimiterDbOrder].[DbVerNo],[dbo].[ProfDbLimiterDbOrder].[IntfScreenNo],[dbo].[ProfDbLimiterDbOrder].[LimiterNo],[dbo].[ProfDbLimiterDbOrder].[SeqNo]) SELECT @ProfNo,@DbVerNo,ins.IntfScreenNo,@LimiterNo,@NewSeqNo FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[Profile] p ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version WHERE p.ProfNo=@ProfNo AND ins.IntfScreenNo=@ScreenNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Profile Db Limiter DbOrder', @ProfLogName, @DbName, @LimiterID, @NewSeqNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_SearchThemeLangAndImgAltTexts_83](@ThemeID varchar(20)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @ImageAltTexts nvarchar(max) DECLARE @Langs varchar(max) SET @ImageAltTexts=N'' SET @Langs='' SELECT @ImageAltTexts=@ImageAltTexts+N'|'+[dbo].[SearchThemeCaption].[ImageAltText], @Langs=@Langs+'|'+[dbo].[SearchThemeCaption].[LangCode] FROM [dbo].[SearchThemeCaption] WITH (NOLOCK) WHERE [dbo].[SearchThemeCaption].[ThemeID]='AB' AND [dbo].[SearchThemeCaption].[ImageAltText] <>N'' IF LEN(@ImageAltTexts)>2 SET @ImageAltTexts=SUBSTRING(@ImageAltTexts, 2, LEN(@ImageAltTexts)) IF LEN(@Langs)>2 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @ImageAltTexts+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamTblInterfaceFieldValues_90] ( @ParamNo int, @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20),@LangCode varchar(10)) AS BEGIN DECLARE @ItemsTable TABLE ( ItemID VARCHAR(10), SortValue int null) INSERT INTO @ItemsTable(ItemID) SELECT [dbo].[CustomParamTblItems].[ItemID] FROM [dbo].[CustomParamTblItems] Where [dbo].[CustomParamTblItems].[ParamNo] = @ParamNo Update @ItemsTable SET [SortValue]= CONVERT (int,ISNULL(iv.Value,g.Value)) FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON f.ParamNo=g.ParamNo AND f.FieldNo=g.FieldNo AND i.ItemID = g.ItemID LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.SortField=1 SELECT f.FieldName, i.ItemID, ISNULL(iv.Value,g.Value) AS VALUE, ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON f.ParamNo=g.ParamNo AND i.ItemID = g.ItemID AND f.FieldNo=g.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.DisplayLevel like '%i%' AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) UNION ALL -- multi-language values SELECT pf.FieldName, pf.ItemID, ISNULL(iv.Value,g.Value) AS VALUE, ISNULL(tmpi.SortValue,pf.ItemSeqNo) AS ItemSeqNo, pf.FieldSeqNo FROM ( select f.ParamNo, i.ItemID, f.FieldNo, f.FieldName, i.SeqNo AS ItemSeqNo, f.SeqNo AS FieldSeqNo from [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version where f.ParamNo=@ParamNo AND f.DisplayLevel like '%i%' AND f.FieldType='SM' AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) ) pf LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] g ON pf.ParamNo=g.ParamNo AND pf.ItemID = g.ItemID AND pf.FieldNo=g.FieldNo AND g.LangCode =@LangCode LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON pf.ParamNo=iv.ParamNo AND pf.ItemID=iv.ItemID AND pf.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.LangCode=@LangCode AND iv.MarketID=@MarketID INNER JOIN @ItemsTable tmpi ON pf.ItemID = tmpi.ItemID WHERE (g.Value is not null OR iv.Value is not null) UNION ALL -- database dependancy SELECT f.FieldName, i.ItemID, dbo.EAIF_GetCustomTblParamDbs_90(@ParamNo, i.ItemID, f.FieldNo) AS Value, ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.DisplayLevel like '%i%' AND f.FieldType='SD' AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) Order by ItemSeqNo, [i].[ItemID], FieldSeqNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceParamDetails_161] ( @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ParamName VARCHAR(100), @MarketID VARCHAR(20) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName) BEGIN RAISERROR('The Parameter %s does not exist.', 16,-1, @ParamName) RETURN END IF @MarketID IS NOT NULL AND LEN(@MarketID)>0 BEGIN IF NOT EXISTS (SELECT 1 FROM EASUPPORT.dbo.MarketList WHERE [EASUPPORT].[dbo].[MarketList].[MarketID]=@MarketID) BEGIN RAISERROR('The Market ''%s'' does not exist.', 16,-1, @MarketID) RETURN END END SELECT CPL.ParamName, CPED.PromptText AS Description, CASE WHEN CPL.ParamName IN ('profz3950targets','profCustomLinks') THEN 'X' WHEN c.Description IS NULL THEN 'T' ELSE CPL.ParamType END AS ParamType, CPL.ParamNo, DisplayLink=case When CPL.ParamType in ('N', 'S', 'B', 'M') Then 1 When CPL.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where CPL.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where CPL.ParamNo=f.ParamNo) then 2 When CPL.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where CPL.ParamNo=f.ParamNo) then 3 Else 0 End FROM [dbo].[InterfaceParamList] IPL JOIN [dbo].[CustomParamList] CPL ON IPL.ParamNo = CPL.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON CPL.ParamType=c.FieldCode AND c.FieldName='ParamType' JOIN [dbo].[CustomParamEditDetail] CPED ON CPL.ParamNo = CPED.ParamNo WHERE [IPL].[InterfaceID] = @InterfaceID AND [IPL].[Version] = @Version AND CPL.ParamName = @ParamName EXEC [dbo].[EAIP_GetMarkets_161] END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceToolbarItemDatabaseToAttach_161] ( @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ToolbarName VARCHAR(50) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @IntfToolbarItem INT=(SELECT [dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @ToolbarName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version) IF @IntfToolbarItem IS NULL BEGIN RAISERROR('The ToolbarItem:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @ToolbarName, @InterfaceID, @Version) RETURN END SELECT db.DbVerNo, db.DisplayName+N' ('+db.DbName+N')' AS Db FROM [dbo].[DbList] db LEFT OUTER JOIN [dbo].[InterfaceToolbarDb] tdb ON tdb.DbVerNo = db.DbVerNo AND tdb.IntfToolbarItem =@IntfToolbarItem WHERE db.DbLabel='live' AND db.DbType <>6 AND [db].[DbType]<>8 AND tdb.DbVerNo IS NULL ORDER BY db.DisplayName END
CREATE PROCEDURE [dbo].[EAUI_UpdateCfgApplication_70]( @UserID nvarchar(20), @UserIP varchar(15), @ApplicationNo int, @ApplicationID varchar(20), @Description varchar(255)) AS BEGIN UPDATE [dbo].[ConfigApplication] SET [dbo].[ConfigApplication].[ApplicationID] = @ApplicationID, [dbo].[ConfigApplication].[Description] = @Description WHERE [dbo].[ConfigApplication].[ApplicationNo] = @ApplicationNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Edit Application', @ApplicationID, @Description END
CREATE FUNCTION dbo.EAIF_GetConfigServerNo_70(@ApplicationID varchar(20), @URI varchar(255)) RETURNS int AS BEGIN RETURN( SELECT [b].[ServerNo] FROM dbo.ConfigApplication AS a INNER JOIN dbo.ConfigServer AS b ON a.ApplicationNo = b.ApplicationNo WHERE a.ApplicationID=@ApplicationID AND b.ServerURI=@URI ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteLocalTitle_70](@UserID nvarchar(20), @UserIP varchar(15), @ColNo int, @TitleNo int ) as BEGIN DECLARE @LogColName nvarchar(61) DECLARE @LogTitleName nvarchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo), @LogTitleName = dbo.EAIF_GetLogTitleName_70(@TitleNo) EXEC [dbo].[EAIP_DeleteLocalTitle_70] @ColNo, @TitleNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Delete Local Title', @LogColName, @LogTitleName UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() --, AutoRecreate=1 WHERE ([dbo].[Collection].[ColNo]=@ColNo OR [dbo].[Collection].[SharedFrom] = @ColNo) AND [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAIP_DeleteLocalTitle_70] (@ColNo int, @TitleNo int ) AS BEGIN DELETE FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo] = @ColNo AND [dbo].[LocalTitle].[TitleNo] = @TitleNo IF (SELECT [dbo].[Collection].[AddAlternates] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo]=@ColNo) = 1 DELETE FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo] = @ColNo AND [dbo].[LocalTitle].[TitleNo] IN ( SELECT [dbo].[TitleLink].[TgtTitleNo] FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@TitleNo) END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileScalarParamType_912.sql Create Procedure [dbo].[EAUI_GetProfileScalarParamType_912](@ParamNo int) as Select [dbo].[CustomParamList].[ParamType] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamNo]=@ParamNo
CREATE PROCEDURE [dbo].[EAUI_AddProfileBrangingToSite_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @Branding varchar(100)) AS BEGIN DECLARE @ParamBrandingNo int SELECT @ParamBrandingNo = dbo.EAIF_GetCustomParamNumber_70('profBranding','P') BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Add Branding to all profiles for current site',@CustID,@Branding DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]= @ParamBrandingNo AND [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT a.ProfNo FROM [dbo].[Profile] a WHERE a.CustID = @CustID) INSERT INTO [dbo].[CustomParamScalarValues] ([dbo].[CustomParamScalarValues].[TargetNo], [dbo].[CustomParamScalarValues].[ParamLevel], [dbo].[CustomParamScalarValues].[ParamNo], [dbo].[CustomParamScalarValues].[ParamValue]) SELECT a.ProfNo, 'P', @ParamBrandingNo, @Branding FROM [dbo].[Profile] a WHERE a.CustID = @CustID COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EPLR_GetCollections_88.sql CREATE PROCEDURE [dbo].[EPLR_GetCollections_88]( @DbName VARCHAR(10), @SegName VARCHAR(10), @DbLabel VARCHAR(10), @RefresherTime VARCHAR(14)=null) AS BEGIN SET NOCOUNT ON DECLARE @EonlineBitMask int, @CrossRefBitMask int, @EPFullTextBitMask int, @CustomLinkBitMask int, @SmartLinkBitMask int, @HiddenBitMask int, @ExcludeBitMask int, @DirtyBitMask int, @AutoRecreateBitMask int, @ForceRecreateBitMask int, @AddAlternatesBitMask int -- Should be a power of 2 (4,8,16,32, etc) SELECT @EonlineBitMask = 1, @CrossRefBitMask =2, @EPFullTextBitMask =4, @CustomLinkBitMask =8, @SmartLinkBitMask =16, @HiddenBitMask =32, @ExcludeBitMask =64, @DirtyBitMask =128, @AutoRecreateBitMask =256, @ForceRecreateBitMask =512, @AddAlternatesBitMask =1024 DECLARE @JobsTemp table ( [CustID] [varchar] (10), [ColID] [varchar] (50), [ColNo] [INT], [ColTimeStamp] [char] (17), [Exclude] [bit], [EOnline] [bit], [CrossRef] [bit], [EPFullText] [bit], [CustomLink] [bit], [SmartLink] [bit], [Hidden] [bit], [Dirty] [bit], [AutoRecreate] [bit], [ForceRecreate] [bit], [AddAlternates] [bit]) DECLARE @Jobs table ( [CustID] [varchar] (10), [ColID] [varchar] (50), [ColNo] [INT], [ColTimeStamp] [char] (17), [Exclude] [bit], [EOnline] [bit], [CrossRef] [bit], [EPFullText] [bit], [CustomLink] [bit], [SmartLink] [bit], [Hidden] [bit], [Dirty] [bit], [AutoRecreate] [bit], [ForceRecreate] [bit], [AddAlternates] [bit]) DECLARE @RefresherTimeDT DATETIME IF @RefresherTime IS NULL OR LEN(@RefresherTime)<>14 OR Substring(@RefresherTime, 1, 4)='0000' SET @RefresherTimeDT = CONVERT(DATETIME, '19000101') ELSE BEGIN SET @RefresherTimeDT = CONVERT(DATETIME,SUBSTRING(@RefresherTime, 1, 8) + ' ' + SUBSTRING(@RefresherTime, 9, 2) + ':' + SUBSTRING(@RefresherTime, 11, 2) + ':' + SUBSTRING(@RefresherTime, 13, 2)) IF @@ERROR <> 0 SET @RefresherTimeDT = CONVERT(DATETIME, '19000101') END DECLARE @ApplicationNo INT SELECT @ApplicationNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WITH(NOLOCK) WHERE [dbo].[ConfigApplication].[ApplicationID] = 'EPLRService' DECLARE @DbVerNo int SET @DbVerNo= dbo.EAIF_GetDbVerNo_70(@DbName, @DbLabel) IF NOT EXISTS(SELECT 1 FROM [dbo].[DbSegment] WITH(NOLOCK) WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@SegName) BEGIN SELECT CustID, ColID, ColNo, ColTimeStamp, Exclude, 0 AS FlagsBitMap from @Jobs -- empty result set RETURN END -- EJS and Customer Collections INSERT INTO @JobsTemp SELECT c.CustID, [c].[ColID], CASE WHEN (c.SharedFrom<>0) THEN c.SharedFrom ELSE c.ColNo END as ColNo, dbo.EAIF_EplDateTimeToString(c.LastUpdateDate) as ColTimeStamp, [c].[Exclude] as ExFlag, c.Eonline, c.CrossRef, c.EPFullText, c.CustomLink, c.SmartLink, c.Hidden, c.Dirty, c.AutoRecreate, c.ForceRecreate, c.AddAlternates FROM [dbo].[Profile] p with (nolock) INNER JOIN [dbo].[ProfDatabase] d with (nolock) ON p.ProfNo = d.ProfNo INNER JOIN [dbo].[DbList] l with (nolock) ON l.DbVerNo = d.DbVerNo INNER JOIN [dbo].[Collection] c with (nolock) ON p.CustID = c.CustID WHERE l.DbName = @DbName AND (c.LastUpdateDate > @RefresherTimeDT) AND (c.AutoRecreate=1 OR c.ForceRecreate=1 OR c.Eonline=1 OR c.CrossRef=1) AND c.IsDeleted = 0 Group By c.CustID, c.ColID, CASE WHEN (c.SharedFrom<>0) THEN c.SharedFrom ELSE c.ColNo END, c.LastUpdateDate, c.Exclude, c.Eonline, c.CrossRef, c.EPFullText, c.CustomLink, c.SmartLink, c.Hidden, c.Dirty, c.AutoRecreate, c.ForceRecreate, c.AddAlternates -- EJS ppv collection: if EJS is a target for this database (or the the current database is EOAH as Birmingham uses this local: -- this is a hack as we will not be marking EOAH as a source database for XUH) DECLARE @LoadPPV INT SET @LoadPPV = 0 IF (@DbName='eoah') SET @LoadPPV = 1 ELSE IF (EXISTS (SELECT 1 FROM [dbo].[DbSourceTarget] WITH(NOLOCK) WHERE [dbo].[DbSourceTarget].[SourceDbNo]=@DbVerNo AND [dbo].[DbSourceTarget].[TargetType]='ejs')) SET @LoadPPV = 1 IF @LoadPPV = 1 INSERT INTO @JobsTemp SELECT c.CustID, [c].[ColID], CASE WHEN (c.SharedFrom<>0) THEN c.SharedFrom ELSE c.ColNo END as ColNo, dbo.EAIF_EplDateTimeToString([c].[LastUpdateDate]) as ColTimeStamp, [c].[Exclude] as ExFlag, c.Eonline, c.CrossRef, c.EPFullText, c.CustomLink, c.SmartLink, c.Hidden, c.Dirty, c.AutoRecreate, c.ForceRecreate, c.AddAlternates FROM [dbo].[Collection] c WITH(NOLOCK) WHERE c.CustID='system' AND c.ColID='ejs-ppv' AND c.LastUpdateDate>@RefresherTimeDT AND c.IsDeleted = 0 INSERT INTO @Jobs SELECT DISTINCT CustID, ColID, ColNo, ColTimeStamp,Exclude, EOnline, CrossRef, EPFullText, CustomLink, SmartLink, Hidden, Dirty, AutoRecreate, ForceRecreate, AddAlternates FROM @JobsTemp WHERE (CustID<>'system' OR (CustID='system' AND ColID NOT LIKE 'ep-%')) AND EOnline=0 -- enable this filter after the transition period INSERT INTO @Jobs SELECT DISTINCT c.CustID, c.ColID, CASE WHEN (c.SharedFrom<>0) THEN c.SharedFrom ELSE c.ColNo END as ColNo, dbo.EAIF_EplDateTimeToString(c.LastUpdateDate) as ColTimeStamp, c.Exclude as ExFlag, c.Eonline, c.CrossRef, c.EPFullText, c.CustomLink, c.SmartLink, c.Hidden, c.Dirty, c.AutoRecreate, c.ForceRecreate, c.AddAlternates FROM [dbo].[DbList] l with (nolock) CROSS JOIN [dbo].[Collection] c with (nolock) WHERE l.DbName = @DbName AND (c.CustID='eonline' AND c.SharedFrom=0 AND c.LastUpdateDate > @RefresherTimeDT) --Include Eonline --(c.Eonline=1 AND c.SharedFrom=0) AND c.ColID IN (SELECT DISTINCT ColID FROM @JobsTemp where EOnline=1) AND c.IsDeleted = 0 SELECT DISTINCT j.CustID, j.ColID, j.ColNo, j.ColTimeStamp, j.Exclude, @EonlineBitMask * j.EOnline + @CrossRefBitMask * j.CrossRef + @EPFullTextBitMask * j.EPFullText + @CustomLinkBitMask * j.CustomLink + @SmartLinkBitMask * j.SmartLink + @HiddenBitMask * j.Hidden + @ExcludeBitMask * j.Exclude + @DirtyBitMask * j.Dirty + @AutoRecreateBitMask * j.AutoRecreate + @ForceRecreateBitMask * j.ForceRecreate + @AddAlternatesBitMask * j.AddAlternates AS FlagsBitMap FROM @Jobs j ORDER BY [j].[CustID], [j].[ColID] RETURN END
--sql content merged from file: \StoredProcedures\EAIP_AddCustomParamScalarWithNewProfDefValue_92.sql CREATE PROCEDURE [dbo].[EAIP_AddCustomParamScalarWithNewProfDefValue_92] ( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN TRY DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @StMode char(1) DECLARE @ShowFullTextGrid int DECLARE @TargetNo int DECLARE @LinkedFTPlaceHolderParamNo int DECLARE @LinkedFTPlaceHolderItemName varchar (255) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID],@StMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF @ProfNo > 0 BEGIN Select @ShowFullTextGrid = dbo.EAIF_GetProfileParamScalarValue_70 (@ProfNo,'showFullTextGridOnAdminCustomLinkPage') SELECT @TargetNo=dbo.EAIF_GetCustNo_70('system') SELECT @LinkedFTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemLinkedFTPlaceHolderLink','C') SELECT @LinkedFTPlaceHolderItemName=[b].[ItemName] from [dbo].[CustomParamXmlValues] b Where b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo BEGIN TRANSACTION -- Create a entry in CustomParamScalarValues for all parameters in CustomParamDefaults -- Where 'NewProfileDefValue' column has a value. -- Note : empty string is a valid value. -- Add a LEFT OUTER JOIN CustomParamScalarValues to avoid inserting duplicates. INSERT INTO [dbo].[CustomParamScalarValues] ([s].[TargetNo],[s].[ParamLevel],[s].[ParamNo],[s].[ParamValue]) SELECT @ProfNo,'P',c.ParamNo,c.NewProfileDefValue FROM [dbo].[CustomParamDefaults] c Left Outer join [dbo].[CustomParamScalarValues] s On (c.ParamNo = s.ParamNo and s.ParamLevel='P' and s.TargetNo=@ProfNo) WHERE c.InterfaceID=@InterfaceID and [c].[Version]=@Version and [c].[MarketID]=@MarketID and [c].[STMode]=@StMode and c.NewProfileDefValue is not null and s.ParamNo is null -- Add customized entry for Linked full text (for certain interfaces only) IF (@ShowFullTextGrid = 1) BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([c].[TargetNo] ,[c].[ParamLevel] ,[c].[ParamNo] ,[c].[ItemName] ,[c].[ParamValue] ,[c].[SeqNo] ) Select @ProfNo,'P', c.ParamNo,c.ItemName,c.ParamValue,1 FROM [dbo].[CustomParamXmlValues] c WHERE c.TargetNo=@TargetNo AND c.ParamLevel='C' AND c.ParamNo=@LinkedFTPlaceHolderParamNo END COMMIT TRANSACTION END END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EAUI_GetIntValueMap](@FieldName varchar(20)) AS BEGIN SELECT [dbo].[IntValueMap].[FieldCode], [dbo].[IntValueMap].[Description] FROM [dbo].[IntValueMap] WHERE [dbo].[IntValueMap].[FieldName]=@FieldName END
CREATE PROCEDURE [dbo].[EATL_GetSearchCaptionsByLangCode_76] (@LangCode varchar(10), @DbVerNo int) AS BEGIN SELECT sol.SearchOptionId, dsoc.OptionCaption, dsoc.ResultCaption, dsoc.Description FROM dbo.DbSearchOption AS dso INNER JOIN dbo.SearchOptionList AS sol ON dso.SearchOptionNo = sol.SearchOptionNo INNER JOIN dbo.DbSearchOptionCaption AS dsoc ON dso.DbVerNo = dsoc.DbVerNo AND dso.SearchOptionNo = dsoc.SearchOptionNo WHERE dso.DbVerNo = @DbVerNo AND dsoc.LangCode =@LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetDbAuthorityFilter_76](@DbShortName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo =dbo.EAIF_GetDbVerNo_70(@DbShortName, @DbLabel) DECLARE @ParamNo int SELECT @ParamNO = dbo.EAIF_GetDbParamNumber_70('authorityFilters') SELECT [dbo].[DbParamXmlValues].[ParamValue] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] =@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo END
CREATE PROCEDURE [dbo].[EAUI_GetFeatureEditFlags_102](@IntfFeatureNo int) AS BEGIN SELECT [dbo].[InterfaceFeatureList].[AllowProfAccess],[dbo].[InterfaceFeatureList].[AllowProfEdit],[dbo].[InterfaceFeatureList].[AllowProfItemAdd] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo] =@IntfFeatureNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateConfigAppServerDbMode_70](@ApplicationNo int, @OldServerDbMode char(1), @NewServerDbMode char(1)) AS BEGIN -- Switching from Label-Independent assignment TO Label-Dependent assignment. IF( @OldServerDbMode='D' AND @NewServerDbMode='L' ) BEGIN -- Simply update all the existing DbLabel to 'live' UPDATE [dbo].[ConfigDb] SET [dbo].[ConfigDb].[DbLabel]='live' WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNo END -- Switching from Label-Dependent assignment TO Label-Independent assignment. IF( @OldServerDbMode='L' AND @NewServerDbMode='D' ) BEGIN -- Remove all databases with DbLabel<>'live' -- and then update dblabel='' where dblabel='live' DELETE [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNo AND [dbo].[ConfigDb].[DbLabel]<>'live' UPDATE [dbo].[ConfigDb] SET [dbo].[ConfigDb].[DbLabel]='' WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNo AND [dbo].[ConfigDb].[DbLabel]='live' END -- Switching to 'N'(Not Applicable). IF( @NewServerDbMode='N' ) BEGIN -- Remove all database and server assignment. DELETE [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNo END END
CREATE PROCEDURE dbo.EAUI_UpdateProfileDbLimiterDbOrder_912( @UserID nvarchar(20),@UserIP varchar(15),@ProfNo int,@DbVerNo int, @LimiterNo int, @NewSeqNo varchar(4))AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbName varchar(10) SELECT @DbName = [dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @LimiterID varchar(10) SELECT @LimiterID=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo BEGIN TRANSACTION UPDATE [dbo].[ProfDbLimiterDbOrder] SET [dbo].[ProfDbLimiterDbOrder].[SeqNo]=convert(int,@NewSeqNo) Where [dbo].[ProfDbLimiterDbOrder].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiterDbOrder].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiterDbOrder].[LimiterNo]=@LimiterNo IF @@ROWCOUNT=0 INSERT INTO [dbo].[ProfDbLimiterDbOrder] ([dbo].[ProfDbLimiterDbOrder].[ProfNo],[dbo].[ProfDbLimiterDbOrder].[DbVerNo],[dbo].[ProfDbLimiterDbOrder].[IntfScreenNo],[dbo].[ProfDbLimiterDbOrder].[LimiterNo],[dbo].[ProfDbLimiterDbOrder].[SeqNo]) SELECT @ProfNo,@DbVerNo,ins.IntfScreenNo,@LimiterNo,@NewSeqNo FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[Profile] p ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version WHERE p.ProfNo=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Profile Db Limiter DbOrder', @ProfLogName, @DbName, @LimiterID, @NewSeqNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_TopicLangAndCaptions_77](@TopicNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(8000) SET @Captions=N'' SET @Langs='' SELECT @Captions=@Captions+N'|'+[dbo].[TopicCaption].[Caption], @Langs=@Langs+'|'+[dbo].[TopicCaption].[LangCode] FROM [dbo].[TopicCaption] WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamTblItems_90] ( @ParamNo int) AS BEGIN SELECT [dbo].[CustomParamTblItems].[ItemID] FROM [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo ORDER BY [dbo].[CustomParamTblItems].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceParamList_161] (@InterfaceID varchar(10), @Version varchar(10))AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END EXEC [dbo].[EAUI_GetInterfaceParamList_89] @InterfaceID,@Version,'' END
Create PROCEDURE [dbo].[EAIP_GetInterfaceVersions_182](@InterfaceID VARCHAR(10)) AS SELECT [dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version] FROM dbo.InterfaceVersion WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID ORDER BY [dbo].[InterfaceVersion].[Version]
CREATE PROCEDURE [dbo].[EAUI_UpdateCfgApplication_74](@UserID nvarchar(20), @UserIP varchar(15), @ApplicationNo int, @ApplicationID varchar(20), @Description varchar(255), @ApplicationType char(1), @NotifyProtocol varchar(10), @NotifyPage varchar(255) ) AS BEGIN UPDATE [dbo].[ConfigApplication] SET [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID, [dbo].[ConfigApplication].[Description]=@Description, [dbo].[ConfigApplication].[ApplicationType]=@ApplicationType, [dbo].[ConfigApplication].[NotifyProtocol]=@NotifyProtocol, [dbo].[ConfigApplication].[NotifyPage]=@NotifyPage WHERE [dbo].[ConfigApplication].[ApplicationNo] = @ApplicationNo DECLARE @AppTypeDesc varchar(25) SELECT @AppTypeDesc=[dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName]='ApplicationType' AND [dbo].[CharValueMap].[FieldCode]=@ApplicationType EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Edit Application', @ApplicationID, @Description, @AppTypeDesc END
CREATE FUNCTION [dbo].[EAIF_GetConfigServerParamScalarValue_70](@ApplicationID varchar(20), @URI varchar(255), @ParamName varchar(100)) RETURNS nvarchar(2000) AS BEGIN DECLARE @ApplicationNo int DECLARE @ServerNo int DECLARE @ParamNo int DECLARE @RetValue nvarchar(2000) SELECT @ApplicationNo=a.ApplicationNo, @ServerNo=b.ServerNo FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigServer] b ON a.ApplicationNo=b.ApplicationNo WHERE a.ApplicationID=@ApplicationID AND b.ServerURI=@URI SET @ParamNo = dbo.EAIF_GetConfigParamNumber_70(@ApplicationNo,@ParamName) SELECT @RetValue=[dbo].[ConfigParamScalarValues].[ParamValue] FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[TargetNo]=@ServerNo AND [dbo].[ConfigParamScalarValues].[ParamLevel]='S' AND [dbo].[ConfigParamScalarValues].[ParamNo]=@ParamNo IF @RetValue IS NULL SELECT @RetValue=[dbo].[ConfigParamScalarValues].[ParamValue] FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[TargetNo]=@ApplicationNo AND [dbo].[ConfigParamScalarValues].[ParamLevel]='A' AND [dbo].[ConfigParamScalarValues].[ParamNo]=@ParamNo RETURN(ISNULL(@RetValue,'')) END
CREATE PROCEDURE [dbo].[EAUI_DeleteMasterTitle_70]( @UserID nvarchar(20), @UserIP varchar(15), @TitleNo int ) AS BEGIN DECLARE @LogTitleName nvarchar(30) SELECT @LogTitleName = dbo.EAIF_GetLogTitleName_70(@TitleNo) -- it's not title, it's ISSN ;-) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Titles', 'Delete Master Title', @LogTitleName DELETE FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[TitleNo] = @TitleNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo] = @TitleNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM EASUPPORT.dbo.DbTitle WHERE [EASUPPORT].[dbo].[DbTitle].[TitleNo] = @TitleNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[MatchTitle] WHERE [dbo].[MatchTitle].[TitleNo] = @TitleNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_DeleteLocalTitleFromCollection_191] ( @ColNo INT, @batchSize INT ) AS BEGIN DECLARE @Deleted_Rows INT; SET @Deleted_Rows = 1; BEGIN TRY WHILE (@Deleted_Rows > 0) BEGIN BEGIN TRANSACTION DELETE TOP (@batchSize) dbo.LocalTitle WHERE [dbo].[LocalTitle].[ColNo] = @ColNo SET @Deleted_Rows = @@ROWCOUNT; COMMIT TRANSACTION END END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(MAX) ,@ErrorSeverity INT ,@ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE() + ' Line ' + CAST(ERROR_LINE() AS NVARCHAR(5)) ,@ErrorSeverity = ERROR_SEVERITY() ,@ErrorState = ERROR_STATE(); ROLLBACK TRANSACTION; RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetProfileSearchOptions_76](@ProfNo int, @DbVerNo int, @ScreenNo int) AS BEGIN SELECT iso.SearchOptionNo, sol.SearchOptionId, soc.OptionCaption, IsNULL(pso.Show, iso.Show) AS Show, ISNULL(pso.SeqNo, iso.SeqNo) AS SeqNo, ins.SearchOptionNote AS Note FROM [dbo].[DbInterfaceSearchOption] iso LEFT OUTER JOIN [dbo].[ProfDbSearchOption] pso ON iso.DbVerNo = pso.DbVerNo AND iso.IntfScreenNo = pso.IntfScreenNo AND iso.SearchOptionNo = pso.SearchOptionNo AND pso.ProfNo=@ProfNo INNER JOIN [dbo].[DbSearchOptionCaption] soc ON iso.DbVerNo = soc.DbVerNo AND iso.SearchOptionNo = soc.SearchOptionNo INNER JOIN [dbo].[SearchOptionList] sol ON iso.SearchOptionNo = sol.SearchOptionNo INNER JOIN [dbo].[InterfaceScreen] ins ON iso.IntfScreenNo = ins.IntfScreenNo WHERE iso.DbVerNo = @DbVerNo AND iso.IntfScreenNo = @ScreenNo AND soc.LangCode = 'en' ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AddProfileCustomLinks_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LinkList varchar(8000)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Add Custom Links to Profile', @ProfLogName DECLARE @ProfParamNo int Declare @LinkedFTParamNo int SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') SELECT @LinkedFTParamNo=dbo.EAIF_GetCustomParamNumber_70('systemLinkedFTPlaceHolderLink','C') DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[CustomParamXmlValues].[SeqNo])+1 FROM [dbo].[CustomParamXmlValues] Where [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo] in(@ProfParamNo,@LinkedFTParamNo) SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo],[dbo].[CustomParamXmlValues].[ParamLevel],[dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[SeqNo]) SELECT @ProfNo, 'P', @ProfParamNo, a.Item, a.Num FROM dbo.EAIF_GetEnumValueTable_70(@LinkList,'+',@NextSeqNo,1) a END
CREATE PROCEDURE dbo.EPLR_GetContentFilterListByDate_181(@LastUpdatedDate datetime) AS BEGIN SET NOCOUNT ON; SELECT CFL.ContentFilterListID AS ID , ISNULL(CFL.LastUpdatedDate, CFL.CreateDate) AS LastModifiedDateTime FROM dbo.ContentFilterList AS CFL WHERE ISNULL(CFL.LastUpdatedDate, CFL.CreateDate) >= @LastUpdatedDate ORDER BY LastModifiedDateTime ASC END
-- Merged from EAIP_AddDatabase_70 and EAIP_AddDatabase_102 CREATE PROCEDURE [dbo].[EAIP_AddDatabase_104](@DbName varchar(10), @DbLabel varchar(10), @DisplayName NVARCHAR(100)=null, @DSFamilyName varchar(100)=@DbName, @DbGroup varchar(20)=null, @DbCategory char(1), @DbType smallint=1, @ContentType smallint=1, @MultiSegment smallint=0, @EnforceSimUsage bit=0, @ShowStats bit=1, @ShowOnDDSConsole bit=1, @WebClient bit=1, @WinClient bit=1, @CharClient bit=1, @Z3950Client bit=1, @EPXBuild bit=0, @EDABuild bit=0, @IncludeWhenAutoAdd bit=1, @SourceType char(1) = 'D', @VendorName nvarchar(100) = null, @ConnectorType nvarchar(20) = null, @Free bit = null, @connectorProvider CHAR(1) = NULL, @notes NVARCHAR( 1000) =NULL, @Interface varchar(10) = NULL, @bitSubsetDb bit = 0, @physicalDb varchar(10) = null, @bitMergeSearch bit = 0, @dbDefSearchExprType char(1) = null, @dbDefSearchExpression nvarchar(255) = null ) AS BEGIN If @DbName is null Begin RAISERROR('A DbName must be supplied for an ep database',16,-1,@DbName,@DbLabel) RETURN End IF EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel) BEGIN RAISERROR('Database %s %s already exists, insert failed.',16,-1,@DbName,@DbLabel) RETURN END If (@SourceType <> 'D' and @SourceType <> 'E' and @SourceType <> 'S' and @SourceType<>'C') and @DbLabel<>'live' Begin RAISERROR('External Databases are allowed only on the Live DbLabel, insert failed.',16,-1,@DbName,@DbLabel) RETURN End if (@bitSubsetDb = 1) BEGIN declare @physicalDbVerNo int select @physicalDbVerNo = [dbo].[DbList].[DbVerNo] -- returns <=1 row from [dbo].[DbList] where [dbo].[DbList].[DbName]=@physicalDb and [dbo].[DbList].[DbLabel]=@DbLabel and [dbo].[DbList].[DSFamilyName]=@DSFamilyName and [dbo].[DbList].[DbType]=1 and [dbo].[DbList].[SourceType]='D' -- parent should be a regular db if @@ROWCOUNT=0 begin RAISERROR('Subset Database - Physical DB value must be Short Name of a regular database from same DS Family in same database label.', 16, -1) RETURN end select 1 from [dbo].[DbSubset] s where s.SubsetDbVerNo=@physicalDbVerNo if @@ROWCOUNT>0 begin RAISERROR('Subset Database - Physical DB cannot be a subset database.', 16, -1) RETURN end END BEGIN TRANSACTION INSERT INTO [dbo].[DbList]( [dbo].[DbList].[DbName],[dbo].[DbList].[DbLabel],[dbo].[DbList].[DisplayName],[dbo].[DbList].[DSFamilyName],[dbo].[DbList].[DbGroup],[dbo].[DbList].[DbCategory],[dbo].[DbList].[DbType],[dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate],[dbo].[DbList].[MultiSegment],[dbo].[DbList].[EnforceSimUsage],[dbo].[DbList].[ShowStats],[dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient],[dbo].[DbList].[WinClient],[dbo].[DbList].[CharClient],[dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[EPXBuild],[dbo].[DbList].[EDABuild],[dbo].[DbList].[IncludeWhenAutoAdd],[dbo].[DbList].[SourceType] ) VALUES (@DbName,@DbLabel,@DisplayName,@DSFamilyName,@DbGroup,@DbCategory,@DbType,@ContentType, getdate(),@MultiSegment,@EnforceSimUsage,@ShowStats,@ShowOnDDSConsole, @WebClient,@WinClient,@CharClient,@Z3950Client, @Interface, @EPXBuild,@EDABuild,@IncludeWhenAutoAdd,Upper(@SourceType)) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel]=@DbLabel If @SourceType <> 'D' and @SourceType <> 'E' and @SourceType <> 'S' and @SourceType<>'C' and @connectorProvider is not null BEGIN Insert into [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[Notes]) Values (@DbVerNo, @VendorName, @ConnectorType, @Free, @connectorProvider, @notes) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END -- subset time if (@bitSubsetDb = 1) begin Insert into [dbo].[DbSubset]([dbo].[DbSubset].[SubsetDbVerNo], [dbo].[DbSubset].[PhysDbVerNo], [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression]) values (@DbVerNo, @physicalDbVerNo, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END end IF @MultiSegment = 0 BEGIN INSERT INTO [dbo].[DbSegment]([dbo].[DbSegment].[DbVerNo],[dbo].[DbSegment].[SegName],[dbo].[DbSegment].[SegDescription],[dbo].[DbSegment].[SeqNo]) VALUES (@DbVerNo,@DbName,@DisplayName,1) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END IF ( @DbType IN (1,3,4, 6,8)) BEGIN INSERT INTO [dbo].[DbServerParams] ([dbo].[DbServerParams].[DbVerNo]) VALUES (@DbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END If @SourceType='D' Begin IF ( @DbLabel = 'live' AND (SELECT [dbo].[DbTypeList].[Category] FROM [dbo].[DbTypeList] WHERE [dbo].[DbTypeList].[DbType]=@DbType) = 'R' ) AND (NOT EXISTS (SELECT 1 FROM EASUPPORT.dbo.Product WHERE [EASUPPORT].[dbo].[Product].[ProductID]=@DbName)) BEGIN EXEC EASUPPORT.dbo.EAIP_AddProduct_70 @DbName,'D',@DisplayName IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END End If @SourceType='C' and @Dblabel='Live' Begin Declare @WRK_ProfDatabase table (ProfNo int, DbVerNo int, SeqNo int, Enable bit, SelDefault bit, CustomLimiter bit, CtrlCustID varchar(10), StartPage varchar(20), SugSubject tinyint, Mode char(1), EndDate datetime, AccessEndDate datetime, GracePeriod int) Insert @WRK_ProfDatabase select distinct a.* from ( select p.ProfNo ProfNo, dbl.DbVerNo DbVerNo, 0 SeqNo, 0 Enable, 0 selDefault, 0 CustomLimiter, NULL CtrlCustID, '' StartPage, NULL SugSubject, cs.Mode Mode, cs.EndDate EndDate, 0 AccessEndDate, pd.GracePeriod GracePeriod From [dbo].[Profile] p join EASUPPORT.dbo.CustomerCatalogs cc on p.CustID=cc.CustID join EASUPPORT.dbo.CustSubscription cs on cc.SubscriptionNo=cs.SubscriptionNo and cc.SubscriberID=cs.SubscriberID and cc.CustID=cs.CustID join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo join EASUPPORT.dbo.ProductPackage pp on po.PrdOffNo=pp.PrdOffNo join EASUPPORT.dbo.Product pd on pp.ProductID=pd.ProductID join EASUPPORT.dbo.ProductInterface [pi] on pd.ProductID=[pi].ProductID join [dbo].[DbList] dbl on cc.DbName=dbl.DbName where po.SourceType='C' and p.InterfaceID=[pi].InterfaceID and p.Version=[pi].Version and dbl.DbVerNo=@DbVerNo and dbl.DbLabel='live') a left outer join [dbo].[ProfDatabase] b on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo where b.ProfNo is null Update @WRK_ProfDatabase set [SeqNo]=b.SeqNo+1 from @WRK_ProfDatabase a join (Select pdb.ProfNo, Max(pdb.SeqNo) as SeqNo from [dbo].[ProfDatabase] pdb join @WRK_ProfDatabase wpdb on wpdb.ProfNo=pdb.ProfNo Group By pdb.ProfNo) b on a.ProfNo=b.ProfNo --Start AccessEnddate calculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), Graceperiod int, EndDate datetime, AcessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode, Graceperiod, EndDate) select distinct Mode, GracePeriod, EndDate from @WRK_ProfDatabase update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode='T' Update @WRK_ProfDatabase SET [AccessEndDate] =wa.AcessEndDate FROM @WRK_ProfDatabase AS wp INNER JOIN @WRK_AccessEndDate AS wa ON wp.Mode=wa.Mode And wp.EndDate=wa.EndDate WHERE ISNULL(wp.GracePeriod, 0)=ISNULL(wa.Graceperiod, 0) --End AccessEnddate culculation Insert [dbo].[ProfDatabase] Select wpdb.ProfNo, wpdb.DbVerNo, wpdb.SeqNo, wpdb.Enable, wpdb.SelDefault, wpdb.CustomLimiter, wpdb.CtrlCustID, wpdb.StartPage, wpdb.SugSubject, wpdb.Mode, wpdb.AccessEndDate from @WRK_ProfDatabase wpdb left outer join [dbo].[ProfDatabase] pdb on wpdb.ProfNo=pdb.ProfNo and wpdb.DbVerNo=pdb.DbVerNo where pdb.ProfNo is null IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END End COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetItemFieldNamesForSummary_77]( @InterfaceFeatureNo int)AS BEGIN DECLARE @Names varchar(8000) SET @Names='' SELECT @Names = [dbo].[InterfaceFeatureFields].[FieldName]+ ','+@Names FROM [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldLevel]='I' AND [dbo].[InterfaceFeatureFields].[IncludeInSummary]=1 IF LEN(@Names)>0 SELECT SUBSTRING(@Names,1,LEN(@Names)-1) ELSE SELECT @Names END
CREATE PROCEDURE [dbo].[EATL_GetSearchThemes_83] (@LangCode varchar(10))AS BEGIN SELECT st.ThemeID, sc.Caption, sc.ImageAltText FROM [dbo].[SearchTheme] st INNER JOIN [dbo].[SearchThemeCaption] sc ON st.ThemeID = sc.ThemeID WHERE sc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetDbBibMaps_70] (@ShortDBName varchar(10), @Label varchar(10) ) AS BEGIN DECLARE @DbVerNo int Select @DbVerNo= dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) DECLARE @SegName varchar(10) Select Top 1 @SegName = [dbo].[DbSegment].[SegName] from [dbo].[DbSegment] where [dbo].[DbSegment].[DbVerNo] = @DbVerNo ORDER BY [dbo].[DbSegment].[SeqNo] SELECT [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag] FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName ORDER BY [dbo].[DbBibMap].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetFeatureFieldDefinition_80](@Category varchar(10), @FieldLevel char) AS BEGIN DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant], [dbo].[FeatureList].[VisibleItemCount], [dbo].[FeatureList].[SelectionMode] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]= @TemplCategory SELECT ff.FieldName,ff.FieldType,ff.IncludeInSummary, ff.EditControl,ff.ValueTemplate FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureFields] ff ON fl.FeatureNo = ff.FeatureNo WHERE fl.Category= @TemplCategory AND [ff].[FieldLevel]=@FieldLevel ORDER BY [ff].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_UpdateConfigParamScalarValue_70](@TargetNo int, @ParamLevel char(1),@ParamNo int, @ParamValue nvarchar(2000)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[ConfigParamScalarValues].[ParamLevel]=@ParamLevel AND [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo) UPDATE [dbo].[ConfigParamScalarValues] SET [dbo].[ConfigParamScalarValues].[ParamValue] = @ParamValue WHERE [dbo].[ConfigParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[ConfigParamScalarValues].[ParamLevel]=@ParamLevel AND [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo ELSE INSERT INTO [dbo].[ConfigParamScalarValues] values (@TargetNo,@ParamLevel,@ParamNo,@ParamValue) END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDbLimiterDefault_144] ( @UserID nvarchar(20),@UserIP varchar(15),@ProfNo int,@DbVerNo int,@LimiterNo int, @DefValue varchar(255),@ScreenNo int)AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbName varchar(10) SELECT @DbName = [dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @LimiterID varchar(10) SELECT @LimiterID=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo BEGIN TRANSACTION UPDATE [dbo].[ProfDbLimiter2] SET [dbo].[ProfDbLimiter2].[DefValue]=@DefValue Where [dbo].[ProfDbLimiter2].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo AND [dbo].[ProfDbLimiter2].[IntfScreenNo]=@ScreenNo IF @@ROWCOUNT=0 AND @DefValue<>'' INSERT INTO [dbo].[ProfDbLimiter2] ([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue]) SELECT @ProfNo,@DbVerNo,ins.IntfScreenNo,@LimiterNo, 1, @DefValue FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[Profile] p ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version WHERE p.ProfNo=@ProfNO AND [ins].[IntfScreenNo]=@ScreenNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Profile Db Limiter Default', @ProfLogName, @DbName, @LimiterID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE Function [dbo].[EAIF_UpdateGroupItemAttribute_912] (@ControlTemplate varchar(max), @ElementTag varchar(10)) RETURNS varchar(max) AS BEGIN Declare @x xml Declare @return varchar(max) Declare @nodeCount int declare @i int declare @newvalue varchar(1000); --DECLARE @tmp table (id int identity(1,1), xml xml) Set @x=@ControlTemplate --insert @tmp --select n.col.query('.') from @x.nodes('/lbItems/lbItem') n(col) --select @nodes= max(id) from @tmp select @nodeCount = @x.query('count(/lbItems/lbItem)').value('.', 'int') set @i=1; while (@i <=@nodeCount) begin SELECT @newvalue = @ElementTag + ' ' + s.[LbItems].value('@value', 'varchar(1000)') FROM @x.nodes('/lbItems/lbItem[sql:variable("@i")][1]') AS s([LbItems]) set @x.modify('replace value of (/lbItems/lbItem/@value)[sql:variable("@i")][1] with (sql:variable("@newvalue"))') set @i=@i+1 end set @return=cast(@x as varchar(max)) return @return END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamTblProfFieldValues_90] ( @ParamNo int, @ProfNo int, @LangCode varchar(10)) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo DECLARE @ItemsTable TABLE ( ItemID VARCHAR(10), SortValue int null) INSERT INTO @ItemsTable(ItemID) SELECT * FROM dbo.EAIF_GetTblParamItemsForProfDB_90(@ParamNo,@ProfNo) Update @ItemsTable SET [tmpi].[SortValue]= Convert(int,ISNULL(p.Value,(ISNULL(iv.Value,g.Value)))) FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON f.ParamNo=g.ParamNo AND i.ItemID = g.ItemID AND f.FieldNo=g.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] p ON p.TargetNo = @ProfNo AND p.Level ='P' AND g.ParamNo=p.ParamNo AND g.ItemID=p.ItemID AND g.FieldNo=p.FieldNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.SortField=1 SELECT f.FieldName, i.ItemID, ISNULL(p.Value,(ISNULL(iv.Value,g.Value))) AS VALUE, ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON i.ItemID = g.ItemID AND f.FieldNo=g.FieldNo AND f.ParamNo=g.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] p ON p.TargetNo = @ProfNO AND p.Level ='P' AND g.ParamNo=p.ParamNo AND g.ItemID=p.ItemID AND g.FieldNo=p.FieldNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.DisplayLevel like '%p%' UNION ALL -- multi-language values SELECT pf.FieldName, pf.ItemID, ISNULL(p.Value,(ISNULL(iv.Value,g.Value))) AS VALUE, ISNULL(tmpi.SortValue,pf.ItemSeqNo) AS ItemSeqNo, pf.FieldSeqNo FROM ( select f.ParamNo, i.ItemID, f.FieldNo, f.FieldName, i.SeqNo AS ItemSeqNo, f.SeqNo AS FieldSeqNo from [dbo].[CustomParamXmlFields] f inner join [dbo].[CustomParamTblItems] i on f.ParamNo = i.ParamNo where f.ParamNo=@ParamNo AND f.DisplayLevel like '%i%' AND f.FieldType='SM' ) pf LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] g ON pf.ParamNo=g.ParamNo AND pf.ItemID = g.ItemID AND pf.FieldNo=g.FieldNo AND g.LangCode =@LangCode LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON pf.ParamNo=iv.ParamNo AND pf.ItemID=iv.ItemID AND pf.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.LangCode=@LangCode AND iv.MarketID=@MarketID LEFT OUTER JOIN [dbo].[CustomParamTblSMValues] p ON p.TargetNo = @ProfNO AND p.Level ='P' AND pf.ParamNo=p.ParamNo AND pf.ItemID=p.ItemID AND pf.FieldNo=p.FieldNo AND p.LangCode = @LangCode INNER JOIN @ItemsTable tmpi ON pf.ItemID = tmpi.ItemID WHERE (p.Value IS NOT NULL OR iv.Value IS NOT NULL OR g.Value is not null) UNION ALL -- database dependancy SELECT f.FieldName, i.ItemID, dbo.EAIF_GetCustomTblParamDbs_90(@ParamNo, i.ItemID, f.FieldNo) AS Value, ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.DisplayLevel like '%p%' AND f.FieldType='SD' --Order by ItemSeqNo, FieldSeqNo Order by ItemSeqNo,[i].[ItemID], FieldSeqNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceVersionDetails_161] ( @InterfaceID varchar(10), @Version varchar(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END EXEC [dbo].[EAUI_GetInterfaceVersion_99] @InterfaceID, @Version END
CREATE PROCEDURE [dbo].[EAIP_GetLimiter_91] ( @limiterNo INT ) AS BEGIN SELECT ll.LimiterId, ll.Description, ll.ControlType, ll.LogicalOpCode, ll.ControlSize, ll.Notes, ll.BitFlag1, ll.SearchString, ll.AllowCustom, ll.EnableQueryMask, ll.QueryMaskId, ll.DbLabel, ll.LimiterType, lct.ProfileCustDefault, ll.IsListContentsGrouped, ll.ListItemUniqueId, ll.HelpUrl FROM [dbo].[LimiterList] ll INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType=lct.ControlType WHERE ll.LimiterNo = @limiterNo END
/***********************************************************/ /** added update of ConfigAppNotifyItem ****/ CREATE PROCEDURE [dbo].[EAUI_UpdateCfgApplication_75](@UserID nvarchar(20), @UserIP varchar(15), @ApplicationNo int, @ApplicationID varchar(20), @Description varchar(255), @ApplicationType char(1), @NotifyProtocol varchar(10), @NotifyPage varchar(255), @OldServerDbMode char(1), @ServerDbMode char(1), @NotifyList varchar(8000)='' ) AS BEGIN UPDATE [dbo].[ConfigApplication] SET [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID, [dbo].[ConfigApplication].[Description]=@Description, [dbo].[ConfigApplication].[ApplicationType]=@ApplicationType, [dbo].[ConfigApplication].[NotifyProtocol]=@NotifyProtocol, [dbo].[ConfigApplication].[NotifyPage]=@NotifyPage, [dbo].[ConfigApplication].[ServerDbMode]=@ServerDbMode WHERE [dbo].[ConfigApplication].[ApplicationNo] = @ApplicationNo DECLARE @AppTypeDesc varchar(25) SELECT @AppTypeDesc=[dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName]='ApplicationType' AND [dbo].[CharValueMap].[FieldCode]=@ApplicationType DELETE [dbo].[ConfigAppNotifyItem] WHERE [dbo].[ConfigAppNotifyItem].[ApplicationNo]=@ApplicationNo IF LEN(@NotifyList)>0 INSERT INTO [dbo].[ConfigAppNotifyItem] SELECT @ApplicationNo, a.Item FROM dbo.EAIF_GetItemTable_70(@NotifyList, ',') a EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Edit Application', @ApplicationID, @Description, @AppTypeDesc IF( @OldServerDbMode <> @ServerDbMode ) BEGIN EXEC [dbo].[EAIP_UpdateConfigAppServerDbMode_70] @ApplicationNo, @OldServerDbMode, @ServerDbMode DECLARE @ServerDbModeText varchar(255) SET @ServerDbModeText = 'Old:' + @OldServerDbMode + ' New:' + @ServerDbMode EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Changing ServerDbMode', @ApplicationID, @ServerDbModeText END END
CREATE FUNCTION [dbo].[EAIF_GetConfigServerURI_70](@SrvNo int) RETURNS varchar(255) AS BEGIN RETURN( SELECT [dbo].[ConfigServer].[ServerURI] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerNo]=@SrvNo ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteMDbAuthority_90](@UserId nvarchar(20), @UserIp varchar(15), @Id varchar(10)) AS BEGIN DELETE FROM [dbo].[MultiDbAuthList] WHERE [dbo].[MultiDbAuthList].[MultiDbAuthID] = @Id EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIp, @Id,'' ,'Delete MDbAuth' END
CREATE PROCEDURE [dbo].[EAIP_DeleteMasterCustomer_100](@CustID varchar(10), @ArchivalID int =null) AS BEGIN DECLARE @CustNo int SELECT @CustNo=[dbo].[Customer].[CustNo] from [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID IF @CustNo is null RETURN BEGIN TRY DELETE [dbo].[CustAddress] WHERE [dbo].[CustAddress].[CustID]=@CustID DELETE [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ChildID]=@CustID DELETE [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@CustID DELETE p FROM [dbo].[ProfLocalLimiter2] p INNER JOIN [dbo].[Collection] c ON p.ColNo = c.ColNo WHERE [c].[CustID]=@CustID; DELETE [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID DELETE [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID DELETE [dbo].[CustomParamScalarValues] Where [dbo].[CustomParamScalarValues].[TargetNo]=@CustNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='C' DELETE [dbo].[CustomParamXmlValues] Where [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' DELETE [dbo].[CustomParamLastUpdate] Where [dbo].[CustomParamLastUpdate].[TargetNo]=@CustNo AND [dbo].[CustomParamLastUpdate].[Paramlevel]='C' /* Reset Consortium Flag, Incase Parent was deleted or last child of a Parent*/ UPDATE [dbo].[Customer] SET [dbo].[Customer].[Consortium]=0, [dbo].[Customer].[TimeStamp] = GETDATE() FROM [dbo].[Customer] WITH (INDEX(IX_Customer)) WHERE [dbo].[Customer].[CustID] NOT IN (SELECT DISTINCT [dbo].[CustomerGroup].[ParentID] FROM [dbo].[CustomerGroup]) AND [dbo].[Customer].[Consortium]=1 EXEC EASUPPORT.dbo.EAIP_AddNotifyRequest_70 'system', 'S', 'REMOVE_CUST', @CustID, null, null, null IF @ArchivalID IS NOT NULL INSERT INTO EASUPPORT.dbo.ArchiveCustGroupProfile([EASUPPORT].[dbo].[ArchiveCustGroupProfile].[ArchiveID],[EASUPPORT].[dbo].[ArchiveCustGroupProfile].[CustID],[EASUPPORT].[dbo].[ArchiveCustGroupProfile].[Activity]) VALUES (@ArchivalID,@CustID,'Master(Parent) Customer Info removed') END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetProfileSiteInfo_70]( @ProfNo int) AS BEGIN Select b.CustID, b.GroupID, b.ProfID, b.ProfPwd, b.DefLangCode, a.SiteID --, IsNull(b.URL,a.SiteURL) as SiteURL , dbo.EAIF_ConvertSiteURLToEhIS_97(b.ProfNo,IsNull(b.URL,a.SiteURL),NULL,0) as SiteURL , a.PassingMode, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'defaultView') As DefaultView From [dbo].[InterfaceVersion] a JOIN [dbo].[Profile] b ON a.InterfaceID= b.InterfaceID AND a.Version=b.Version Where b.ProfNo = @ProfNo END
--sql content merged from file: \StoredProcedures\EAUI_AddProfileDatabases_70.sql CREATE PROCEDURE [dbo].[EAUI_AddProfileDatabases_70] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNoList varchar(8000), @IsInternalCustomer bit) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @DbVerNoTable table (DbVerNo int) Declare @GroupDbs bit Declare @ParamNo int SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) INSERT INTO @DbVerNoTable SELECT convert(int,[dbo].[EAIF_GetItemTable_70].[Item]) FROM dbo.EAIF_GetItemTable_70(@DbVerNoList,'+') select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='groupProfDatabases' Select @GroupDbs=[dbo].[CustomParamScalarValues].[ParamValue] from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' and [dbo].[CustomParamScalarValues].[ParamNo]=@paramNo if @GroupDbs is null begin select @GroupDbs=[cpd].[DefValue] from [dbo].[CustomParamDefaults] cpd join [dbo].[Profile] p on cpd.InterfaceID=p.InterfaceID and cpd.Version=p.Version and cpd.MarketID=p.MarketID and cpd.STMode=p.STMode where p.ProfNo=@ProfNo and [cpd].[ParamNo]=@ParamNo if @GroupDbs is null Begin Select @GroupDbs=[dbo].[CustomParamList].[DefValue] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamNo]=@ParamNo End end BEGIN TRY BEGIN TRANSACTION INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'Profiles', 'Add Database to Profile', @ProfLogName, dl.DbName, NULL, NULL, NULL FROM @DbVerNoTable dbs INNER JOIN [dbo].[DbList] dl ON dbs.DbVerNo = dl.DbVerNo IF @IsInternalCustomer = 1 BEGIN DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[ProfDatabase].[SeqNo])+1 FROM [dbo].[ProfDatabase] Where [dbo].[ProfDatabase].[ProfNo]=@ProfNo SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) INSERT INTO [dbo].[ProfDatabase] ([dbo].[ProfDatabase].[ProfNo],[dbo].[ProfDatabase].[DbVerNo],[dbo].[ProfDatabase].[SeqNo],[dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault],[dbo].[ProfDatabase].[CustomLimiter], [dbo].[ProfDatabase].[Mode]) SELECT @ProfNo, convert(int,a.Item),a.Num,1,@GroupDbs,0,'I' FROM dbo.EAIF_GetEnumValueTable_70(@DbVerNoList,'+',@NextSeqNo,1) a END ELSE BEGIN Update [dbo].[ProfDatabase] set [Enable]=1, [SelDefault]=case when isnull(istc.StringValue, 'Standard')= 'Standard' then 0 when isnull(istc.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc.StringValue, 'Standard')= 'No' then 0 end from [dbo].[ProfDatabase] pdb join [dbo].[Profile] p on pdb.ProfNo=p.ProfNo join @DbVerNoTable dbvt on pdb.DbVerNo=dbvt.DbVerNo join [dbo].[DbList] dbl on dbl.DbVerNo=dbvt.DbVerNo left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseSelectedRule' where p.ProfNo=@ProfNo --UPDATE ProfDatabase SET Enable=1, SelDefault=@GroupDbs --FROM ProfDatabase a, @DbVerNoTable b --WHERE ProfNo=@ProfNo AND a.DbVerNo=b.DbVerNo END UPDATE [dbo].[Collection] SET [LastUpdateDate]=GetDate() FROM [dbo].[Profile] AS p JOIN [dbo].[Collection] AS c ON c.CustID = p.CustID WHERE p.ProfNo=@ProfNo AND c.Eonline=0 AND c.IsDeleted = 0 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END
CREATE PROCEDURE dbo.EPLR_GetContentFilterListItems_181(@contentFilterId varchar(25)) AS BEGIN SELECT CFLI.ContentFilterItemSearchConceptID AS ConceptID , CFLI.ContentFilterItemSearchTerm AS SearchTerm FROM dbo.ContentFilterList AS CFL INNER JOIN dbo.ContentFilterListItems AS CFLI ON CFL.ContentFilterNo = CFLI.ContentFilterNo WHERE CFL.ContentFilterListID = @contentFilterId ORDER BY ConceptID ASC END
CREATE PROCEDURE [dbo].[EAIP_AddDatabase_133](@DbName varchar(10), @DbLabel varchar(10), @DisplayName NVARCHAR(100)=null, @DSFamilyName varchar(100)=@DbName, @DbGroup varchar(20)=null, @DbCategory char(1), @DbType smallint=1, @ContentType smallint=1, @MultiSegment smallint=0, @EnforceSimUsage bit=0, @ShowStats bit=1, @ShowOnDDSConsole bit=1, @WebClient bit=1, @WinClient bit=1, @CharClient bit=1, @Z3950Client bit=1, @EPXBuild bit=0, @EDABuild bit=0, @IncludeWhenAutoAdd bit=1, @SourceType char(1) = 'D', @VendorName nvarchar(100) = null, @ConnectorType nvarchar(20) = null, @Free bit = null, @connectorProvider CHAR(1) = NULL, @notes NVARCHAR( 1000) =NULL, @Interface varchar(10) = NULL, @bitSubsetDb bit = 0, @physicalDb varchar(10) = null, @bitMergeSearch bit = 0, @dbDefSearchExprType char(1) = null, @dbDefSearchExpression nvarchar(255) = NULL, @NonSearchableDb bit=0 , @ArchiveProfSettingFlag bit =0 ) AS BEGIN If @DbName is null Begin RAISERROR('A DbName must be supplied for an ep database',16,-1,@DbName,@DbLabel) RETURN End IF EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel) BEGIN RAISERROR('Database %s %s already exists, insert failed.',16,-1,@DbName,@DbLabel) RETURN END If (@SourceType <> 'D' and @SourceType <> 'E' and @SourceType <> 'S' and @SourceType<>'C') and @DbLabel<>'live' Begin RAISERROR('External Databases are allowed only on the Live DbLabel, insert failed.',16,-1,@DbName,@DbLabel) RETURN End if (@bitSubsetDb = 1) BEGIN declare @physicalDbVerNo INT select @physicalDbVerNo = [dbo].[DbList].[DbVerNo] -- returns <=1 row from [dbo].[DbList] where [dbo].[DbList].[DbName]=@physicalDb and [dbo].[DbList].[DbLabel]=@DbLabel and [dbo].[DbList].[DSFamilyName]=@DSFamilyName --and DbType=1 and SourceType='D' -- parent should be a regular db and [dbo].[DbList].[DbType]=@DbType and [dbo].[DbList].[SourceType]=@SourceType -- parent should be of same SourceType, DbType and ContentType AND [dbo].[DbList].[ContentType] = @ContentType; if @@ROWCOUNT=0 begin RAISERROR('Subset Database - Physical DB value must be Short Name of a database of same Database Type and Content Type from same DS Family in same database label.', 16, -1) RETURN end select 1 from [dbo].[DbSubset] s where s.SubsetDbVerNo=@physicalDbVerNo if @@ROWCOUNT>0 begin RAISERROR('Subset Database - Physical DB cannot be a subset database.', 16, -1) RETURN end END BEGIN TRANSACTION INSERT INTO [dbo].[DbList]( [dbo].[DbList].[DbName],[dbo].[DbList].[DbLabel],[dbo].[DbList].[DisplayName],[dbo].[DbList].[DSFamilyName],[dbo].[DbList].[DbGroup],[dbo].[DbList].[DbCategory],[dbo].[DbList].[DbType],[dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate],[dbo].[DbList].[MultiSegment],[dbo].[DbList].[EnforceSimUsage],[dbo].[DbList].[ShowStats],[dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient],[dbo].[DbList].[WinClient],[dbo].[DbList].[CharClient],[dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[EPXBuild],[dbo].[DbList].[EDABuild],[dbo].[DbList].[IncludeWhenAutoAdd],[dbo].[DbList].[SourceType],[dbo].[DbList].[NonSearchableDb],[dbo].[DbList].[ArchiveProfSettings]) VALUES (@DbName,@DbLabel,@DisplayName,@DSFamilyName,@DbGroup,@DbCategory,@DbType,@ContentType, getdate(),@MultiSegment,@EnforceSimUsage,@ShowStats,@ShowOnDDSConsole, @WebClient,@WinClient,@CharClient,@Z3950Client, @Interface, @EPXBuild,@EDABuild,@IncludeWhenAutoAdd,Upper(@SourceType),@NonSearchableDb,@ArchiveProfSettingFlag) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel]=@DbLabel If @SourceType <> 'D' and @SourceType <> 'E' and @SourceType <> 'S' and @SourceType<>'C' and @connectorProvider is not null BEGIN Insert into [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[Notes]) Values (@DbVerNo, @VendorName, @ConnectorType, @Free, @connectorProvider, @notes) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END -- subset time if (@bitSubsetDb = 1) begin Insert into [dbo].[DbSubset]([dbo].[DbSubset].[SubsetDbVerNo], [dbo].[DbSubset].[PhysDbVerNo], [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression]) values (@DbVerNo, @physicalDbVerNo, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END end IF @MultiSegment = 0 BEGIN INSERT INTO [dbo].[DbSegment]([dbo].[DbSegment].[DbVerNo],[dbo].[DbSegment].[SegName],[dbo].[DbSegment].[SegDescription],[dbo].[DbSegment].[SeqNo]) VALUES (@DbVerNo,@DbName,@DisplayName,1) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END IF ( @DbType IN (1,3,4, 6,8)) BEGIN INSERT INTO [dbo].[DbServerParams] ([dbo].[DbServerParams].[DbVerNo]) VALUES (@DbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END If @SourceType='D' Begin IF ( @DbLabel = 'live' AND (SELECT [dbo].[DbTypeList].[Category] FROM [dbo].[DbTypeList] WHERE [dbo].[DbTypeList].[DbType]=@DbType) = 'R' ) AND (NOT EXISTS (SELECT 1 FROM EASUPPORT.dbo.Product WHERE [EASUPPORT].[dbo].[Product].[ProductID]=@DbName)) BEGIN EXEC EASUPPORT.dbo.EAIP_AddProduct_70 @DbName,'D',@DisplayName IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END End If @SourceType='C' and @Dblabel='Live' Begin IF OBJECT_ID('tempdb..#WRK_ProfDatabase') IS NULL CREATE TABLE #WRK_ProfDatabase (ProfNo int, DbVerNo int, SeqNo int, Enable bit, SelDefault bit, CustomLimiter bit , CtrlCustID varchar(10), StartPage varchar(20), SugSubject tinyint, Mode char(1) , EndDate datetime, AccessEndDate datetime, GracePeriod int) CREATE INDEX IX_WRK_ProfDatabase_ProfNo ON #WRK_ProfDatabase(ProfNo) Insert #WRK_ProfDatabase select distinct a.* from ( select p.ProfNo ProfNo, dbl.DbVerNo DbVerNo, 0 SeqNo, 0 Enable, 0 selDefault, 0 CustomLimiter, NULL CtrlCustID, '' StartPage, NULL SugSubject, cs.Mode Mode, cs.EndDate EndDate, 0 AccessEndDate, pd.GracePeriod GracePeriod From [dbo].[Profile] p join EASUPPORT.dbo.CustomerCatalogs cc on p.CustID=cc.CustID join EASUPPORT.dbo.CustSubscription cs on cc.SubscriptionNo=cs.SubscriptionNo and cc.SubscriberID=cs.SubscriberID and cc.CustID=cs.CustID join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo join EASUPPORT.dbo.ProductPackage pp on po.PrdOffNo=pp.PrdOffNo join EASUPPORT.dbo.Product pd on pp.ProductID=pd.ProductID join EASUPPORT.dbo.ProductInterface [pi] on pd.ProductID=[pi].ProductID join [dbo].[DbList] dbl on cc.DbName=dbl.DbName where po.SourceType='C' and p.InterfaceID=[pi].InterfaceID and p.Version=[pi].Version and dbl.DbVerNo=@DbVerNo and dbl.DbLabel='live') a left outer join [dbo].[ProfDatabase] b on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo where b.ProfNo is null Update #WRK_ProfDatabase set [SeqNo]=[b].SeqNo+1 from #WRK_ProfDatabase a join (Select pdb.ProfNo, Max(pdb.SeqNo) as SeqNo from [dbo].[ProfDatabase] pdb join #WRK_ProfDatabase wpdb on wpdb.ProfNo=pdb.ProfNo Group By pdb.ProfNo) b on a.ProfNo=b.ProfNo --Start AccessEnddate calculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), Graceperiod int, EndDate datetime, AcessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode, Graceperiod, EndDate) select distinct #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[GracePeriod], #WRK_ProfDatabase.[EndDate] from #WRK_ProfDatabase update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode='T' Update #WRK_ProfDatabase SET [AccessEndDate] =wa.AcessEndDate FROM #WRK_ProfDatabase AS wp INNER JOIN @WRK_AccessEndDate AS wa ON wp.Mode=wa.Mode And wp.EndDate=wa.EndDate and ISNULL(wp.GracePeriod, 0)=ISNULL(wa.Graceperiod, 0) --End AccessEnddate culculation Insert [dbo].[ProfDatabase] Select wpdb.ProfNo, wpdb.DbVerNo, wpdb.SeqNo, wpdb.Enable, wpdb.SelDefault, wpdb.CustomLimiter, wpdb.CtrlCustID, wpdb.StartPage, wpdb.SugSubject, wpdb.Mode, wpdb.AccessEndDate from #WRK_ProfDatabase wpdb left outer join [dbo].[ProfDatabase] pdb on wpdb.ProfNo=pdb.ProfNo and wpdb.DbVerNo=pdb.DbVerNo where pdb.ProfNo is null DROP TABLE #WRK_ProfDatabase IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END End COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLangListBrowseBySeqNo_70] AS BEGIN SELECT [dbo].[LangList].[SeqNo], [dbo].[LangList].[LangCode], [dbo].[LangList].[Description], dbo.EAIF_GetInterfaceListForDefaultLang_81([dbo].[LangList].[LangCode]) As InterfaceList FROM [dbo].[LangList] ORDER BY [dbo].[LangList].[SeqNo] END
CREATE PROCEDURE [dbo].[EATL_GetToolbarItemForRegularDBs_100] (@langCode varchar(10)) AS -- category : lpt : landing page toolbar items select f.FeatureName, FieldValueXml.query('fields/field[@name="ToolbarCaption"][@lang=sql:variable("@langCode")]').value('.', 'nvarchar(100)') from [dbo].[FeatureValues] fv inner join [dbo].[FeatureList] f on (f.FeatureNo=fv.FeatureNo) where f.Category='lpt'
CREATE PROCEDURE [dbo].[EPCS_GetDbBrowseOptions_76]( @DbName varchar(10), @Label varchar(10) ) AS BEGIN DECLARE @DbVerNo int SET @DbVerNo=dbo.EAIF_GetDbVerNo_70( @DbName, @Label ) SELECT [b].[BrowseOptionId],[a].[OptionType],[a].[SearchString],[a].[TargetDb],[a].[SourceType],[a].[TabImage],[a].[AuthoritySubset],[a].[AuthorityView],[a].[IsHeading], dbo.EAIF_GetBrowseOptionCaptions_76(a.DbVerNo,a.BrowseOptionNo) as OptionCaptions, dbo.EAIF_GetBrowseResultCaptions_76(a.DbVerNo,a.BrowseOptionNo) as ResultCaptions, dbo.EAIF_GetBrowseDescriptions_76(a.DbVerNo,a.BrowseOptionNo) as Descriptions FROM [dbo].[DbBrowseOption] a INNER JOIN [dbo].[BrowseOptionList] b ON a.BrowseOptionNo=b.BrowseOptionNo WHERE [a].[DbVerNo] = @DbVerNo END
Create PROCEDURE [dbo].[EAUI_GetFeatureFields_103](@FeatureNo int, @FieldLevel char, @ItemNo int) AS BEGIN DECLARE @Category varchar(20) DECLARE @TemplCategory varchar(20) SELECT @Category=[dbo].[FeatureList].[Category] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo SET @TemplCategory=@Category+'_templ' SELECT [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant], [dbo].[FeatureList].[VisibleItemCount], [dbo].[FeatureList].[SelectionMode], [dbo].[FeatureList].[AutoAddForInterfaces] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo] =@FeatureNo SELECT ff.FieldName,ff.FieldType,ff.IncludeInSummary, ff.EditControl,ff.ValueTemplate FROM [dbo].[FeatureList] fl join [dbo].[FeatureFields] ff on fl.FeatureNo = ff.FeatureNo AND [ff].[FieldLevel]=@FieldLevel WHERE fl.Category= @TemplCategory ORDER BY [ff].[SeqNo] SELECT [dbo].[FeatureValues].[FieldValueXml] FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo AND [dbo].[FeatureValues].[ItemNo]=@ItemNo END
CREATE Procedure [dbo].[EAIP_UpdateConvertedUtf8FeatureXmlValue_102] (@InterfaceFeatureNo int, @ItemNo int, @SeqNo int = NULL, @FieldsXML nvarchar(max) ) AS Begin Begin Try MERGE [dbo].[InterfaceFeatureValues] as Target Using (Select @InterfaceFeatureNo as InterfaceFeatureNo, @ItemNo as ItemNo, ISNULL(@SeqNo,NULL) as SeqNo, CAST(@FieldsXML as XML) as FieldXML) as Source On (Target.InterfaceFeatureNo=Source.InterfaceFeatureNo and Target.ItemNo=Source.ItemNo) When matched Then Update set Target.FieldValueXml= Source.FieldXML, Target.SeqNo = Source.SeqNo When Not matched by target Then Insert ([InterfaceFeatureNo], [ItemNo], [FieldValueXml],[SeqNo]) Values (Source.InterfaceFeatureNo, Source.ItemNo, Source.FieldXML,Source.SeqNo); End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDbLimiterDefault_86]( @UserID nvarchar(20),@UserIP varchar(15),@ProfNo int,@DbVerNo int,@LimiterNo int, @DefValue varchar(255))AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbName varchar(10) SELECT @DbName = [dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @LimiterID varchar(10) SELECT @LimiterID=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo BEGIN TRANSACTION UPDATE [dbo].[ProfDbLimiter2] SET [dbo].[ProfDbLimiter2].[DefValue]=@DefValue Where [dbo].[ProfDbLimiter2].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo IF @@ROWCOUNT=0 AND @DefValue<>'' INSERT INTO [dbo].[ProfDbLimiter2] ([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue]) SELECT @ProfNo,@DbVerNo,ins.IntfScreenNo,@LimiterNo, 1, @DefValue FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[Profile] p ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version WHERE p.ProfNo=@ProfNO IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Profile Db Limiter Default', @ProfLogName, @DbName, @LimiterID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_XmlDecode_70](@Input varchar(8000)) RETURNS varchar(8000) AS BEGIN RETURN ISNULL(REPLACE(REPLACE(REPLACE(REPLACE(@Input,'&','&'),'<','<'),'>','>'),'"','"'),'') END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamTblProfItems_90] (@ParamNo int, @ProfNo int) AS select * FROM dbo.EAIF_GetTblParamItemsForProfDB_90(@ParamNo, @ProfNo)
CREATE PROCEDURE [dbo].[EAIP_GetProfDbLimiters_235] ( @custId varchar(10), @groupId varchar(10), @profId varchar(10), @dbNamesList varchar(max), @langCode varchar(10), @paramScreenIdList varchar(max), @includeLocalLimiters bit ) AS BEGIN DECLARE @profNo INT; DECLARE @version VARCHAR(10); DECLARE @interfaceId VARCHAR(10); SELECT @profNo = ProfNo, @interfaceId = InterfaceID, @version = Version FROM dbo.EAIF_GetProfShortInfo_235(@custId, @groupId, @profId); DECLARE @screenNo INT = (SELECT TOP 1 IntScr.IntfScreenNo FROM dbo.InterfaceScreen IntScr INNER JOIN dbo.Profile P ON IntScr.InterfaceID = P.InterfaceID AND IntScr.Version = P.Version WHERE P.ProfNo = @profNo) DECLARE @bShowProf BIT = (SELECT dbo.EAIF_GetProfileParamScalarValue_70(@profNo, 'showProfileLimitersDatabaseList')) EXEC dbo.EAIP_GetDisciplineLimiter_235 @profNo, @LangCode IF @bShowProf = 1 BEGIN EXEC dbo.EAIP_GetProfSpecifiedDbLimiters_235 @profNo,@interfaceId, @version, @dbNamesList, @paramScreenIdList, @langCode END ELSE BEGIN EXEC dbo.EAIP_GetProfileMultiDBLimiters_235 @profNo,@interfaceId, @version, @paramScreenIdList, @langCode END IF @includeLocalLimiters = 1 BEGIN EXEC dbo.EAIP_GetProfLocalLimiters_235 @profNo, @paramScreenIdList, @langCode END END
CREATE PROCEDURE [dbo].[EAIP_GetMarkets_161] AS BEGIN SELECT [EASUPPORT].[dbo].[MarketList].[MarketID], [EASUPPORT].[dbo].[MarketList].[Description] FROM EASUPPORT.dbo.MarketList Order BY [EASUPPORT].[dbo].[MarketList].[MarketID] END
CREATE PROCEDURE [dbo].[EAUI_UpdateCfgAppParam_70]( @UserID nvarchar(20), @UserIP varchar(15), @ParamNo int, @ParamName varchar(100), @ParamType char, @PromptText varchar(255), @EditControl varchar(50), @ValueTemplate nvarchar(1000), @ParamValue nvarchar(2000), @ItemName varchar(100), @ParamXMLValue nvarchar(max)) AS BEGIN EXEC [dbo].[EAIP_UpdateCfgAppParam_70] @ParamNo, @ParamName, @ParamType, @PromptText, '', '', 0, 0, @EditControl, @ValueTemplate, '', @ParamValue, '', @ParamXMLValue DECLARE @DataType varchar(15) SET @DataType = 'DataType:'+@ParamType EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Edit Application Parameter', @ParamName, @DataType, @PromptText END
CREATE FUNCTION [dbo].[EAIF_GetContentLinkTexts_82](@ContentType smallint) RETURNS nvarchar(max) AS BEGIN DECLARE @Texts nvarchar(max) SET @Texts=N'' SELECT @Texts = @Texts + N''+[dbo].[DbContentCaptions].[LinkText] +N' ' FROM [dbo].[DbContentCaptions] WHERE [dbo].[DbContentCaptions].[ContentType]=@ContentType RETURN @Texts END
CREATE Procedure dbo.EAUI_DeleteMDBLimiter_89 (@UserID nvarchar(20), @UserIP varchar(30), @LimiterNo int) As Declare @LimiterID varchar(10) select @LimiterID=[dbo].[MDbLimiterList].[LimiterID] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo Delete [dbo].[MDbLimiterList] Where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo if @@rowcount<>0 EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDBLimiters', 'Delete Limiter', @LimiterId
CREATE PROCEDURE [dbo].[EAIP_DeleteMasterCustomer_70](@CustID varchar(10),@ArchivalID int =null) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID) RETURN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ChildID]=@CustID DELETE [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@CustID DELETE [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID /* Reset Consortium Flag, Incase Parent was deleted or last child of a Parent*/ UPDATE [dbo].[Customer] SET [dbo].[Customer].[Consortium]=0, [dbo].[Customer].[TimeStamp] = GETDATE() FROM [dbo].[Customer] WITH (INDEX(IX_Customer)) WHERE [dbo].[Customer].[CustID] NOT IN (SELECT DISTINCT [dbo].[CustomerGroup].[ParentID] FROM [dbo].[CustomerGroup]) AND [dbo].[Customer].[Consortium]=1 EXEC EASUPPORT.dbo.EAIP_AddNotifyRequest_70 'system', 'S', 'REMOVE_CUST', @CustID, null, null, null IF @ArchivalID is not null INSERT INTO EASUPPORT.dbo.ArchiveCustGroupProfile([EASUPPORT].[dbo].[ArchiveCustGroupProfile].[ArchiveID],[EASUPPORT].[dbo].[ArchiveCustGroupProfile].[CustID],[EASUPPORT].[dbo].[ArchiveCustGroupProfile].[Activity]) VALUES (@ArchivalID,@CustID,'Master(Parent) Customer Info removed') COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetProfileSubGroupEditParamList_70] (@ProfNo int, @EditGroup varchar(100), @EditLevel int, @SubGroup varchar(100)) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID], @STMode = [dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT b.ParamNo ,e.ParamName -- ,Isnull(f.PromptText, b.PromptText) PromptText -- ,Isnull(f.Helptext, b.HelpText) HelpText ,b.PromptText ,b.HelpText ,b.EditSubGroup ,b.EditControl -- ,Isnull(f.ValueTemplate, b.ValueTemplate) ValueTemplate ,b.ValueTemplate ,ISNULL(ISNULL(d.ParamValue,c.DefValue),e.DefValue) AS Value ,e.ParamType ,ISNULL(b.ProcInfo,'') AS ProcInfo FROM [dbo].[InterfaceParamList] a LEFT OUTER JOIN [dbo].[CustomParamDefaults] c ON a.ParamNo = c.ParamNo AND c.InterfaceID = @InterfaceID AND c.Version = @Version AND c.MarketID = @MarketID AND c.STMode = @STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = @ProfNo AND d.ParamLevel = 'P' AND d.ParamNo = a.ParamNo Left Outer Join [dbo].[CustomParamEditDetail] b on a.ParamNo = b.ParamNo -- Left OUter Join InterfaceCustomParamEditDetail f -- on a.ParamNo = f.ParamNo and f.InterfaceID=@InterfaceID and f.Version=@Version INNER JOIN [dbo].[CustomParamList] e ON a.ParamNo = e.ParamNo WHERE a.InterfaceID = @InterfaceID AND a.Version = @Version AND b.EditGroup = @EditGroup AND b.EditLevel >= @EditLevel AND b.EditSubGroup = @SubGroup AND b.EditControl <> '' ORDER BY b.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AddProfileOtherServiceLinkDetails_86](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LinkURL nvarchar(512), @LinkIcon nvarchar(255), @LinkCaption nvarchar(50), @TargetProfNo int, @ContextSearchURL nvarchar(255) )AS BEGIN Declare @MaxSeqNo smallint SELECT @MaxSeqNo = Max([dbo].[ProfOtherServiceLinks].[SeqNo]) FROM [dbo].[ProfOtherServiceLinks] WHERE [dbo].[ProfOtherServiceLinks].[ProfNo] = @ProfNo INSERT INTO [dbo].[ProfOtherServiceLinks] ([dbo].[ProfOtherServiceLinks].[ProfNo], [dbo].[ProfOtherServiceLinks].[LinkURL], [dbo].[ProfOtherServiceLinks].[LinkIcon], [dbo].[ProfOtherServiceLinks].[LinkCaption], [dbo].[ProfOtherServiceLinks].[SeqNo], [dbo].[ProfOtherServiceLinks].[TargetProfNo], [dbo].[ProfOtherServiceLinks].[ContextSearchURL]) VALUES (@ProfNo, @LinkURL, @LinkIcon, @LinkCaption, ISNULL(@MaxSeqNo, 0)+1, @TargetProfNo, @ContextSearchURL) DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Add Profile Other Service Link', @ProfLogName, @LinkCaption, '','','' END
CREATE PROCEDURE [dbo].[EPLR_GetRecreateDbSegmentInfo_70](@DbName varchar(10), @SegName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @DbVerNo int SET @DbVerNo = dbo.EAIF_GetDbVerNo_70(@DbName,@DbLabel) SELECT v.Volume, [s].[EpsFile], [s].[EpdFile], [s].[EpiFile], [s].[LookupDir], dbo.EAIF_EplDateTimeToString([v].[LastUpdateDate]) as LastUpdateDate FROM [dbo].[DbVolume] v INNER JOIN [dbo].[DbSegFileInfo] s ON v.DbVerNo = s.DbVerNo AND v.Volume = s.Volume WHERE v.DbVerNo = @DbVerNo AND s.SegName = @SegName ORDER BY v.Volume END
CREATE PROCEDURE [dbo].[EAIP_AddDatabasesToDefaultProfile_88]( @CustID varchar(10), @GroupID varchar(10), @InterfaceID varchar(10), @Version varchar(10), @ExcludePrdOffNo int, @EndDate datetime, @SubscriptionNo int =0) AS BEGIN DECLARE @ProfNo int DECLARE @DbLabel varchar(10) DECLARE @DefProfID varchar(10) declare @MaxSeqNo int SELECT @DefProfID=[dbo].[InterfaceVersion].[DefProfID] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF EXISTS (SELECT 1 FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfDatabase] AS pb ON p.ProfNo=pb.ProfNo WHERE p.CustID=@CustID AND p.GroupID=@GroupID AND p.ProfID=@DefProfID) RETURN SELECT @ProfNo=[dbo].[Profile].[ProfNo], @DbLabel=[dbo].[Profile].[DbLabel] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@DefProfID IF @ProfNo is null RETURN DECLARE @WorkProfDatabase table (DbVerNo int, CtrlCustID varchar(10), Limiters varchar(100), SeqNo int identity(1,1), Mode char(1), EndDate datetime, RowNumber int Null, GracePeriod int, AccessEndDate datetime, SelDefault int, Enable bit) INSERT INTO @WorkProfDatabase (DbVerNo, CtrlCustID, Limiters, Mode, EndDate, GracePeriod, SelDefault, Enable) SELECT d.DbVerNo, cs.CtrlCustID, ISNULL(pkg.Limiters, ''), cs.Mode, cs.EndDate, pr.GracePeriod, 0, 0 FROM EASUPPORT.dbo.CustSubscription AS cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering AS po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo INNER JOIN [dbo].[DbList] AS d WITH (NOLOCK) ON pkg.ProductID=d.DbName INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product AS pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID WHERE cs.CustID=@CustID AND cs.PrdOffNo<> @ExcludePrdOffNo AND cs.Mode<>'X' AND d.DbLabel=@DbLabel AND pdi.InterfaceID=@InterfaceID AND pdi.Version=@Version GROUP BY d.DbVerNo, cs.CtrlCustID, ISNULL(pkg.Limiters,''), cs.Mode, cs.EndDate, pr.GracePeriod -- Add External Sources if any IF EXISTS (select 1 FROM [dbo].[Customer] AS c INNER JOIN [dbo].[CustExternalDbList] AS edbl ON c.CustNo=edbl.CustNo WHERE c.CustID=@CustID) INSERT INTO @WorkProfDatabase (DbVerNo, Limiters, Mode, EndDate, GracePeriod, SelDefault, Enable) SELECT edbl.DbVerNo, '', sub.Mode, sub.EndDate, p.GracePeriod, 0, 0 FROM [dbo].[CustExternalDbList] AS edbl WITH (NOLOCK) INNER JOIN [dbo].[Customer] AS c WITH (NOLOCK) ON c.CustNo=edbl.CustNo INNER JOIN EASUPPORT.dbo.CustSubscription AS sub WITH (NOLOCK) ON sub.CustID=c.CustID INNER JOIN EASUPPORT.dbo.ProductOffering AS po WITH (NOLOCK) ON sub.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg WITH (NOLOCK) ON sub.PrdOffNo = pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product AS p WITH (NOLOCK) ON pkg.ProductID=p.ProductID WHERE c.CustID=@CustID AND po.SourceType ='M' AND sub.PrdOffNo <> @ExcludePrdOffNo AND pdi.InterfaceID=@InterfaceID AND pdi.Version=@Version GROUP BY edbl.DbVerNo, sub.Mode, sub.EndDate, p.GracePeriod -- Add Catalogs Insert @WorkProfDatabase (DbVerNo, Limiters, Mode, EndDate, GracePeriod, SelDefault, Enable) Select dbl.DbVerNo, '', cs.Mode, cs.EndDate, p.GracePeriod, 0, 0 From EASUPPORT.dbo.CustomerCatalogs cc WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.CustSubscription cs WITH (NOLOCK) on cc.SubscriptionNo=cs.SubscriptionNo and cc.SubscriberID=cs.SubscriberID and cc.CustID=cs.CustID INNER JOIN [dbo].[DbList] dbl WITH (NOLOCK) on cc.DbName=dbl.DbName INNER JOIN EASUPPORT.dbo.ProductPackage pp WITH (NOLOCK) on cs.PrdOffNo=pp.PrdOffNo INNER JOIN EASUPPORT.dbo.Product p WITH (NOLOCK) on pp.ProductID=p.ProductID INNER JOIN EASUPPORT.dbo.ProductInterface [pi] WITH (NOLOCK) on p.ProductID=[pi].ProductID where cs.CustID=@CustID and dbl.DbLabel=@Dblabel and p.ProductType='C' and [pi].InterfaceID=@InterfaceID and [pi].Version=@Version and cs.SubscriptionNo<>@SubscriptionNo --Start AccessEnddate culculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), Graceperiod int, EndDate datetime, AcessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode, Graceperiod, EndDate) select distinct Mode, GracePeriod, EndDate from @WorkProfDatabase update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode='T' Update @WorkProfDatabase SET [AccessEndDate] =wa.AcessEndDate FROM @WorkProfDatabase AS wp INNER JOIN @WRK_AccessEndDate AS wa ON wp.Mode=wa.Mode And wp.EndDate=wa.EndDate and ISNULL(wp.GracePeriod, 0)=ISNULL(wa.Graceperiod, 0) --End AccessEnddate culculation --Start eliminating duplicates - Part I /* Always select the longer running subscription, even if the longer running mode is 'T'. Ideally we should set Mode to 'S' if customer has current 'S' even if the 'T' subscription has later AccessEndDate, but to support this we have to have a process to reset the mode when 'S' expired and we don't have it.. :(. In reality it should be a rare event. */ delete @WorkProfDatabase from @WorkProfDatabase w INNER JOIN (SELECT DbVerNo, Max(AccessEndDate) AS AccessEndDate FROM @WorkProfDatabase Group By DbVerNo) a ON w.DbVerNo=a.DbVerNo and w.AccessEndDate<>a.AccessEndDate --End eliminating duplicates - part I --Mark databases that have to be selected by default --Update @WorkProfDatabase Set SelDefault=1 --from DbparamList l, DbParamScalarValues v, @WorkProfDatabase w --where l.ParamName='defSelected' and l.paramNo=v.paramNo and -- v.DbVerNo=w.DbVerNo and v.paramValue=N'1' DECLARE @ParamNo int DECLARE @InheritFromPhysical BIT SELECT @ParamNo=[dbo].[DbParamList].[ParamNo], @InheritFromPhysical = [dbo].[DbParamList].[InheritFromPhysical] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] ='defSelected'; -- If it is not subset database or InheritFromPhysical is 0: Use param value for dbverno in @WRK_ProfDbs -- If it is subset database and InheritFromPhysical is 1: Use param value from physical dbverno UPDATE @WorkProfDatabase SET [SelDefault] = 1 FROM @WorkProfDatabase w LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = w.DbVerNo AND sv.ParamNo = @ParamNo LEFT OUTER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = w.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON psv.DbVerNo = ss.PhysDbVerNo AND psv.ParamNo = @ParamNo WHERE ((@InheritFromPhysical = 0 OR ss.PhysDbVerNo IS NULL) AND sv.ParamValue='1') OR (@InheritFromPhysical = 1 AND ss.PhysDbVerNo IS NOT NULL AND psv.ParamValue='1') --Start order calculation /* SF-6/18/2009 - commented out, something is wrong, ask Robert to check... if exists (select 1 from ProfDatabase where ProfNo = @ProfNo) select @MaxSeqNo=max(SeqNo) from ProfDatabase where ProfNo = @ProfNo else set @MaxSeqNo=0 Update @WorkProfDatabase set RowNumber=a.Pos from (Select DbVerNo, Row_Number() Over (Partition by CtrlCustID Order by DbVerNo) as Pos from @WorkProfDatabase) a join @WorkProfDatabase b on a.DbVerNo=b.DbVerNo */ --End order calculation --Need to capture products with limiters here because some of them may be removed in " eliminating duplicates - Part II" below DECLARE @WRK_ProfDbLimiter2 TABLE (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int, SeqNo int) IF EXISTS (Select 1 FROM @WorkProfDatabase WHERE LEN(Limiters)>0) BEGIN --add hidden limiters defined for the Product Offering to the ProfDLimiters2 DECLARE @DbVerNo int DECLARE @LimiterList varchar(100) DECLARE @IntfScreenNo int DECLARE C1_C CURSOR FOR SELECT wt.DbVerNo, wt.Limiters, ins.IntfScreenNo FROM @WorkProfDatabase AS wt CROSS JOIN [dbo].[Profile] AS p INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID = ins.InterfaceID AND p.Version=ins.Version WHERE p.ProfNo=@ProfNo AND wt.Limiters <> '' OPEN C1_C FETCH NEXT FROM C1_C INTO @DbVerNo,@LimiterList,@IntfScreenNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @WRK_ProfDbLimiter2(ProfNo,DbVerNo,IntfScreenNo,LimiterNo,SeqNo) SELECT @ProfNo,@DbVerNo,@IntfScreenNo, ll.LimiterNo,-1 FROM dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a INNER JOIN [dbo].[LimiterList] AS ll ON a.Item = ll.LimiterId WHERE ll.DbLabel=@DbLabel IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C RETURN END END FETCH NEXT FROM C1_C INTO @DbVerNO,@LimiterList,@IntfScreenNo END CLOSE C1_C DEALLOCATE C1_C UPDATE @WRK_ProfDbLimiter2 SET [SeqNo] = dbl.SeqNo FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[DbLimiter] AS dbl ON a.DbVerNo=dbl.DbVerNo AND dbl.LimiterNo=a.LimiterNo END --Start eliminating duplicates - Part II /* In case several subscriptions with overlapping products has the same EndDate - there still will be duplicates - needs to remove them- let's remove those that have grater SeqNo :( Note - by doing that we may once in a while remove CtrlCustID as well in case wheh: two subscriptions with diff. subscribers a. has the same products; b. were created with the same end date; c. both subscribers want limit sim user access; I guess that would be pretty rare accasion. Will look how to avaid this later */ delete @WorkProfDatabase from @WorkProfDatabase AS w INNER JOIN ( select DbVerNo, Mode,AccessEndDate, Min(SeqNo) As SeqNo from @WorkProfDatabase Group By DbVerNo,Mode,AccessEndDate Having count(*)>1 ) AS a ON w.DbVerNo=a.DbVerNo and w.Mode=a.Mode and w.SeqNo>a.SeqNo --End eliminating duplicates - Part II -------------------------------------------------- -- set enabled based on Interface and SourceType properties -------------------------------------------------- Update @WorkProfDatabase set [Enable]=newEnable, [SelDefault]=newSelDefault from @WorkProfDatabase wpdb join (select p.ProfNo, dbl.DbVerNo, newEnable=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc.StringValue, 'Standard') = 'Standard' then wpdb.Enable when isnull(istc.StringValue, 'Standard') = 'Disable' then 0 when isnull(istc.StringValue, 'Standard') = 'Enable' then 1 end, newSelDefault=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc2.StringValue, 'Standard')= 'Standard' then wpdb.SelDefault when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from [dbo].[Profile] p join (Select @ProfNo ProfNo, DbVerNo, SeqNo, Enable, SelDefault, 0 CustomLimiter, CtrlCustID, Mode, AccessEndDate FROM @WorkProfDatabase) wpdb on p.ProfNo=wpdb.ProfNo join [dbo].[DbList] dbl on wpdb.DbVerNo=dbl.DbVerNo join [dbo].[InterfaceVersion] iv on (p.InterfaceID=iv.InterfaceID and p.Version=iv.Version) left outer join [dbo].[InterfacePrimaryDatabases] ip on (p.InterfaceID=ip.InterfaceID and p.Version=ip.Version and dbl.DbVerNo=ip.DbVerNo) left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseAddRule' left outer join [dbo].[InterfaceSourceTypeConfig] istc2 on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and dbl.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule') a on wpdb.DbVerNo=a.DbVerNo --EHPMEBSCOADMIN-1343: When a subscription is added/modified ,the non-searchable databases are enabled by default. -- This update would override ALL other existing business rules around "enabling" the databases (including NewContent Auto-add feature) on the profile. Update @WorkProfDatabase set [Enable]=1 from @WorkProfDatabase wpdb JOIN [dbo].[DbList] d WITH (NOLOCK) ON wpdb.DbVerNo=d.DbVerNo AND d.NonSearchableDb=1 -- EhpmEbscoAdmin-1447 -- EAIF_GetHiddenProfDbList_133 returns all Databases that have been configured to not show on the Profile Database List -- For each of these Databases we need to configure them to be enabled and Selected by default for all Profiles UPDATE @WorkProfDatabase set [Enable]=1, [SelDefault]=1 from @WorkProfDatabase wpdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON wpdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS not null BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable], [dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter], [dbo].[ProfDatabase].[CtrlCustID], [dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate]) SELECT @ProfNo, DbVerNo, SeqNo, Enable, SelDefault, 0, CtrlCustID, Mode, AccessEndDate FROM @WorkProfDatabase INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue],[dbo].[ProfDbLimiter2].[SeqNo]) SELECT distinct ProfNo,DbVerNo,IntfScreenNo,LimiterNo,0,'On',SeqNo FROM @WRK_ProfDbLimiter2 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetLangListDescription_70](@LangCode varchar(10)) AS BEGIN SELECT [dbo].[LangList].[Description] FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode END
CREATE PROCEDURE [dbo].[EATL_GetToolbarItemRegDBFieldValue_100](@FeatureID varchar(100))AS BEGIN --Category : lpt: landing page toolbaritem -- Note: We cannot have duplicate featureId (featurename) for a category , -- it is an application restriction. -- ItemNo will be always 0 for 'lpt' SELECT fv.FieldValueXml FROM [dbo].[FeatureValues] fv inner join [dbo].[FeatureList] fl on (fl.FeatureNo=fv.FeatureNo) where fl.FeatureName=@FeatureID and fl.Category='lpt' and fv.ItemNo=0 END
CREATE PROCEDURE [dbo].[EPCS_GetDbClusters_102] (@DbName Varchar(10), @DbLabel Varchar(10))AS BEGIN SET NOCOUNT ON DECLARE @DBVerNo int, @DbType smallint SELECT @DbType = d.DbType, @DBVerNo = ISNULL(s.PhysDbVerNo,d.DbVerNo) -- get DBClusters from PhysicalDB if database is SubsetDB FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbName = @DbName AND d.DbLabel = @DbLabel IF(@DbType = 1) BEGIN IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT cl.ClustId ID, gc.XPath, gc.XPathEnh, ISNULL(dc.DbSearchTag, gc.Tag) AS Tag, gc.Tag AS TagGlobal, dbo.EAIF_GetClusterCaptions_80(cl.ClustId) as Captions, gc.Show, gc.CaseConversion, gc.MaxPercentageResults as MaxPercentReturn FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId AND cl.DbLabel = @DBLabel LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE ( dc.Enable = 1 OR (cl.AutoAdd2Db = 1) AND (dc.Enable Is Null OR dc.Enable = 1)) AND gc.Show = 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetFeatureFields_80](@FeatureNo int, @FieldLevel char, @ItemNo int) AS BEGIN DECLARE @Category varchar(20) DECLARE @TemplCategory varchar(20) SELECT @Category=[dbo].[FeatureList].[Category] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo SET @TemplCategory=@Category+'_templ' SELECT [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant], [dbo].[FeatureList].[VisibleItemCount], [dbo].[FeatureList].[SelectionMode] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo] =@FeatureNo SELECT ff.FieldName,ff.FieldType,ff.IncludeInSummary, ff.EditControl,ff.ValueTemplate FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureFields] ff ON fl.FeatureNo = ff.FeatureNo WHERE fl.Category= @TemplCategory AND [ff].[FieldLevel]=@FieldLevel ORDER BY [ff].[SeqNo] SELECT [dbo].[FeatureValues].[FieldValueXml] FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo AND [dbo].[FeatureValues].[ItemNo]=@ItemNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustExternalDbListPrimaryProxyHostIp_102] @CustNo int, @CustPrimaryHostIp varchar(45) AS BEGIN UPDATE [dbo].[CustExternalDbList] SET [dbo].[CustExternalDbList].[PrimaryProxyHostIp] = @CustPrimaryHostIp WHERE [dbo].[CustExternalDbList].[CustNo] = @CustNo AND ([dbo].[CustExternalDbList].[PrimaryProxyHostIp] IS NULL OR [dbo].[CustExternalDbList].[PrimaryProxyHostIp] = ''); END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDBOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNoList varchar(8000), @DbOrderList varchar(8000)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Database Order Or Default Selection for a Profile',@ProfLogName UPDATE [dbo].[ProfDatabase] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[ProfDatabase] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@DbVerNoList, @DbOrderList,'+') b ON a.DbVerNo=convert(int,b.Item) WHERE [a].[ProfNo]=@ProfNo END
CREATE FUNCTION [dbo].[EAIF_XmlEncode_241](@Input nvarchar(4000)) RETURNS nvarchar(4000) AS BEGIN RETURN ISNULL(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@Input,'&','&'),'<','<'),'>','>'),'"','"'),'''','''),'') END
--sql content merged from file: \StoredProcedures\EAUI_GetCustomParamXmlDefaultValues_97.sql CREATE Procedure dbo.EAUI_GetCustomParamXmlDefaultValues_97 (@ParamNo int,@InterfaceId varchar(10),@Version varchar(10)) AS BEGIN Select [dbo].[CustomParamXmlDefaults].[DefValue] as ParamValue from [dbo].[CustomParamXmlDefaults] where [dbo].[CustomParamXmlDefaults].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceId and [dbo].[CustomParamXmlDefaults].[Version]=@Version END
CREATE PROCEDURE dbo.[EAIP_GetProfileCopyParamList_161] ( @CustID varchar(10), @GroupID nvarchar(10), @ProfID varchar(10) ) AS BEGIN DECLARE @ProfNo INT SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF (@ProfNo IS NULL) BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END DECLARE @myRetTab TABLE (ProfNo INT, ParamNo INT, ParamName VARCHAR(100), PromptText VARCHAR(255), Heading VARCHAR(100), SubHeading VARCHAR(100), ProcInfo VARCHAR(1000), ChildCount INT, HeadingSeqNo INT, SubHeadingSeqNo INT, ParamSeqNo INT) INSERT @myRetTab EXEC [dbo].[EAUI_GetProfileCopyParamList_104] @ProfNo,1 SELECT ParamNo, ParamName, PromptText AS [Description], ProfNo, ChildCount,ProcInfo FROM @myRetTab END
CREATE Procedure [dbo].[EAIP_GetMDbAuthByInterface_90](@InterfaceId varchar(10), @Version varchar(10)) AS BEGIN SET NOCOUNT ON; SELECT imdbal.MultiDbAuthID, mdbal.Description FROM [dbo].[InterfaceMultiDbAuthList] imdbal INNER JOIN [dbo].[MultiDbAuthList] mdbal ON imdbal.MultiDbAuthID = mdbal.MultiDbAuthID WHERE imdbal.InterfaceID = @InterfaceId AND imdbal.Version = @Version; SELECT imdbal.MultiDbAuthID, mdbact.ContentType FROM [dbo].[InterfaceMultiDbAuthList] imdbal INNER JOIN [dbo].[MultiDbAuthContentTypes] mdbact ON imdbal.MultiDbAuthID = mdbact.MultiDbAuthID WHERE imdbal.InterfaceID = @InterfaceId AND imdbal.Version = @Version; SELECT imdbal.MultiDbAuthID, mdbac.LangCode, mdbac.LinkText, mdbac.MouseOverText FROM [dbo].[InterfaceMultiDbAuthList] imdbal INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON imdbal.MultiDbAuthID = mdbac.MultiDbAuthID WHERE imdbal.InterfaceID = @InterfaceId AND imdbal.Version = @Version; SELECT imdbal.MultiDbAuthID, mdbac.LangCode, mdbac.LinkText, mdbac.MouseOverText FROM [dbo].[InterfaceMultiDbAuthList] imdbal INNER JOIN [dbo].[MultiDbAuthInterfaceCaption] mdbac ON imdbal.MultiDbAuthID = mdbac.MultiDbAuthId AND imdbal.InterfaceID = mdbac.InterfaceID AND imdbal.Version = mdbac.Version WHERE imdbal.InterfaceID = @InterfaceId AND imdbal.Version = @Version; Select [dbo].[InterfaceMultiDbAuthList].[InterfaceID], [dbo].[InterfaceMultiDbAuthList].[Version], [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID], [dbo].[InterfaceMultiDbAuthList].[SeqNo] From [dbo].[InterfaceMultiDbAuthList] WHERE [dbo].[InterfaceMultiDbAuthList].[InterfaceID] = @InterfaceId AND [dbo].[InterfaceMultiDbAuthList].[Version] = @Version; END
CREATE PROCEDURE [dbo].[EAUI_UpdateCfgAppServer_74](@UserID nvarchar(20), @UserIP varchar(15), @ServerNo int, @ServerURI varchar(255), @Description varchar(255), @ServerType char, @Status char ) AS BEGIN UPDATE [dbo].[ConfigServer] SET [dbo].[ConfigServer].[ServerURI]=@ServerURI, [dbo].[ConfigServer].[Description]=@Description, [dbo].[ConfigServer].[ServerType]=@ServerType, [dbo].[ConfigServer].[ServerStatus]=@Status WHERE [dbo].[ConfigServer].[ServerNo] = @ServerNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Edit Server', @ServerURI, @Description, @ServerType END
CREATE FUNCTION [dbo].[EAIF_GetContentTypeDbList_70](@DbVerNo int, @StartPageName varchar(50)) RETURNS VARCHAR(255) BEGIN DECLARE @DbNameList varchar(255) SELECT @DbNameList = COALESCE(@DbNameList+',','') + [dbl].[DbName] FROM [dbo].[DbAuthority] dba INNER JOIN [dbo].[DbList] dbl ON dba.AuthDbVerNo=dbl.DbVerNo INNER JOIN [dbo].[DbContentList] cnt ON dbl.ContentType=cnt.ContentType WHERE dba.MainDbVerNo=@DbVerNo AND dbl.WebClient=1 AND cnt.StartPageName=@StartPageName RETURN @DbNameList END
CREATE PROCEDURE [dbo].[EAUI_DeleteMDbSTS_90] (@UserId nvarchar(20), @UserIp varchar(30), @MultiDbSTSID varchar(10)) AS Begin Try Begin Transaction Delete [dbo].[MultiDbSTSList] where [dbo].[MultiDbSTSList].[MultiDBSTSID]=@MultiDbSTSID commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'MDbSTS', 'Delete MDbSTS', @MultiDbSTSID End Try Begin Catch rollback transaction End Catch
Create Procedure [dbo].[EAIP_DeleteMDbAuthorityDbRecords_90] @DbverNo int as Declare @Category char(1) select @Category = [dbtl].[Category] from [dbo].[DbTypeList] dbtl join [dbo].[DbList] dbl on dbtl.DbType=dbl.DbType where dbl.DbVerNo=@DbverNo if (@Category='A') Begin Delete [dbo].[DBMultiDbAuthList] where [dbo].[DBMultiDbAuthList].[DbVerNo]=@DbverNo End Else Begin Delete [dbo].[DBMultiDbAuthList] where [dbo].[DBMultiDbAuthList].[DbVerNo] in (Select [dbo].[DbAuthority].[AuthDbVerNo] from [dbo].[DbAuthority] where [dbo].[DbAuthority].[MainDbVerNo]=@DbverNo) End
CREATE PROCEDURE [dbo].[EAUI_GetProfileSubGroupEditParamList_76] (@ProfNo int, @EditGroup varchar(100), @EditLevel int, @SubGroup varchar(100)) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char DECLARE @ExcludeParamsTable TABLE ( ParamNo int) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID], @STMode = [dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo -- Admin 10.0.Some parameters have dependency on other parameter value /table value. -- If it does not meet the dependency business rules, exclude it from the listing. Insert into @ExcludeParamsTable Select [dbo].[EAIF_GetProfileParamsTobeExcluded_133].[ParamNo] from dbo.EAIF_GetProfileParamsTobeExcluded_133 (@InterfaceID,@Version,@ProfNo,1) SELECT distinct -- isnull(f.ParamNo, b.ParamNo) ParamNo b.ParamNo ,e.ParamName -- ,isnull(f.PromptText, b.PromptText) PromptText ,b.PromptText -- ,'' AS HelpText -- ,isnull(f.HelpText, b.HelpText) HelpText ,b.HelpText ,b.EditSubGroup ,b.EditControl -- ,isnull(f.ValueTemplate, b.ValueTemplate) ValueTemplate ,b.ValueTemplate ,ISNULL(ISNULL(d.ParamValue,c.DefValue),e.DefValue) AS Value ,case when (Select [cpsv].[ParamValue] from [dbo].[CustomParamScalarValues] cpsv where [cpsv].[TargetNo]=@ProfNo and [cpsv].[ParamLevel] = 'P' and cpsv.ParamNo=b.ParamNo) is null then 1 else 0 end as IsDefault ,e.ParamType ,ISNULL(b.ProcInfo,'') AS ProcInfo ,CASE ISNULL(pl.ParentParamNo,'') WHEN '' THEN 0 ELSE 1 END AS HasChildParams ,b.SeqNo ,ISNULL(b.HintText,'') AS HintText ,HasXmlFields = Case when exists (select 1 from [dbo].[CustomParamXmlFields] cpxf where cpxf.ParamNo=a.ParamNo) then '1' Else '0' End ,b.HierarchyDisplayOptions ,IsNull(IsNull(c.DefValuePrefix,e.DefValuePrefix),N'') as DefValuePrefix FROM [dbo].[InterfaceParamList] a LEFT OUTER JOIN [dbo].[InterfaceParamList2] a2 ON a.ParamNo = a2.ParamNo AND a.Version = a2.Version AND a.InterfaceID = a2.InterfaceID LEFT OUTER JOIN [dbo].[CustomParamDefaults] c ON a.ParamNo = c.ParamNo AND c.InterfaceID = @InterfaceID AND c.Version = @Version AND c.MarketID = @MarketID AND c.STMode = @STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = @ProfNo AND d.ParamLevel = 'P' AND d.ParamNo = a.ParamNo INNER JOIN -- Left Outer Join -- InterfaceCustomParamEditDetail f -- On a.ParamNo=f.ParamNo -- AND (a.EditLevel >= @EditLevel OR a2.EditLevel >= @EditLevel) -- AND f.InterfaceID=@InterfaceID and f.Version=@Version, [dbo].[CustomParamList] e ON a.ParamNo = e.ParamNo LEFT OUTER JOIN [dbo].[CustomParamList] pl ON e.ParamNo = pl.ParentParamNo INNER JOIN [dbo].[CustomParamEditDetail] b ON a.ParamNo = b.ParamNo LEFT OUTER JOIN @ExcludeParamsTable ep ON ep.ParamNo = b.ParamNo WHERE a.InterfaceID = @InterfaceID AND a.Version = @Version AND b.EditGroup = @EditGroup AND (a.EditLevel >= @EditLevel OR a2.EditLevel >= @EditLevel) AND b.EditSubGroup = @SubGroup AND b.EditControl <> '' AND ( a2.Mode = @STMode OR a2.Mode IS Null ) AND b.HierarchyDisplayOptions IN (0, 2) AND ep.ParamNo is NULL ORDER BY b.SeqNo, b.ParamNo END
CREATE PROCEDURE [dbo].[EAUI_AddProfileZ3950Target_70](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ItemName varchar(10), @ParamValue nvarchar(max)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') DECLARE @VendorName varchar(100) SELECT @VendorName=[dbo].[Z3950Vendors].[VendorName] From [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=convert(int,@ItemName) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) BEGIN RAISERROR('The Vendor Name (%s) already exists.',16,-1, @VendorName) RETURN END EXEC [dbo].[EAIP_UpdateProfileParamXmlValue_70] @UserID ,@UserIP,@ProfNo, @ParamNo, @ItemName ,@ParamValue DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Add Z39.50 Target to Profile',@ProfLogName,@VendorName END
-- use this for new ConfigService operation GetEPLRSearchMappings (EHPMEBSCOADMIN-919 and EHPMEBSCOADMIN-925) -- AND for new search mapping element to be added to GetEhostDatabase (EHPMEBSCOADMIN-963) CREATE PROCEDURE [dbo].[EPLR_GetSearchMappings_131](@DbName VARCHAR(10), @DbLabel VARCHAR(10), @eplrOnly BIT = 1) AS BEGIN IF (@eplrOnly = 1) -- get the eplr context or default if that doesn't exist BEGIN ;WITH eplrMappings_CTE (DbVerNo, DbName, DbLabel, ContextName, ConceptName, SearchTag) AS -- Define the CTE query. ( SELECT dl.DbVerNo, dl.DbName, dl.DbLabel, dscm.ContextName, dscm.ConceptName, dscm.SearchTag FROM dbo.DbSearchContextMapping dscm JOIN [dbo].[DbList] dl ON dscm.DbVerNo = dl.DbVerNo WHERE dl.DbName = @DbName AND dl.DbLabel = @DbLabel AND dscm.ContextName = 'eplr' ), defaultMappings_CTE (DbVerNo, DbName, DbLabel, ContextName, ConceptName, SearchTag) AS -- Define the CTE query. ( SELECT dl.DbVerNo, dl.DbName, dl.DbLabel, dscm.ContextName, dscm.ConceptName, dscm.SearchTag FROM dbo.DbSearchContextMapping dscm JOIN [dbo].[DbList] dl ON dscm.DbVerNo = dl.DbVerNo WHERE dl.DbName = @DbName AND dl.DbLabel = @DbLabel AND dscm.ContextName = 'default' ) SELECT ISNULL(a.DbName, b.DbName) AS DbName, ISNULL(a.DbLabel, b.DbLabel) AS DbLabel, ISNULL(a.ConceptName, b.ConceptName) AS ConceptName, ISNULL(a.SearchTag, b.SearchTag) AS SearchTag, ISNULL(a.ContextName, b.ContextName) AS Context FROM eplrMappings_CTE a FULL OUTER JOIN defaultMappings_CTE b ON a.DbVerNo = b.DbVerNo AND a.ConceptName = b.ConceptName END ELSE BEGIN SELECT dl.DbName, dl.DbLabel, dscm.ConceptName, dscm.SearchTag, dscm.ContextName AS Context FROM dbo.DbSearchContextMapping dscm JOIN [dbo].[DbList] dl ON dscm.DbVerNo = dl.DbVerNo WHERE dl.DbName = @DbName AND dl.DbLabel = @DbLabel ORDER BY dscm.ConceptName END END
CREATE PROCEDURE [dbo].[EAIP_AddDbBrowseOption_76] ( @DbVerNo int, @OptionID varchar(20), @OptionType varchar(1), @SearchString varchar(255), @TargetDb varchar(10), @SourceType varchar(100), @TabImage varchar (255), @SubsetID varchar(20), @ViewID varchar(20), @IsHeading int ) AS BEGIN /***stored procedure is used by EACopy utility**********************/ IF @SearchString='' SELECT @SearchString =null IF @TargetDb='' SELECT @TargetDb=null IF @SourceType='' SELECT @SourceType=null IF @TabImage='' SELECT @TabImage=null IF @SubsetID='' SELECT @SubsetID=null IF @ViewID='' SELECT @ViewID=null DECLARE @OptionNo int SELECT @OptionNo=[dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID BEGIN TRANSACTION IF @OptionNo IS NULL BEGIN INSERT INTO [dbo].[BrowseOptionList] ([dbo].[BrowseOptionList].[BrowseOptionId]) VALUES(@OptionID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END SELECT @OptionNo=[dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID END INSERT INTO [dbo].[DbBrowseOption] ([dbo].[DbBrowseOption].[DbVerNo],[dbo].[DbBrowseOption].[BrowseOptionNo],[dbo].[DbBrowseOption].[OptionType],[dbo].[DbBrowseOption].[SearchString],[dbo].[DbBrowseOption].[TargetDb],[dbo].[DbBrowseOption].[SourceType],[dbo].[DbBrowseOption].[TabImage],[dbo].[DbBrowseOption].[AuthoritySubset],[dbo].[DbBrowseOption].[AuthorityView],[dbo].[DbBrowseOption].[IsHeading]) VALUES (@DbVerNo,@OptionNo,@OptionType,@SearchString,@TargetDb,@SourceType,@TabImage,@SubsetID,@ViewID,@IsHeading) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLanguages_70] AS BEGIN SELECT [dbo].[LangList].[LangCode], [dbo].[LangList].[Description] FROM [dbo].[LangList] ORDER BY [dbo].[LangList].[SeqNo] END
CREATE PROCEDURE [dbo].[EATL_GetTopics_77] (@LangCode varchar(10))AS BEGIN SELECT tl.TopicID, tc.Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE tc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetDbClusters_89] (@DbName Varchar(10), @DbLabel Varchar(10))AS BEGIN SET NOCOUNT ON DECLARE @DBVerNo int, @DbType smallint SELECT @DbType = [dbo].[DbList].[DbType], @DBVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel IF(@DbType = 1) BEGIN IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT cl.ClustId ID, gc.XPath, gc.XPathEnh, ISNULL(dc.DbSearchTag, gc.Tag) AS Tag, gc.MinDisplay, gc.MaxDisplay, dbo.EAIF_GetClusterCaptions_80(cl.ClustId) as Captions, gc.Show FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId AND cl.DbLabel = @DBLabel LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE ( dc.Enable = 1 OR (cl.AutoAdd2Db = 1 AND dc.Enable Is Null) ) --cl.Show = 1 AND END END
CREATE PROCEDURE [dbo].[EAUI_GetFeatureItems_80](@FeatureNo int) AS BEGIN DECLARE @Category varchar(20) DECLARE @TemplCategory varchar(20) SELECT @Category=[dbo].[FeatureList].[Category] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldType, ff.IncludeInSummary, ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureFields] ff ON fl.FeatureNo=ff.FeatureNo WHERE fl.Category =@TemplCategory AND ff.FieldLevel='I'AND [ff].[IncludeInSummary]=1 ORDER BY ff.SeqNo SELECT [fv].[ItemNo],[fv].[FieldValueXml], IsNUll([fv].[SeqNo], 0) AS SeqNo FROM [dbo].[FeatureValues] fv WHERE [fv].[FeatureNo]=@FeatureNo AND fv.ItemNo <> 0 ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomer](@CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @Status char(1)) AS BEGIN UPDATE [dbo].[Customer] SET [dbo].[Customer].[CustName]=@CustName , [dbo].[Customer].[CustType]=@CustType , [dbo].[Customer].[Status]=@Status , [dbo].[Customer].[MarketID]=@MarketID , [dbo].[Customer].[TimeStamp] = GETDATE() WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDBSelDefault_70] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNoList varchar(8000), @DbSelDefaultList varchar(8000)) AS BEGIN /* Logging is being done by EAUI_UpdateProfileDbOrder_70, as they are both being executed from the same page. DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC EAIP_LogActivity_70 @UserId ,@UserIP,'Profiles', 'Modify Default Selected Databases for a Profile',@ProfLogName */ UPDATE [dbo].[ProfDatabase] SET [SelDefault] = convert(int,b.Value) FROM [dbo].[ProfDatabase] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@DbVerNoList, @DbSelDefaultList,'+') b ON a.DbVerNo=convert(int,b.Item) WHERE [a].[ProfNo]=@ProfNo END
CREATE FUNCTION [dbo].[Fake_EAIF_GetDbParamNumber_70](@ParamName varchar(100)) RETURNS smallint AS BEGIN RETURN 1 END
CREATE Procedure [dbo].[EAUI_GetCustomParamXmlFields_89] @ParamNo int as BEGIN Select [dbo].[CustomParamXmlFields].[FieldNo],[dbo].[CustomParamXmlFields].[ParamNo],[dbo].[CustomParamXmlFields].[FieldName],[dbo].[CustomParamXmlFields].[FieldDisplayName], [dbo].[CustomParamXmlFields].[FieldType],[dbo].[CustomParamXmlFields].[MaxLength],[dbo].[CustomParamXmlFields].[ControlType],[dbo].[CustomParamXmlFields].[ValueTemplate],[dbo].[CustomParamXmlFields].[SeqNo], [dbo].[CustomParamXmlFields].[SortField],ISNULL([dbo].[CustomParamXmlFields].[EditLevel],'') AS EditLevel,[dbo].[CustomParamXmlFields].[DisplayLevel], [dbo].[CustomParamXmlFields].[Required] from [dbo].[CustomParamXmlFields] where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo Order by [dbo].[CustomParamXmlFields].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_GetProfileCustomWidgetsList_161] (@theProfNo int) AS BEGIN CREATE TABLE #tmpDispalyScreens ( FieldCode VARCHAR(30), Description NVARCHAR(100) ) INSERT INTO #tmpDispalyScreens EXEC [dbo].[EAUI_GetCustomWidgetDisplayScreens_100] @theProfNo SELECT WidgetID, Label, [td].[Description] AS [DisplayScreen] FROM [dbo].[ProfCustomWidgets] pw JOIN #tmpDispalyScreens td ON pw.DisplayScreen=td.FieldCode WHERE ProfNo=@theProfNo END
CREATE Procedure [dbo].[EAIP_GetMDbAuthByMainDb_90](@DbVerNo int) AS BEGIN SET NOCOUNT ON; Declare @Category char(1) select @Category = [dbtl].[Category] from [dbo].[DbTypeList] dbtl join [dbo].[DbList] dbl on dbtl.DbType=dbl.DbType where dbl.DbVerNo=@DbVerNo if (@Category='A') Begin SELECT mdbal.MultiDbAuthID, mdbal.Description FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[MultiDbAuthList] mdbal ON dbmdbal.MultiDbAuthID = mdbal.MultiDbAuthID WHERE dbmdbal.DbVerNo = @DbVerNo; SELECT dbmdbal.MultiDbAuthID, mdbact.ContentType FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[MultiDbAuthContentTypes] mdbact ON dbmdbal.MultiDbAuthID = mdbact.MultiDbAuthID WHERE dbmdbal.DbVerNo = @DbVerNo; SELECT dbmdbal.MultiDbAuthID, mdbac.LangCode, mdbac.LinkText, mdbac.MouseOverText FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON dbmdbal.MultiDbAuthID = mdbac.MultiDbAuthID WHERE dbmdbal.DbVerNo = @DbVerNo; SELECT dbmdbal.MultiDbAuthID, dbl.DbName, dbl.DbLabel FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[DbList] dbl ON dbmdbal.DbVerNo = dbl.DbVerNo WHERE dbl.DbVerNo = @DbVerNo; End Else Begin SELECT mdbal.MultiDbAuthID, mdbal.Description FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[MultiDbAuthList] mdbal ON dbmdbal.MultiDbAuthID = mdbal.MultiDbAuthID INNER JOIN [dbo].[DbAuthority] dba ON dbmdbal.DbVerNo = dba.AuthDbVerNo WHERE dba.MainDbVerNo = @DbVerNo; SELECT dbmdbal.MultiDbAuthID, mdbact.ContentType FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[MultiDbAuthContentTypes] mdbact ON dbmdbal.MultiDbAuthID = mdbact.MultiDbAuthID INNER JOIN [dbo].[DbAuthority] dba ON dbmdbal.DbVerNo = dba.AuthDbVerNo WHERE dba.MainDbVerNo = @DbVerNo; SELECT dbmdbal.MultiDbAuthID, mdbac.LangCode, mdbac.LinkText, mdbac.MouseOverText FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON dbmdbal.MultiDbAuthID = mdbac.MultiDbAuthID INNER JOIN [dbo].[DbAuthority] dba ON dbmdbal.DbVerNo = dba.AuthDbVerNo WHERE dba.MainDbVerNo = @DbVerNo; SELECT dbmdbal.MultiDbAuthID, dbl.DbName, dbl.DbLabel FROM [dbo].[DBMultiDbAuthList] dbmdbal INNER JOIN [dbo].[DbAuthority] dba ON dbmdbal.DbVerNo = dba.AuthDbVerNo INNER JOIN [dbo].[DbList] dbl ON dba.AuthDbVerNo = dbl.DbVerNo WHERE dba.MainDbVerNo = @DbVerNo; End End
CREATE PROCEDURE [dbo].[EAUI_UpdateCfgServerScalarParam_70](@UserId nvarchar(20), @UserIP varchar(15), @SrvNo int, @ParamNo int, @Value nvarchar(2000), @ApplyToAll bit = 0) AS BEGIN DECLARE @SrvID varchar(255), @ParamID varchar(100) SET @SrvID = dbo.EAIF_GetConfigServerURI_70(@SrvNo) SET @ParamID = dbo.EAIF_GetConfigParamName_70(@ParamNo) IF @ApplyToAll = 0 BEGIN IF EXISTS( SELECT 1 FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'A' AND [dbo].[ConfigParamScalarValues].[ParamValue] = @Value ) DELETE [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamScalarValues].[TargetNo] = @SrvNo ELSE IF EXISTS( SELECT 1 FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamScalarValues].[TargetNo] = @SrvNo ) UPDATE [dbo].[ConfigParamScalarValues] SET [dbo].[ConfigParamScalarValues].[ParamValue] = @Value WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamScalarValues].[TargetNo] = @SrvNo ELSE INSERT [dbo].[ConfigParamScalarValues]( [dbo].[ConfigParamScalarValues].[ParamNo], [dbo].[ConfigParamScalarValues].[ParamLevel], [dbo].[ConfigParamScalarValues].[TargetNo], [dbo].[ConfigParamScalarValues].[ParamValue] ) VALUES( @ParamNo, 'S', @SrvNo, @Value ) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Application Configuration','Edit Scalar Parameter', @SrvID, @ParamID END ELSE BEGIN DELETE [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'S' UPDATE [dbo].[ConfigParamScalarValues] SET [dbo].[ConfigParamScalarValues].[ParamValue] = @Value WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'A' EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Application Configuration','Edit Scalar Parameter(Globally)', @SrvID, @ParamID END END
CREATE FUNCTION [dbo].[EAIF_GetCustId_70](@CustNo int) RETURNS varchar(10) AS BEGIN RETURN (SELECT [dbo].[Customer].[CustID] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustNo]=@CustNo) END
CREATE PROCEDURE [dbo].[EAUI_DeleteMDbSTSSourceTypes_90] (@UserID nvarchar(20), @UserIP varchar(10), @MultiDbSTSID varchar(10), @STSNo int) AS Begin Try Begin Transaction Delete [dbo].[DocTypeMultiDbSTSList] where [dbo].[DocTypeMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID and [dbo].[DocTypeMultiDbSTSList].[DocTypeNo]=@STSNo Commit Transaction EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Delete SourceType from MDbSTS', @MultiDbSTSID, @STSNo End Try Begin catch rollback transaction End catch
CREATE PROCEDURE [dbo].[EAIP_DeleteProfile_70]( @ProfNo int) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' DECLARE @CustGroupProfile TABLE ( CustID varchar(10) NOT NULL, GroupID varchar(10) NOT NULL, ProfID varchar(10) NOT NULL ) DELETE [dbo].[Profile] OUTPUT DELETED.[CustID], DELETED.[GroupID], DELETED.[ProfID] INTO @CustGroupProfile WHERE [dbo].[Profile].[ProfNo] = @ProfNo DECLARE @GroupNo INT; SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(CustID, GroupID) FROM @CustGroupProfile DECLARE @defaultProfileForEbscoMobileAppNo INT = dbo.EAIF_GetCustomParamNumber_70('defaultProfileForEbscoMobileApp', 'G') DELETE cpsv FROM [dbo].[CustomParamScalarValues] cpsv INNER JOIN @CustGroupProfile cgp ON cpsv.[TargetNo] = @ProfNo AND cpsv.[ParamLevel] = 'P' OR cpsv.[TargetNo] = @GroupNo AND cpsv.[ParamLevel] = 'G' AND cpsv.[ParamNo] = @defaultProfileForEbscoMobileAppNo AND cpsv.[ParamValue] = CAST(@ProfNo as nvarchar(4000)) COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetProfileZ3950Target_70](@ProfNo int, @ItemName varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') SELECT [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName END
CREATE PROCEDURE [dbo].[EAUI_AddSelectServiceToAllSites_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @Service varchar(100)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('groupSSText','G') BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Site/Group','Add Select Service to all groups of all sites for consortia',@CustID,@Service DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamLevel]='G' AND [dbo].[CustomParamScalarValues].[ParamNo]= @ParamNo AND [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT c.GroupNo FROM dbo.CustomerGroup AS a INNER JOIN dbo.UserGroup AS c ON a.ChildID=c.CustID WHERE a.ParentID=@CustID) INSERT INTO [dbo].[CustomParamScalarValues] ([dbo].[CustomParamScalarValues].[TargetNo], [dbo].[CustomParamScalarValues].[ParamLevel], [dbo].[CustomParamScalarValues].[ParamNo], [dbo].[CustomParamScalarValues].[ParamValue]) SELECT c.GroupNo, 'G', @ParamNo, @Service FROM dbo.CustomerGroup a INNER JOIN dbo.UserGroup c ON a.ChildID = c.CustID WHERE a.ParentID = @CustID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPLR_GetSubscribedSourcesForTargetType_99](@DbName varchar(10), @DbLabel varchar(10), @TargetType varchar(20)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[DbSourceTarget] st JOIN [dbo].[DbList] d ON st.TargetDbNo=d.DbVerNo WHERE d.DbName=@DbName AND d.DbLabel = @DbLabel AND st.TargetType=@TargetType) RETURN DECLARE @DateNow DateTime SET @DateNow=GETDATE() DECLARE @CollectionIdMask varchar(50) DECLARE @SearchTag varchar(5) select @CollectionIdMask=ISNULL([dbo].[DbSourceTargetTypeList].[CollectionIDMask], ''), @SearchTag=ISNULL([dbo].[DbSourceTargetTypeList].[SearchTag],'') from [dbo].[DbSourceTargetTypeList] where [dbo].[DbSourceTargetTypeList].[TargetType]=@TargetType SELECT DISTINCT @CollectionIdMask AS IdMask, @SearchTag AS SearchTag, ( select d.DbName +',' from [dbo].[ProfDatabase] pd join [dbo].[DbList] d on pd.ProfNo=p.ProfNo and pd.DbVerNo=d.DbVerNo join [dbo].[DbSourceTarget] st on d.DbVerNo = st.SourceDbNo and st.TargetType = @TargetType where pd.Enable=1 and pd.SelDefault=1 and (pd.AccessEndDate is null or pd.AccessEndDate>@DateNow) Order by d.DbName for xml path ('') ) As DbList FROM [dbo].[Profile] p WHERE ( select d.DbName +',' from [dbo].[ProfDatabase] pd join [dbo].[DbList] d on pd.ProfNo=p.ProfNo and pd.DbVerNo=d.DbVerNo join [dbo].[DbSourceTarget] st on d.DbVerNo = st.SourceDbNo and st.TargetType = @TargetType where pd.Enable=1 and pd.SelDefault=1 and (pd.AccessEndDate is null or pd.AccessEndDate>@DateNow) Order by d.DbName for xml path ('') ) is not null and [p].[InterfaceID]='eds' GROUP BY [p].[ProfNo] END
CREATE PROCEDURE [dbo].[EAIP_AddDbBrowseOptionCaptions_76] ( @DbVerNo int, @OptionID varchar(20), @OptionCaption nvarchar(255), @ResultCaption nvarchar(255), @Description nvarchar(max), @Lang varchar(10) ) AS BEGIN /***stored procedure is used by EACopy utility**********************/ DECLARE @OptionNo int SELECT @OptionNo=[dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID IF @OptionNo IS NULL BEGIN RAISERROR ('Could not find BrowseOption with ID %s.',16,-1,@OptionID) RETURN END ELSE INSERT INTO [dbo].[DbBrowseOptionCaption] ([dbo].[DbBrowseOptionCaption].[DbVerNo],[dbo].[DbBrowseOptionCaption].[BrowseOptionNo],[dbo].[DbBrowseOptionCaption].[LangCode],[dbo].[DbBrowseOptionCaption].[OptionCaption],[dbo].[DbBrowseOptionCaption].[ResultCaption],[dbo].[DbBrowseOptionCaption].[Description] ) VALUES (@DbVerNo,@OptionNo,@Lang,@OptionCaption,@ResultCaption,@Description) END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterControlType_132] (@LimiterId VARCHAR(20), @DbLabel VARCHAR(10)) AS BEGIN SELECT lct.ControlType, [lct].[ControlTag], [lct].[ControlClass], [lct].[ControlFormat], [lct].[ControlName], [lct].[DefaultEditControl], [lct].[DefaultValueTemplate], [lct].[ProfileCustDefault] FROM [dbo].[LimiterControlType] lct JOIN [dbo].[LimiterList] ll ON lct.ControlType = ll.ControlType WHERE ll.LimiterId = @LimiterId AND ll.DbLabel = @DbLabel END
CREATE Procedure [dbo].[EATL_MultiDbAuthorities_90](@LangCode varchar(10))AS BEGIN SELECT DISTINCT mdbal.MultiDbAuthID, mdbac.LinkText, mdbac.MouseOverText FROM [dbo].[MultiDbAuthList] mdbal INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON mdbal.MultiDbAuthID = mdbac.MultiDbAuthID WHERE mdbac.LangCode=@LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetDbCustomFields_70](@ShortDBName varchar(10), @Label varchar(10)='live') AS BEGIN DECLARE @DbVerNo as int SET @DbVerNo = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) SELECT [gid].[FieldGroupId] as 'groupID', dbo.EAIF_GetDbFieldGroupDefaults_70(dbg.DbVerNo, dbg.FieldGroupNo) as 'defaults', dbo.EAIF_GetDbFieldElements_70(dbg.DbVerNo, dbg.FieldGroupNo, ',') as 'elements', dbo.EAIF_GetDbFieldGroupCaptions_70(dbg.DbVerNo, dbg.FieldGroupNo) as 'captions' FROM [dbo].[DbFieldGroup] dbg INNER JOIN [dbo].[FieldGroupList] gid ON dbg.FieldGroupNo=gid.FieldGroupNo INNER JOIN [dbo].[DbFieldGroupCaption] cpn ON dbg.DbVerNo=cpn.DbVerNo AND dbg.FieldGroupNo=cpn.FieldGroupNo AND cpn.LangCode='en' WHERE dbg.DbVerNo=@DbVerNo ORDER BY cpn.Caption END
CREATE PROCEDURE [dbo].[EAUI_GetFeatureItemsXml_77]( @InterfaceFeatureNo int)AS BEGIN SELECT [dbo].[InterfaceFeatureValues].[ItemNo],[dbo].[InterfaceFeatureValues].[SeqNo],[dbo].[InterfaceFeatureValues].[Show],[dbo].[InterfaceFeatureValues].[FieldValueXml] FROM [dbo].[InterfaceFeatureValues] WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]>0 ORDER BY [dbo].[InterfaceFeatureValues].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomerEmailListAddress_153] ( @CustID varchar(10), @ListName varchar(100), @EmailAddress nvarchar(255), @EmailHash VARBINARY(600), @NewEmailAddress NVARCHAR(255), @NewEmailHash VARBINARY(600) )as begin declare @CustNo int declare @ParamNo int SET @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo = [dbo].[CustomParamEmailList].[ParamNo] FROM dbo.CustomParamEmailList WHERE [dbo].[CustomParamEmailList].[ParamName] = @ListName AND [dbo].[CustomParamEmailList].[ParamLevel] = 'C' OPEN SYMMETRIC KEY Sym_EmailAddress DECRYPTION BY CERTIFICATE Cert_EmailAddress DECLARE @hashEmailMatch AS TABLE(TargetNo INT, ParamNo INT, CreateDate DATETIME2, DecryptedEmail NVARCHAR(600)) INSERT INTO @hashEmailMatch(TargetNo, ParamNo, CreateDate, DecryptedEmail ) SELECT [dbo].[CustomParamEmailListValues].[TargetNo], [dbo].[CustomParamEmailListValues].[ParamNo], [dbo].[CustomParamEmailListValues].[CreateDate], CONVERT ( nVarchar(255), DecryptByKey([dbo].[CustomParamEmailListValues].[EmailAddress])) FROM dbo.CustomParamEmailListValues WHERE [dbo].[CustomParamEmailListValues].[EmailHash] = @EmailHash AND [dbo].[CustomParamEmailListValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamEmailListValues].[TargetNo] = @CustNo DECLARE @EmailEnc VARBINARY(600) SELECT @EmailEnc = ENCRYPTBYKEY(KEY_GUID('Sym_EmailAddress'),@NewEmailAddress) CLOSE SYMMETRIC KEY Sym_EmailAddress IF NOT EXISTS (SELECT 1 FROM @hashEmailMatch WHERE DecryptedEmail = @EmailAddress) BEGIN RAISERROR('Update Failed. Email Address does not exist on List.', 16, 1) END ELSE BEGIN UPDATE cpel SET [cpel].[EmailAddress] = @EmailEnc, [cpel].[EmailHash] = @NewEmailHash FROM dbo.CustomParamEmailListValues cpel INNER JOIN @hashEmailMatch h ON h.TargetNo = cpel.TargetNo AND h.ParamNo = cpel.ParamNo AND h.CreateDate = cpel.CreateDate WHERE [h].[DecryptedEmail] = @EmailAddress END END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDBStartPage_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNoList varchar(8000), @StartPageList varchar(8000)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Database StartPage for a Profile',@ProfLogName UPDATE [dbo].[ProfDatabase] SET [StartPage] = b.Value FROM [dbo].[ProfDatabase] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@DbVerNoList, @StartPageList, '+') b ON a.DbVerNo=CONVERT(int, b.Item) WHERE [a].[ProfNo]=@ProfNo END
/* ============================================================================== Developer: Anne Wan Create date: 3/20/2008 Description: fn to encapsulate calculation logic applied to Access End Date Update history: 8/14/2008 AW resolved a datetime overflow issue caused by max value '12/31/9999' 10/02/2011` SF defect fix eadm-2487-case when 2 holidays fallows ufter the weekend select dbo.fn_GetEPAccessEndDate_90('2007-10-30 16:00:00.000',null,null,null) select dbo.fn_GetEPAccessEndDate_90('2007-10-30 8:30:00.000',null,null,'7:45 am') select dbo.fn_GetEPAccessEndDate_90('2007-10-30 7:45 am',null,null,null) select dbo.fn_GetEPAccessEndDate_90('2007-10-30 5:31 pm',null,null,null) select dbo.fn_GetEPAccessEndDate_90('2008-10-01 2:00 pm',90,null,null) ================================================================================*/ CREATE function [dbo].[fn_GetEPAccessEndDate_90] ( @p_EndDate datetime, @p_GracePeriodDays int, @p_SysAdminDays int, @p_StartHour varchar(10) ) returns datetime as begin declare @AccessEndDate datetime, @GracePeriodDays int, @SysAdminDays int, @StartHour datetime /*Skip all datetime of which the year goes beyond 1900-9000*/ if (year(@p_EndDate) between 1900 and 9000) begin /*Remove time part of @p_EndDate if @p_StartHour specified*/ if @p_EndDate is not null and @p_StartHour is not null begin set @p_EndDate = convert(datetime, convert(varchar, @p_EndDate, 101), 101) set @StartHour = cast(@p_StartHour as datetime) end /*set default 90-day grace period if no grace period specified*/ if (@p_GracePeriodDays is null or rtrim(@p_GracePeriodDays) = '') set @GracePeriodDays = 90 else set @GracePeriodDays = @p_GracePeriodDays /*set default 0 sys admin day if no sys admin days specified*/ if @p_SysAdminDays is null set @SysAdminDays = 0 else set @SysAdminDays = @p_SysAdminDays if @p_StartHour is not null set @AccessEndDate = dateadd(ss, datepart(ss, @StartHour), dateadd(mi, datepart(mi, @StartHour), dateadd(hh, datepart(hh, @StartHour), dateadd(dd, @SysAdminDays, dateadd(dd, @GracePeriodDays, @p_EndDate))))) else begin set @AccessEndDate = dateadd(dd, @SysAdminDays, dateadd(dd, @GracePeriodDays, cast(@p_EndDate as datetime))) /*Time part of access end date should fall between 8:30 am and 5:30 pm inclusive*/ if convert(datetime, cast(datepart(hh, @AccessEndDate) as varchar) + ':' + cast(datepart(mi, @AccessEndDate) as varchar), 101) not between convert(datetime, '1900-01-01 08:30 am', 101) and convert(datetime, '1900-01-01 05:30 pm', 101) begin declare @LowBoundEndDate datetime, @UpBoundEndDate datetime, @AccessEndDateTimePart datetime set @LowBoundEndDate = convert(datetime, '1900-01-01 08:30 am', 101) set @UpBoundEndDate = convert(datetime, '1900-01-01 05:30 pm', 101) set @AccessEndDateTimePart = convert(datetime, cast(datepart(hh, @AccessEndDate) as varchar) + ':' + cast(datepart(mi, @AccessEndDate) as varchar), 101) set @AccessEndDate = case when datediff(mi, @AccessEndDateTimePart, @LowBoundEndDate)> 0 then dateadd(mi, datepart(mi, @LowBoundEndDate), dateadd(hh, datepart(hh, @LowBoundEndDate), convert(datetime, convert(varchar, @AccessEndDate, 101), 101))) when datediff(mi, @AccessEndDateTimePart, @UpBoundEndDate)< 0 then dateadd(mi, datepart(mi, @LowBoundEndDate), dateadd(hh, datepart(hh, @LowBoundEndDate), convert(datetime, convert(varchar, dateadd(dd, 1, @AccessEndDate), 101), 101))) end end end SET @AccessEndDate = dateadd(dd, -1, @AccessEndDate) --to be able to use while below DECLARE @DayOfWeek varchar(15) DECLARE @ValidDate bit SET @ValidDate = 0 While @ValidDate = 0 BEGIN SET @AccessEndDate = dateadd(dd, 1, @AccessEndDate) SET @DayOfWeek=datename(weekday,@AccessEndDate) IF @DayOfWeek='Saturday' OR @DayOfWeek = 'Sunday' OR exists(select 1 from EASUPPORT.dbo.EPHolidays where datediff(dd, @AccessEndDate, [EASUPPORT].[dbo].[EPHolidays].[Holiday_Dte]) = 0) SET @ValidDate = 0 ELSE SET @ValidDate = 1 END end else set @AccessEndDate = @p_EndDate return(@AccessEndDate) end
CREATE Procedure [dbo].[EAUI_GetCustomParamXmlFieldValues_89] (@TargetNo int = null, @ParamLevel char(1), @ParamNo int, @ItemName varchar(255), @InterfaceID varchar(10), @Version varchar(10)) as if @TargetNo is not null Begin Declare @ParamValue nvarchar(max) Select @ParamValue=[dbo].[CustomParamXmlValues].[ParamValue] from [dbo].[CustomParamXmlValues] where [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo and [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlValues].[ItemName]=@ItemName if @ParamValue is null select [dbo].[CustomParamXmlDefaults].[DefValue] as ParamValue, [dbo].[CustomParamXmlDefaults].[AllowAddItem] from [dbo].[CustomParamXmlDefaults] where [dbo].[CustomParamXmlDefaults].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceID and [dbo].[CustomParamXmlDefaults].[Version]=@Version else Select @ParamValue as ParamValue, [dbo].[CustomParamXmlDefaults].[AllowAddItem] from [dbo].[CustomParamXmlDefaults] where [dbo].[CustomParamXmlDefaults].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceID and [dbo].[CustomParamXmlDefaults].[Version]=@Version End else select [dbo].[CustomParamXmlDefaults].[DefValue] as ParamValue, [dbo].[CustomParamXmlDefaults].[AllowAddItem] from [dbo].[CustomParamXmlDefaults] where [dbo].[CustomParamXmlDefaults].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceID and [dbo].[CustomParamXmlDefaults].[Version]=@Version
/* ========================================================================= Developer: Anne Wan Create date: 7/9/2008 Description: Initialize Access End Date in EAMASTER.dbo.ProfDatabase by CustID exec EAIP_InitializeAccessEndDateByCustID_91 'anne0922' ============================================================================*/ create procedure [dbo].[EAIP_InitializeAccessEndDateByCustID_91] ( @p_CustID varchar(10) ) as begin set nocount on exec [dbo].[EAIP_GetEndDateToProcess_91] @p_CustID exec [dbo].[EAIP_GetCustSubDB_91] @p_CustID exec [dbo].[EAIP_UpdateAccessEndDate_91] --display execution result select CSUB.CustID, PROF.GroupID, PROF.ProfID, PRDPACK.ProductID, isnull(PRD.GracePeriod,90), PROFDB.Mode, CSUB.EndDate, PROFDB.AccessEndDate from EASUPPORT.dbo.CustSubscription CSUB join dbo.Profile PROF on PROF.CustID = CSUB.CustID join EASUPPORT.dbo.ProductPackage PRDPACK on PRDPACK.PrdOffNo = CSUB.PrdOffNo join EASUPPORT.dbo.Product PRD on PRD.ProductID = PRDPACK.ProductID join EASUPPORT.dbo.ProductInterface PI on PI.ProductID = PRDPACK.ProductID and PI.InterfaceID = PROF.InterfaceID and PI.Version = PROF.Version join dbo.DbList DBLT on DBLT.DbName = PRDPACK.ProductID and DBLT.DbLabel = 'live' join dbo.ProfDatabase PROFDB on PROFDB.ProfNo = PROF.ProfNo and PROFDB.DbVerNo = DBLT.DbVerNo where CSUB.CustID = @p_CustID group by CSUB.CustID, PROF.GroupID, PROF.ProfID, PRDPACK.ProductID, PROFDB.Mode, CSUB.EndDate,PRD.GracePeriod, PROFDB.AccessEndDate set nocount off end
CREATE Procedure [dbo].[EAIP_GetMDbAuthCaptions_90] AS BEGIN SELECT [dbo].[MultiDbAuthCaption].[MultiDbAuthID], [dbo].[MultiDbAuthCaption].[LangCode], [dbo].[MultiDbAuthCaption].[LinkText], [dbo].[MultiDbAuthCaption].[MouseOverText] FROM [dbo].[MultiDbAuthCaption] END
CREATE PROCEDURE [dbo].[EAUI_UpdateCfgServerXMLParam_70](@UserId nvarchar(20), @UserIP varchar(15), @SrvNo int, @ParamNo int, @ItemName varchar(255), @Value nvarchar(max), @ApplyToAll bit = 0) AS BEGIN DECLARE @SrvID varchar(255), @ParamID varchar(100) SET @SrvID = dbo.EAIF_GetConfigServerURI_70(@SrvNo) SET @ParamID = dbo.EAIF_GetConfigParamName_70(@ParamNo) IF @ApplyToAll = 0 BEGIN IF EXISTS( SELECT 1 FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[TargetNo] = @SrvNo AND [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName ) UPDATE [dbo].[ConfigParamXmlValues] SET [dbo].[ConfigParamXmlValues].[ParamValue] = @Value, [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName WHERE [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[TargetNo] = @SrvNo AND [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName ELSE INSERT [dbo].[ConfigParamXmlValues]( [dbo].[ConfigParamXmlValues].[ParamNo], [dbo].[ConfigParamXmlValues].[ParamLevel], [dbo].[ConfigParamXmlValues].[TargetNo], [dbo].[ConfigParamXmlValues].[ParamValue], [dbo].[ConfigParamXmlValues].[ItemName] ) VALUES( @ParamNo, 'S', @SrvNo, @Value, @ItemName ) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Application Configuration','Edit XML Parameter', @SrvID, @ParamID END ELSE BEGIN DELETE [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName UPDATE [dbo].[ConfigParamXmlValues] SET [dbo].[ConfigParamXmlValues].[ParamValue] = @Value WHERE [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[ParamLevel] = 'A' AND [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Application Configuration','Edit XML Parameter(Globally)', @SrvID, @ParamID END END
CREATE FUNCTION [dbo].[EAIF_GetCustName_70](@CustID varchar(10)) RETURNS nvarchar(100) AS BEGIN RETURN (SELECT [dbo].[Customer].[CustName] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID) END
--sql content merged from file: \StoredProcedures\EAUI_DeleteProfAuthorityDbSettings_99.sql CREATE Procedure dbo.EAUI_DeleteProfAuthorityDbSettings_99 ( @UserID nvarchar(20), @UserIP varchar(20), @ProfNo int ) As BEGIN TRY BEGIN TRANSACTION /* Reset to Defaults - removes all customization from ProfAuthDbDefaults for the profile */ DELETE FROM dbo.ProfAuthDbDefaults Where [dbo].[ProfAuthDbDefaults].[ProfNo]=@ProfNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Profile', 'Delete Profile Authority Database Settings', @ProfNo COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE dbo.EAIP_DeletePromoteRequests_161 ( @cleanupDays INT ) AS BEGIN DECLARE @Rows INT SET @Rows = 1 WHILE (@Rows > 0) BEGIN DELETE TOP (500) FROM dbo.PromoteRequestStatus WHERE [dbo].[PromoteRequestStatus].[PromoteRequestTime] < DATEADD(dd,-@cleanupDays,GETDATE()) SET @Rows = @@ROWCOUNT END END
CREATE PROCEDURE [dbo].[EAUI_GetProfileZ3950Targets_70](@ProfNo int) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') SELECT a.ItemName, a.ParamValue, b.VendorName FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Z3950Vendors] b ON a.ItemName = convert(varchar(20), b.VendorID) WHERE [a].[TargetNo] = @ProfNo AND [a].[ParamLevel]='P' AND [a].[ParamNo]=@ParamNo END
CREATE PROCEDURE [dbo].[EAUI_AddSelectServiceToSite_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @Service varchar(100)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('groupSSText','G') BEGIN TRANSACTION --EXEC EAIP_LogActivityOld_70 @UserId ,@UserIP,'Add Select Service to all groups of the site',@CustID,@Service --DECLARE C1_C CURSOR FOR SELECT GroupID --FROM USERGROUP --WHERE CustID=@CustID --DECLARE @tempGroupID varchar(20) --OPEN C1_C -- FETCH NEXT FROM C1_C INTO @tempGroupID -- WHILE (@@FETCH_STATUS <> -1) -- BEGIN -- IF (@@FETCH_STATUS <> -2) -- BEGIN -- EXEC EAIP_UpdateGroupParamScalarValue_70 @CustID, @tempGroupID, 'groupSSText', @Service -- END -- FETCH NEXT FROM C1_C INTO @tempGroupID -- END --CLOSE C1_C --DEALLOCATE C1_C EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Site/Group','Add Select Service to all groups of the site',@CustID,@Service DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamLevel]='G' AND [dbo].[CustomParamScalarValues].[ParamNo]= @ParamNo AND [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT [dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID) INSERT INTO [dbo].[CustomParamScalarValues] ([dbo].[CustomParamScalarValues].[TargetNo], [dbo].[CustomParamScalarValues].[ParamLevel], [dbo].[CustomParamScalarValues].[ParamNo], [dbo].[CustomParamScalarValues].[ParamValue]) SELECT [dbo].[UserGroup].[GroupNo], 'G', @ParamNo, @Service FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPLR_GetSubsetSystemSearches_103] (@DbName varchar(10), @DBLabel varchar(10)) AS BEGIN SELECT 'system.sub-' + d.DbName CollectionID, ds.DBDefSearchExpression FROM [dbo].[DbList] d INNER JOIN [dbo].[DbSubset] ds ON ds.SubsetDbVerNo = d.DbVerNo INNER JOIN [dbo].[DbList] phys ON phys.DbVerNo = ds.PhysDbVerNo WHERE phys.DbName = @DbName AND phys.DbLabel = @DBLabel AND ds.DBDefSearchExprType = 'I' END
CREATE PROCEDURE [dbo].[EAIP_AddDbInterfaceBrowseOption_76] (@InterfaceID varchar(10), @Version varchar(10),@ScreenID varchar(10), @DbVerNo int, @OptionID varchar(10), @Show int, @SeqNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ DECLARE @IntfScreenNo int DECLARE @BrowseOptionNo int SELECT @IntfScreenNo=[dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID]=@ScreenID IF @IntfScreenNo IS NULL RETURN SELECT @BrowseOptionNo = [dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID IF @BrowseOptionNo IS NULL BEGIN RAISERROR('Can not find Browse Option ID %s', 16,-1, @OptionID) RETURN END INSERT INTO [dbo].[DbInterfaceBrowseOption] ([dbo].[DbInterfaceBrowseOption].[DbVerNo],[dbo].[DbInterfaceBrowseOption].[IntfScreenNo],[dbo].[DbInterfaceBrowseOption].[BrowseOptionNo],[dbo].[DbInterfaceBrowseOption].[Show],[dbo].[DbInterfaceBrowseOption].[SeqNo]) VALUES(@DbVerNo,@IntfScreenNo,@BrowseOptionNo,@Show,@SeqNo) END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterControlTypes_70] AS BEGIN SELECT [dbo].[LimiterControlType].[ControlName], [dbo].[LimiterControlType].[ControlType], [dbo].[LimiterControlType].[ProfileCustDefault] FROM [dbo].[LimiterControlType] ORDER BY [dbo].[LimiterControlType].[ControlName] END
CREATE PROCEDURE [dbo].[EATL_UpdateBrowseCaptions_76] (@UserID varchar(20), @UserIP varchar(15), @DbVerNo int, @BrowseOptionId varchar(20), @LangCode varchar(10), @OCaption nvarchar(255), @RCaption nvarchar(255), @Description nvarchar(255)) AS BEGIN DECLARE @BrowseOptionNo int SELECT @BrowseOptionNo=[dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@BrowseOptionId IF @BrowseOptionNo is null RETURN BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbBrowseOptionCaption] WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbBrowseOptionCaption].[BrowseOptionNo] = @BrowseOptionNo AND [dbo].[DbBrowseOptionCaption].[LangCode] = @LangCode) BEGIN UPDATE [dbo].[DbBrowseOptionCaption] SET [dbo].[DbBrowseOptionCaption].[OptionCaption] = @OCaption, [dbo].[DbBrowseOptionCaption].[ResultCaption] = @RCaption, [dbo].[DbBrowseOptionCaption].[Description] = @Description WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbBrowseOptionCaption].[BrowseOptionNo] = @BrowseOptionNo AND [dbo].[DbBrowseOptionCaption].[LangCode] = @LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN IF EXISTS(SELECT 1 FROM [dbo].[DbBrowseOption] WHERE [dbo].[DbBrowseOption].[DbVerNo] = @DbVerNo AND [dbo].[DbBrowseOption].[BrowseOptionNo] = @BrowseOptionNo ) INSERT INTO [dbo].[DbBrowseOptionCaption] ([dbo].[DbBrowseOptionCaption].[DbVerNo], [dbo].[DbBrowseOptionCaption].[BrowseOptionNo], [dbo].[DbBrowseOptionCaption].[LangCode], [dbo].[DbBrowseOptionCaption].[OptionCaption], [dbo].[DbBrowseOptionCaption].[ResultCaption], [dbo].[DbBrowseOptionCaption].[Description]) VALUES (@DbVerNo, @BrowseOptionNo, @LangCode, @OCaption, @RCaption, @Description) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDBCustomizerInfo_88](@ShortDBName Varchar(20), @Label Varchar(20)) AS BEGIN BEGIN SELECT [fv].[FieldValueXml] FROM [dbo].[DbFeature] df INNER JOIN [dbo].[FeatureList] fl ON df.FeatureNo = fl.FeatureNo INNER JOIN [dbo].[FeatureValues] fv ON df.FeatureNo = fv.FeatureNo INNER JOIN [dbo].[DbList] dl ON df.DbVerNo = dl.DbVerNo WHERE dl.DbName = @ShortDBName AND dl.DbLabel = @Label AND fl.Category = 'cust' AND [fv].[ItemNo] > 0; END END
CREATE PROCEDURE [dbo].[EAUI_GetFeatures_80](@Category varchar(10), @SubCategory varchar(20)='') AS BEGIN SELECT [dbo].[FeatureList].[FeatureNo], [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType], [dbo].[FeatureList].[DbDependant],[dbo].[FeatureList].[VisibleItemCount],[dbo].[FeatureList].[SelectionMode], case [dbo].[FeatureList].[AutoAddForInterfaces] when 0 then 'No' else 'Yes' End as AutoAddForInterfaces FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]=@Category AND [dbo].[FeatureList].[SubCategory]= @SubCategory ORDER BY [dbo].[FeatureList].[FeatureNo] DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldLevel,ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureFields] ff ON fl.FeatureNo=ff.FeatureNo WHERE fl.Category =@TemplCategory AND ff.FieldLevel='F'AND [ff].[IncludeInSummary]=1 ORDER BY ff.SeqNo SELECT fl.FeatureNo,fl.FeatureName, fv.FieldValueXml FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureValues] fv ON fl.FeatureNo=fv.FeatureNo WHERE fl.Category =@Category AND [fl].[SubCategory]= @SubCategory AND fv.ItemNo = 0 ORDER BY fl.FeatureNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomLinksMandatoryFields_103](@OldValue varchar(1000), @NewValue varchar(1000) ) AS /** EHPMEBSCOADMIN-877:Sql script to update CustomLinks mandatory field - references to edsepl should be changed. Release: 10.3 Note: IMPORTANT.This procedure would be used for one time data update ONLY. The SQL is in a procedure so that it can be called repeatedly with different combination of old/new values. This procedure will be called from manually run script () in Release folder **/ BEGIN BEGIN TRY BEGIN TRANSACTION DECLARE @SystemNoProfLink int select @SystemNoProfLink =[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] = 'systemCustomLink' DECLARE @CustomerCustomLink int select @CustomerCustomLink =[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] = 'customerCustomLink' DECLARE @T table (TargetNo int,ParamNo int,ItemName varchar(255), PValue xml) -- get the CustomerCustomLinks Insert into @T select [v].[TargetNo],[v].[ParamNo],[v].[ItemName], CAST([v].[ParamValue] AS XML) from [dbo].[CustomParamXmlValues] v WITH (NOLOCK) where v.ParamNo=@CustomerCustomLink and CAST(v.ParamValue AS XML).value ('(/customerCustomLink/@reqFields)[1]','varchar(8000)') = @OldValue and (v.TargetNo<>103128 and v.ItemName<>'kjtestcust:62271') -- get the System CustomLinks Insert into @T select [v].[TargetNo],[v].[ParamNo],[v].[ItemName], CAST([v].[ParamValue] AS XML) from [dbo].[CustomParamXmlValues] v WITH (NOLOCK) where v.ParamNo=@SystemNoProfLink and CAST(v.ParamValue AS XML).value ('(/systemCustomLink/@reqFields)[1]','varchar(8000)') = @OldValue and (v.TargetNo<>103128 and v.ItemName<>'kjtestcust:62271') update @T set PValue.modify('replace value of (/customerCustomLink/@reqFields)[1] with sql:variable("@NewValue")') update @T set PValue.modify('replace value of (/systemCustomLink/@reqFields)[1] with sql:variable("@NewValue")') update [dbo].[CustomParamXmlValues] set [dbo].[CustomParamXmlValues].[ParamValue]= cast(T.PValue as nvarchar(max)) from @T as T where CustomParamXmlValues.TargetNo = T.TargetNo and CustomParamXmlValues.ParamNo=T.ParamNo and CustomParamXmlValues.ItemName = T.ItemName Delete from @T COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileDbSugSubjects_80.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDbSugSubjects_80] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNo int, @SugSubject int, @ScreenID varchar(10))AS BEGIN MERGE dbo.ProfDbSugSubjTerms as T USING (Select @ProfNo as ProfNo,@DbVerNo as DbVerNo,@SugSubject as SugSubject, @ScreenID as ScreenID) as S ON (T.ProfNo=S.ProfNo and T.DbVerNo = S.DbVerNo and T.ScreenID=S.ScreenID) WHEN MATCHED THEN UPDATE SET T.SugSubject=S.SugSubject WHEN NOT MATCHED BY TARGET THEN INSERT ([ProfNo],[DbVerNo],[ScreenID],[SugSubject]) VALUES (S.ProfNo,S.DbVerNo,S.ScreenID,S.SugSubject); DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Database Suggest Subject for a Profile',@ProfLogName,@DbVerNo,@SugSubject,@ScreenID END
CREATE FUNCTION [dbo].[PES_GetFieldElementNo](@FieldElementName varchar(100)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[FieldElementList].[FieldElementNo] FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementName]=@FieldElementName) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamXmlGlobalValues_90] (@ParamNO int) AS BEGIN select [dbo].[CustomParamXMLGlobalDefaultValues].[DefValue] as ParamValue, [dbo].[CustomParamXMLGlobalDefaultValues].[AllowAddItem] from [dbo].[CustomParamXMLGlobalDefaultValues] where [dbo].[CustomParamXMLGlobalDefaultValues].[ParamNo]=@ParamNO END
CREATE PROCEDURE dbo.EAIP_InterfaceLanguageDelete_161 (@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version AND [dbo].[InterfaceUserLangList].[LangCode]=@LangCode) BEGIN RAISERROR('The Language Code ''%s'' is either invalid or not mapped to InterfaceID: ''%s'' and Version: ''%s', 16,-1, @LangCode, @InterfaceID, @Version ) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version AND [dbo].[InterfaceVersion].[DefLangCode]=@LangCode) BEGIN RAISERROR('The default Language Code ''%s'' cannot be deleted', 16,-1, @LangCode, @InterfaceID, @Version ) RETURN END BEGIN TRANSACTION DELETE [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID] =@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version AND [dbo].[InterfaceUserLangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Delete Language', @InterfaceID, @Version, @LangCode COMMIT TRANSACTION END
CREATE Procedure [dbo].[EAIP_GetMDbAuthList_90] AS BEGIN SELECT [dbo].[MultiDbAuthList].[MultiDbAuthID], [dbo].[MultiDbAuthList].[Description] FROM [dbo].[MultiDbAuthList] SELECT [dbo].[MultiDbAuthContentTypes].[MultiDbAuthID], [dbo].[MultiDbAuthContentTypes].[ContentType] FROM [dbo].[MultiDbAuthContentTypes] END
CREATE PROCEDURE [dbo].[EAUI_UpdateCollection_70](@UserID nvarchar(20), @UserIP varchar(15), @ColNo int, @ColName nvarchar(50), @Exclude bit = 0, @Notes nvarchar(255) = null, @AddAlternates bit=1) AS BEGIN DECLARE @LogColName varchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo) DECLARE @CustId varchar(10) SET @CustId=SUBSTRING(@LogColName, 1, CHARINDEX('.',@LogColName)-1) EXEC [dbo].[EAIP_UpdateCollection_70] @ColNo, @ColName, @Exclude, @Notes, @AddAlternates EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Edit Local Collection', @CustId, @LogColName, @ColName, @Exclude, @Notes END
CREATE FUNCTION [dbo].[EAIF_GetCustNo_70](@CustID varchar(10)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[Customer].[CustNo] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID) END
--sql content merged from file: \StoredProcedures\EAUI_DeleteProfCustGroupDb_86.sql CREATE PROCEDURE [dbo].[EAUI_DeleteProfCustGroupDb_86](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @GroupNo int) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Delete [dbo].[ProfCustGroupDb] where [dbo].[ProfCustGroupDb].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupDb].[GroupNo]=@GroupNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[ProfCustGroupList] WHERE [dbo].[ProfCustGroupList].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupList].[GroupNo]=@GroupNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Delete Profile Db Group', @ProfLogName, @GroupNo, '','','' COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAIP_DeleteScalarTypeCustomParam_92.sql /****** Object: StoredProcedure [EAIP_DeleteScalarTypeCustomParam_92] Script Date: 02/03/2009 10:27:05 ******/ CREATE PROCEDURE [dbo].[EAIP_DeleteScalarTypeCustomParam_92] ( @ParamName VARCHAR(100), @ParamLevel CHAR(1), @DeleteAllChildParams BIT = 0 ) AS BEGIN DECLARE @ParamNo INT DECLARE @ItemTable TABLE (item int) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,@ParamLevel) IF(@ParamNo > 0) BEGIN BEGIN TRY BEGIN TRANSACTION IF (@DeleteAllChildParams = 1) BEGIN -- Get all the ChildParamNo's if the input paramater is set to 'Y' INSERT INTO @ItemTable SELECT [dbo].[EAIF_GetChildInterfaceParams_92].[Item] from dbo.EAIF_GetChildInterfaceParams_92(@ParamNo) END -- insert the parent/Stand alone parameter to the itemtable INSERT INTO @ItemTable VALUES (@ParamNo) -- Delete CustomParamEditDetail entry Delete FROM dbo.CustomParamEditDetail WHERE [dbo].[CustomParamEditDetail].[ParamNo] in (select item from @ItemTable) -- Delete all entries for Interface/version/MarketID Delete FROM dbo.CustomParamDefaults WHERE [dbo].[CustomParamDefaults].[ParamNo] in (select item from @ItemTable) -- Delete all entries for Target/ParamLevel/ParamNo Delete FROM dbo.CustomParamScalarValues WHERE [dbo].[CustomParamScalarValues].[ParamNo] in (select item from @ItemTable) -- Delete all entries for InterfaceID/version Delete FROM dbo.InterfaceParamList WHERE [dbo].[InterfaceParamList].[ParamNo] in (select item from @ItemTable) -- Delete all entries for InterfaceID/Version/Mode/ParamNo/EditLevel Delete FROM dbo.InterfaceParamList2 WHERE [dbo].[InterfaceParamList2].[ParamNo] in (select item from @ItemTable) -- Finally Delete the entry from the CustomParamList Delete FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamNo] in (select item from @ItemTable) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParentParamNo]= @ParamNo) AND @DeleteAllChildParams =0 BEGIN UPDATE [dbo].[CustomParamList] SET [dbo].[CustomParamList].[ParentParamNo] = NULL WHERE [dbo].[CustomParamList].[ParentParamNo] = @ParamNo END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END --@ParamNo > 0 END -- Top
CREATE Procedure [dbo].[EAUI_GetQueryMaskDetails_91] AS BEGIN SELECT [dbo].[LimiterQueryMask].[QueryMaskId],[dbo].[LimiterQueryMask].[Description],[dbo].[LimiterQueryMask].[RegEx] FROM [dbo].[LimiterQueryMask] ORDER BY [dbo].[LimiterQueryMask].[QueryMaskId] ASC END
CREATE PROCEDURE [dbo].[EAUI_AddSLDbSources_78] ( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @TargetType varchar(10), @SelectedSources varchar(6000), @DbTargetVerNo int ) AS BEGIN INSERT INTO [dbo].[DbSourceTarget] ([dbo].[DbSourceTarget].[SourceDbNo], [dbo].[DbSourceTarget].[TargetDbNo], [dbo].[DbSourceTarget].[TargetType], [dbo].[DbSourceTarget].[SLCollID]) SELECT CONVERT(int,[dbo].[EAIF_GetItemTable_70].[Item]), @DbTargetVerNo, @TargetType, 'ep-'+ @DbName FROM dbo.EAIF_GetItemTable_70(@SelectedSources, ',') -- Log activity EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel,'Add SmartLink Sources' END
--sql content merged from file: \StoredProcedures\EPLR_GetSystemSearches_99.sql CREATE Procedure [dbo].[EPLR_GetSystemSearches_99] (@dbName varchar(10), @label varchar(10)) AS SELECT DISTINCT doc.DocTypeID, IsNull(dt.SearchString, doc.SearchString) AS SearchString FROM [dbo].[DbList] db JOIN [dbo].[DbDocType] dt ON db.DbVerNo = dt.DbVerNo JOIN [dbo].[DocTypeList] doc ON dt.DocTypeNo=doc.DocTypeNo WHERE dt.TargetDb = @dbName AND db.DbLabel = @label
CREATE PROCEDURE [dbo].[EAIP_AddDbInterfaceLimiter_76] (@InterfaceID varchar(10), @Version varchar(10),@ScreenID varchar(10), @DbVerNo int, @LimiterNo int, @ControlType int,@Show int, @DefValue varchar(255),@GroupNo int, @SeqNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ DECLARE @IntfScreenNo int SELECT @IntfScreenNo=[dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID]=@ScreenID IF @IntfScreenNo IS NULL RETURN IF @GroupNo <> null BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo]=@IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo]=@GroupNo) RETURN END IF @ControlType=-1 SET @ControlType=null IF @DefValue='' SET @DefValue=null IF @GroupNo=-1 SET @GroupNo=null INSERT INTO [dbo].[DbInterfaceLimiter] ([dbo].[DbInterfaceLimiter].[DbVerNo],[dbo].[DbInterfaceLimiter].[IntfScreenNo],[dbo].[DbInterfaceLimiter].[LimiterNo],[dbo].[DbInterfaceLimiter].[ControlType],[dbo].[DbInterfaceLimiter].[Show],[dbo].[DbInterfaceLimiter].[DefValue],[dbo].[DbInterfaceLimiter].[GroupNo],[dbo].[DbInterfaceLimiter].[SeqNo]) VALUES(@DbVerNo,@IntfScreenNo,@LimiterNo,@ControlType,@Show,@DefValue,@GroupNo,@SeqNo) END PRINT 'Updating EAIP_AddCustRights_70'
CREATE PROCEDURE [dbo].[EAUI_GetLimiterDefaults_70] (@LimiterNo int, @InterfaceId varchar(10), @Version varchar(10)) AS BEGIN SELECT ml.Description, IsNull(ld.ControlDefault,0) as ControlDefault, ISNULL(ld.BitFlag1,0) AS BitFlag1, ISNULL(ld.BitFlag2,0) AS BitFlag2, ISNULL(ld.BitFlag3,0) AS BitFlag3, ISNULL(ld.BitFlag4,0) AS BitFlag4, ml.MarketID FROM [dbo].[LimiterDefaults] ld RIGHT OUTER JOIN EASupport.dbo.MarketList ml ON (ld.MarketID = ml.MarketID AND ld.LimiterNo = @LimiterNo AND ld.InterfaceID = @InterfaceId AND ld.Version = @Version) END
CREATE PROCEDURE EATL_UpdateBrowseCaptions_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo int ,BrowseOptionId varchar(20) ,OCaption nvarchar(255) ,RCaption nvarchar(255) ,Description nvarchar(255) ) INSERT INTO #Objects ( DbVerNo ,BrowseOptionId ,OCaption ,RCaption ,Description ) SELECT m.c.value('(./DbVerNo)[1]', 'int') ,m.c.value('(./BrowseOptionId)[1]', 'varchar(20)') ,m.c.value('(./OCaption)[1]', 'nvarchar(255)') ,m.c.value('(./RCaption)[1]', 'nvarchar(255)') ,m.c.value('(./Description)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo int ,@BrowseOptionId varchar(20) ,@OCaption nvarchar(255) ,@RCaption nvarchar(255) ,@Description nvarchar(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@BrowseOptionId = BrowseOptionId ,@OCaption = OCaption ,@RCaption = RCaption ,@Description = Description FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateBrowseCaptions_76] @UserID ,@UserIP ,@DbVerNo ,@BrowseOptionId ,@Lang ,@OCaption ,@RCaption ,@Description SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDBDescription_70]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN SELECT [dbo].[DbParamXmlValues].[ParamValue] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) AND [dbo].[DbParamXmlValues].[ParamNo] = dbo.EAIF_GetDbParamNumber_70('shortDescription') END
CREATE PROCEDURE [dbo].[EAUI_GetFieldElement_70](@FieldElementNo int) AS BEGIN SELECT [dbo].[FieldElementList].[FieldElementName], [dbo].[FieldElementList].[Description] FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementNo]=@FieldElementNo END
--sql content merged from file: \StoredProcedures\EAIP_UpdateCustomParamScalarValue_70.sql CREATE PROCEDURE [dbo].[EAIP_UpdateCustomParamScalarValue_70](@TargetNo int, @ParamLevel char(1),@ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamScalarValues].[ParamNo] = @ParamNo) UPDATE [dbo].[CustomParamScalarValues] SET [dbo].[CustomParamScalarValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamScalarValues].[ParamNo] = @ParamNo ELSE INSERT INTO [dbo].[CustomParamScalarValues] values (@TargetNo,@ParamLevel,@ParamNo,@ParamValue) DECLARE @ParamName varchar(100) SELECT @ParamName=[dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo -- Temporary logic for Release 14.4 EhpmEbscoAdmin-2214. If guestAccessAuthType is bing updated we need to update guestAccessProxy and vice versa -- This logic will be removed in Release 15.1 when the guestAccessProxy Parameter will be removed. DECLARE @ParamNo2 INT IF @ParamName='guestAccessAuthType' BEGIN SELECT @ParamNo2=[dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]='guestAccessProxy' IF @ParamValue=N'proxy' BEGIN DECLARE @ParamValue2 NVARCHAR(4000) SELECT @ParamValue2=[cpsv].[ParamValue] FROM [dbo].[CustomParamScalarValues] cpsv JOIN [dbo].[CustomParamList] cpl ON cpsv.ParamNo=cpl.ParamNo AND cpl.ParamName='durableLinkPrimaryProxy' WHERE cpsv.TargetNo=@TargetNo AND cpsv.ParamLevel='P' IF EXISTS (SELECT 1 FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @ParamNo2) UPDATE [dbo].[CustomParamScalarValues] SET [dbo].[CustomParamScalarValues].[ParamValue] = @ParamValue2 WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @ParamNo2 ELSE INSERT INTO [dbo].[CustomParamScalarValues] values (@TargetNo,'P',@ParamNo2,@ParamValue2) END ELSE BEGIN DELETE dbo.CustomParamScalarValues WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo2 END END ELSE IF @ParamName='guestAccessProxy' BEGIN SELECT @ParamNo2=[dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]='guestAccessAuthType' IF EXISTS (SELECT 1 FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @ParamNo2) UPDATE [dbo].[CustomParamScalarValues] SET [dbo].[CustomParamScalarValues].[ParamValue] = 'proxy' WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @ParamNo2 ELSE INSERT INTO [dbo].[CustomParamScalarValues] values (@TargetNo,'P',@ParamNo2,'proxy') END ELSE BEGIN DELETE dbo.CustomParamScalarValues WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo2 END IF EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamName] in ('eonlineCustID' ,'eonlineUserID', 'eonlinePassword')) exec [dbo].[EAIP_EJSUpdatesLog_91] @TargetNo END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileDefaultNoMessage_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDefaultNoMessage_70](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @NewValue nvarchar(4000), @OldValue nvarchar(4000)) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Default No Message for a Profile', @ProfLogName, @ParamName, @NewValue DECLARE C1_C CURSOR FOR SELECT [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] IN (SELECT [dbo].[Profile].[CustID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo) DECLARE @tempProfNo int OPEN C1_C FETCH NEXT FROM C1_C INTO @tempProfNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @tempProfNo, @ParamNo, @NewValue END FETCH NEXT FROM C1_C INTO @tempProfNo END CLOSE C1_C DEALLOCATE C1_C COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[PES_GetFieldGroupNo](@FieldGroupId varchar(100)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[FieldGroupList].[FieldGroupNo] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupId]=@FieldGroupId) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamXmlItems_70](@TargetNo int, @ParamLevel char(1),@ParamName varchar(100) ) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,@ParamLevel) SELECT [dbo].[CustomParamXmlValues].[ItemName] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_InterfaceParam_AddModify_101] ( @newParamName VARCHAR(100), @newParamPromptText VARCHAR(255), @newParamType VARCHAR(10), @newParamValueTemplate VARCHAR(3000) = NULL, @newParamLevel CHAR(1), @newParamEditControl VARCHAR(50), @newParamEditGroup VARCHAR(100), @newParamEditSubGroup VARCHAR(100), @newParamPosition VARCHAR(10) = NULL, @paramNameToCompare VARCHAR(100) = '', @newParamParentParamName VARCHAR(100) = NULL, @newParamEditLevel SMALLINT, @newParamInterface VARCHAR(10), @newParamVersion VARCHAR(10), @newParamHierarchyDisplayOption SMALLINT, @newParamChildEditPromptText VARCHAR(255), @newDefaultValue NVARCHAR(2000) = '', @newParamCopyable BIT = 1, @newParamHintText VARCHAR(255) = null, @UpdateForNewParamOnly BIT = 1, @ChildParamGroupHeading varchar(255) = NULL, @ChildParamGroupHeadingSeqNo int = NULL, @HelpLinkClassID varchar(50) = NULL ) AS BEGIN DECLARE @newParamNumber INT EXEC [dbo].[EAIP_AddCustomParam_70] @newParamLevel, @newParamName, @newParamType, @newParamInterface,@newParamVersion, @newDefaultValue, @UpdateForNewParamOnly, @newParamEditLevel SELECT @newParamNumber = dbo.EAIF_GetCustomParamNumber_70(@newParamName,@newParamLevel) IF( @newParamParentParamName IS NOT NULL AND @newParamParentParamName <> '' AND @newParamParentParamName <> 'None') BEGIN DECLARE @newParamParentParamNumber SMALLINT SELECT @newParamParentParamNumber = dbo.EAIF_GetCustomParamNumber_70(@newParamParentParamName,@newParamLevel) UPDATE [dbo].[CustomParamList] SET [dbo].[CustomParamList].[ParentParamNo] = @newParamParentParamNumber WHERE [dbo].[CustomParamList].[ParamNo] = @newParamNumber END IF NOT EXISTS( SELECT 1 FROM [dbo].[CustomParamEditDetail] WHERE [dbo].[CustomParamEditDetail].[ParamNo]= @newParamNumber) BEGIN INSERT INTO [dbo].[CustomParamEditDetail] ( [dbo].[CustomParamEditDetail].[ParamNo], [dbo].[CustomParamEditDetail].[PromptText], [dbo].[CustomParamEditDetail].[HelpText], [dbo].[CustomParamEditDetail].[EditGroup], [dbo].[CustomParamEditDetail].[EditSubGroup], [dbo].[CustomParamEditDetail].[SeqNo], [dbo].[CustomParamEditDetail].[EditLevel], [dbo].[CustomParamEditDetail].[EditControl], [dbo].[CustomParamEditDetail].[ValueTemplate], [dbo].[CustomParamEditDetail].[ProcInfo], [dbo].[CustomParamEditDetail].[HierarchyDisplayOptions], [dbo].[CustomParamEditDetail].[HintText], [dbo].[CustomParamEditDetail].[ChildEditPromptText], [dbo].[CustomParamEditDetail].[Copyable], [dbo].[CustomParamEditDetail].[ChildParamGroupHeading], [dbo].[CustomParamEditDetail].[ChildParamGroupHeadingSeqNo], [dbo].[CustomParamEditDetail].[HelpLinkClassID] ) VALUES ( @newParamNumber, @newParamPromptText, '', @newParamEditGroup, @newParamEditSubGroup, 1, @newParamEditLevel, @newParamEditControl, @newParamValueTemplate, NULL, @newParamHierarchyDisplayOption, @newParamHintText, @newParamChildEditPromptText, @newParamCopyable, @ChildParamGroupHeading, @ChildParamGroupHeadingSeqNo, @HelpLinkClassID ) END ELSE BEGIN UPDATE [dbo].[CustomParamEditDetail] SET [dbo].[CustomParamEditDetail].[ParamNo] = @newParamNumber, [dbo].[CustomParamEditDetail].[PromptText] = @newParamPromptText, [dbo].[CustomParamEditDetail].[HelpText] = '', [dbo].[CustomParamEditDetail].[EditGroup] = @newParamEditGroup, [dbo].[CustomParamEditDetail].[EditSubGroup] = @newParamEditSubGroup, [dbo].[CustomParamEditDetail].[EditLevel] = @newParamEditLevel, [dbo].[CustomParamEditDetail].[SeqNo] = 1, [dbo].[CustomParamEditDetail].[EditControl] = @newParamEditControl, [dbo].[CustomParamEditDetail].[ValueTemplate] = @newParamValueTemplate, [dbo].[CustomParamEditDetail].[ProcInfo] = NULL, [dbo].[CustomParamEditDetail].[HierarchyDisplayOptions] = @newParamHierarchyDisplayOption, [dbo].[CustomParamEditDetail].[HintText] = @newParamHintText, [dbo].[CustomParamEditDetail].[ChildEditPromptText] = @newParamChildEditPromptText, [dbo].[CustomParamEditDetail].[Copyable] = @newParamCopyable, [dbo].[CustomParamEditDetail].[ChildParamGroupHeading]=@ChildParamGroupHeading, [dbo].[CustomParamEditDetail].[ChildParamGroupHeadingSeqNo]=@ChildParamGroupHeadingSeqNo, [dbo].[CustomParamEditDetail].[HelpLinkClassID]=@HelpLinkClassID WHERE [dbo].[CustomParamEditDetail].[ParamNo]= @newParamNumber END IF @newParamPosition IS NOT NULL BEGIN EXEC dbo.EAIP_InterfaceParam_Resort_91 @newParamEditGroup, @newParamEditSubGroup, @newParamName, @newParamPosition, @paramNameToCompare END END
CREATE PROCEDURE [dbo].[EAIP_GetMDbLimiter_91] ( @LimiterNo int ) AS BEGIN SELECT l.LimiterNo, l.LimiterID, l.DbLabel, l.ControlType, l.LogicalOpCode, l.SearchString, l.AutoAdd, l.Description, l.EnableQueryMask, l.QueryMaskId, l.ControlTemplate, t.ControlName, ISNULL(ll.HelpUrl, '') as HelpUrl FROM [dbo].[MDbLimiterList] l INNER JOIN [dbo].[LimiterControlType] t ON l.ControlType = t.ControlType left outer join [dbo].[LimiterList] ll on l.LimiterID=ll.LimiterId and l.DbLabel=ll.DbLabel WHERE l.LimiterNo=@LimiterNo ORDER BY l.LimiterID END
--sql content merged from file: \StoredProcedures\EAUI_UpdateCollectionCrossrefFlag_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateCollectionCrossrefFlag_70](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @OldValue varchar(4000), @NewValue varchar(4000)) AS BEGIN IF @OldValue <> @NewValue BEGIN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Collection Crossref Flag', @ProfLogName, @ParamName, @NewValue, @OldValue EXEC [dbo].[EAIP_UpdateCollectionCrossrefFlag_70] @ProfNo, @ParamNo, @OldValue EXEC [dbo].[EAIP_UpdateCollectionCrossrefFlag_70] @ProfNo, @ParamNo, @NewValue END END
CREATE FUNCTION [dbo].[EAIF_GetCustomParamName_70](@ParamNo int) RETURNS varchar(100) AS BEGIN RETURN ISNULL((SELECT [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo),'Unknown') END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfCustGroupDbAll_86](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[ProfCustGroupList] WHERE [dbo].[ProfCustGroupList].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[ProfGroupCaption] WHERE [dbo].[ProfGroupCaption].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[ProfGroupList] WHERE [dbo].[ProfGroupList].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Delete Profile All Db Groups', @ProfLogName, '', '','','' COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_DetachAllDbClusters_89](@DbVerNo Int) AS BEGIN DECLARE @DbLabel varchar(10) SELECT @DbLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF ( Not @DbLabel Is Null) BEGIN DELETE FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo --INSERT INTO DbCluster (DbVerNo, ClustNo, Enable) -- SELECT @DbVerNo, ClustNo, 0 -- FROM ClusterList -- WHERE ClusterList.DbLabel = @DbLabel AND ClusterList.AutoAdd2Db = 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetRegularDatabaseList_70] ( @DbLabel varchar(10) ) AS BEGIN SELECT DISTINCT [a].[DbName], [a].[DbLabel], [a].[DisplayName] + N' (' + [a].[DbName] + N')' as longShortName FROM [dbo].[DbList] a LEFT JOIN [dbo].[DbTypeList] b ON a.DbType = b.DbType WHERE b.Category='R' AND a.DbLabel = @DbLabel ORDER BY longShortName END
CREATE PROCEDURE [dbo].[EAUI_AddSLDbTargets_78] ( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @TargetType varchar(10), @DbSourceVerNo int, @SelectedTargets varchar(6000) ) AS BEGIN BEGIN TRANSACTION -- Add Targets for the given Source INSERT INTO [dbo].[DbSourceTarget] ([dbo].[DbSourceTarget].[SourceDbNo], [dbo].[DbSourceTarget].[TargetDbNo], [dbo].[DbSourceTarget].[TargetType], [dbo].[DbSourceTarget].[SLCollID]) SELECT @DbSourceVerNo, CONVERT(int, dbs.Item), @TargetType, 'ep-' + dl.DbName FROM dbo.EAIF_GetItemTable_70(@SelectedTargets, ',') dbs INNER JOIN [dbo].[DbList] dl ON CONVERT(int, dbs.Item) = dl.DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END -- Add Target System Collection, if it is not already exists. INSERT INTO [dbo].[Collection]([dbo].[Collection].[CustID], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], [dbo].[Collection].[EPFullText], [dbo].[Collection].[CustomLink], [dbo].[Collection].[SmartLink], [dbo].[Collection].[LastUpdateDate], [dbo].[Collection].[Category], [dbo].[Collection].[SharedFrom] ) SELECT 'system', N'ep-' + dl.DbName, dl.DisplayName, 1, 0, 0, GETDATE(), 'fulltext', 0 FROM dbo.EAIF_GetItemTable_70(@SelectedTargets, ',') dbs INNER JOIN [dbo].[DbList] dl ON CONVERT(int, dbs.Item) = dl.DbVerNo WHERE 'ep-' + dl.DbName NOT IN(select [dbo].[Collection].[ColID] from [dbo].[Collection] where [dbo].[Collection].[CustID] = 'system' AND [dbo].[Collection].[IsDeleted] = 0) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END -- Log activity EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel,'Add SmartLink Targets' COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[ET_AddArticle] (@pubname [sys].[sysname] , @object [sys].[sysname]) AS BEGIN declare @srvname [sys].[sysname] declare @dest_db [sys].[sysname] declare @retcode int IF NOT EXISTS (SELECT 1 FROM [dbo].[sysobjects] WHERE [dbo].[sysobjects].[name]='sysarticles') RETURN IF EXISTS (SELECT 1 FROM [dbo].[sysarticles] WHERE [dbo].[sysarticles].[objid] = object_id(@object)) RETURN BEGIN TRANSACTION EXEC @retcode=[dbo].[sp_addarticle] @publication=@pubname, @article=@object, @source_owner = N'dbo', @source_object = @object,@type = N'logbased', @schema_option = 0x00000000000000F3, @status = 16, @force_invalidate_snapshot = 1 IF @@error <> 0 OR @retcode <> 0 BEGIN if @@trancount > 0 ROLLBACK TRANSACTION RETURN (1) END COMMIT TRANSACTION BEGIN TRY DECLARE hCx CURSOR LOCAL FAST_FORWARD FOR SELECT DISTINCT d.srvname, c.dest_db FROM [dbo].[syspublications] a INNER JOIN [dbo].[sysarticles] b ON a.pubid=b.pubid INNER JOIN [dbo].[syssubscriptions] c ON b.artid = c.artid INNER JOIN master..sysservers d ON c.srvid = d.srvid WHERE a.name=@pubname FOR READ ONLY OPEN hCx FETCH hCx INTO @srvname, @dest_db WHILE (@@fetch_status <> -1) BEGIN EXECUTE @retcode = [dbo].[sp_addsubscription] @publication=@pubname,@article=@object,@subscriber=@srvname,@destination_db=@dest_db,@sync_type=N'automatic' IF @@error <> 0 OR @retcode <> 0 BEGIN CLOSE hCx DEALLOCATE hCx if @@trancount > 0 ROLLBACK TRANSACTION RETURN (1) END FETCH hCx INTO @srvname, @dest_db END CLOSE hCx DEALLOCATE hCx END TRY BEGIN CATCH SELECT ERROR_NUMBER() as ErrorNumber, ERROR_MESSAGE() as ErrorMessage; END CATCH; END
CREATE PROCEDURE [dbo].[EAIP_AddDbInterfaceLimiter_89] (@InterfaceID varchar(10), @Version varchar(10),@ScreenID varchar(10), @DbVerNo int, @LimiterNo int, @ControlType int,@Show int, @DefValue varchar(255),@GroupNo int, @SeqNo int, @DefPosn varchar(5), @ColNum varchar(5)) AS BEGIN /***stored procedure is used by EACopy utility**********************/ DECLARE @IntfScreenNo int SELECT @IntfScreenNo=[dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID]=@ScreenID IF @IntfScreenNo IS NULL RETURN IF @GroupNo <> null BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo]=@IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo]=@GroupNo) RETURN END IF @ControlType=-1 SET @ControlType=null IF @DefValue='' SET @DefValue=null IF @GroupNo=-1 SET @GroupNo=null INSERT INTO [dbo].[DbInterfaceLimiter] ([dbo].[DbInterfaceLimiter].[DbVerNo],[dbo].[DbInterfaceLimiter].[IntfScreenNo],[dbo].[DbInterfaceLimiter].[LimiterNo],[dbo].[DbInterfaceLimiter].[ControlType],[dbo].[DbInterfaceLimiter].[Show],[dbo].[DbInterfaceLimiter].[DefValue],[dbo].[DbInterfaceLimiter].[GroupNo],[dbo].[DbInterfaceLimiter].[SeqNo]) VALUES(@DbVerNo,@IntfScreenNo,@LimiterNo,@ControlType,@Show,@DefValue,@GroupNo,@SeqNo) IF @DefPosn<>'' Update [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[DefPosn]= convert(smallint, @DefPosn) WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@IntfScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo IF @ColNum<>'' Update [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[ColNum]= convert(smallint, @ColNum) WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@IntfScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterList_70] (@DbLabel varchar(10)) AS SELECT ll.LimiterNo,ll.LimiterId, ll.Description, lct.ControlName, ll.LogicalOpCode, '' as 'ControlTemplate', 'Hidden' = CASE ll.BitFlag1 WHEN 0 THEN 'No' ELSE 'Yes' END, HelpUrlSet = Case Len(IsNull(ll.HelpUrl,'')) When 0 then 'No' Else 'Yes' End FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lct ON (ll.ControlType = lct.ControlType) WHERE ll.DbLabel = @DbLabel AND ll.LimiterType = 'D'
CREATE PROCEDURE [dbo].[EATL_UpdateContentLinkText_82](@UserID nvarchar(20), @UserIP varchar(15), @ContentType int, @LinkText nvarchar(255), @Lang varchar(10))AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[DbContentList] WHERE [dbo].[DbContentList].[ContentType]= @ContentType) RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbContentCaptions] WHERE [dbo].[DbContentCaptions].[ContentType]= @ContentType AND [dbo].[DbContentCaptions].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[DbContentCaptions] SET [dbo].[DbContentCaptions].[LinkText]=@LinkText WHERE [dbo].[DbContentCaptions].[ContentType]= @ContentType AND [dbo].[DbContentCaptions].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Content Type LinkText' END ELSE BEGIN INSERT INTO [dbo].[DbContentCaptions] ([dbo].[DbContentCaptions].[ContentType],[dbo].[DbContentCaptions].[LangCode],[dbo].[DbContentCaptions].[LinkText] ) VALUES (@ContentType,@Lang,@LinkText) SET @LogFlag ='Translate(Insert)Content Type LinkText' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @ContentType, @LogFlag, 'Lang:', @Lang, 'LinkText:', @LinkText COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDBDocTypes_70]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN SELECT [dbo].[DbParamXmlValues].[ParamValue] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) AND [dbo].[DbParamXmlValues].[ParamNo] = dbo.EAIF_GetDbParamNumber_70('dbDocType') ORDER BY [dbo].[DbParamXmlValues].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetFieldElementBrowseByList_70](@FieldElementName varchar(100), @Description varchar(255)) AS BEGIN IF(@FieldElementName <> '') BEGIN SELECT [dbo].[FieldElementList].[FieldElementNo], [dbo].[FieldElementList].[FieldElementName], [dbo].[FieldElementList].[Description] FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementName] LIKE @FieldElementName + '%' ORDER BY [dbo].[FieldElementList].[FieldElementName] END ELSE BEGIN SELECT [dbo].[FieldElementList].[FieldElementNo], [dbo].[FieldElementList].[FieldElementName], [dbo].[FieldElementList].[Description] FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[Description] LIKE @Description + '%' ORDER BY [dbo].[FieldElementList].[Description] END END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomParamXmlItemName_70](@TargetNo int, @ParamLevel char(1),@ParamNo int, @OldItemName varchar(255), @NewItemName varchar(255)) AS BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ItemName] = @NewItemName WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@OldItemName END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDiscipline_131] ( @UserID NVARCHAR(20) , @UserIP VARCHAR(15) , @ProfNo INT, @DisciplineNo INT , @SelDefault BIT , @Show BIT ) AS BEGIN -- get values for logging DECLARE @DisciplineCode VARCHAR(10) SELECT @DisciplineCode = [dbo].[DisciplineList].[DisciplineCode] FROM [dbo].[DisciplineList] WHERE [dbo].[DisciplineList].[DisciplineNo] = @DisciplineNo SELECT @DisciplineCode DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @SelDefaultLogInfo VARCHAR(20), @ShowLogInfo VARCHAR(20) SET @SelDefaultLogInfo = 'SelDefault: ' + CONVERT(VARCHAR(1), @SelDefault) SET @ShowLogInfo = 'Show: ' + CONVERT(VARCHAR(1), @Show) DECLARE @DefaultSelDefault BIT, @DefaultShow BIT SELECT @DefaultSelDefault = [dbo].[DisciplineList].[SelDefault], @DefaultShow = [dbo].[DisciplineList].[Show] FROM [dbo].[DisciplineList] WHERE [dbo].[DisciplineList].[DisciplineNo] = @DisciplineNo BEGIN TRANSACTION -- check if we need to add it IF NOT EXISTS (SELECT 1 FROM [dbo].[ProfDiscipline] WHERE [dbo].[ProfDiscipline].[ProfNo]=@ProfNo AND [dbo].[ProfDiscipline].[DisciplineNo] = @DisciplineNo) BEGIN -- don't add it if the SelDefault and Show values are the same as the default values in the -- DisciplineList table IF NOT(@DefaultSelDefault = @SelDefault AND @DefaultShow = @Show) BEGIN INSERT INTO [dbo].[ProfDiscipline] ([dbo].[ProfDiscipline].[DisciplineNo], [dbo].[ProfDiscipline].[ProfNo],[dbo].[ProfDiscipline].[SelDefault], [dbo].[ProfDiscipline].[Show]) VALUES (@DisciplineNo, @ProfNo, @SelDefault, @Show) END END ELSE BEGIN -- updating existing record -- check if the "new" values are the same as the default values in the DisciplineList table, -- if so, delete the record from ProfDiscipline IF (@DefaultSelDefault = @SelDefault AND @DefaultShow = @Show) BEGIN DELETE FROM dbo.ProfDiscipline WHERE [dbo].[ProfDiscipline].[DisciplineNo] = @DisciplineNo AND [dbo].[ProfDiscipline].[ProfNo] = @ProfNo END ELSE BEGIN UPDATE [dbo].[ProfDiscipline] SET [dbo].[ProfDiscipline].[SelDefault] = @SelDefault , [dbo].[ProfDiscipline].[Show] = @Show WHERE [dbo].[ProfDiscipline].[DisciplineNo] = @DisciplineNo AND [dbo].[ProfDiscipline].[ProfNo] = @ProfNo END END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ProfileDiscipline','Update Profile Discipline', @ProfLogName, @DisciplineCode , @SelDefaultLogInfo, @ShowLogInfo COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[ReplaceHttpToHttps] ( @httpString NVARCHAR(max), @eisOwnedDomainList NVARCHAR(4000), @ColumnLen INT = NULL ) RETURNS NVARCHAR(max) AS BEGIN DECLARE @OrigHttpString NVARCHAR(max) = @httpString; -- Declare the return variable here DECLARE replace_cursor CURSOR FOR SELECT V.value AS Source, REPLACE(V.value,'http://','https://') AS Target FROM STRING_SPLIT(@httpString, ' ') V INNER JOIN STRING_SPLIT(@EISOwnedDomainList,',') dom ON V.value LIKE ('%http://' + dom.value + '%') WHERE V.value LIKE '%http:%' OPEN replace_cursor DECLARE @source nvarchar(4000); DECLARE @target nvarchar(4000); FETCH NEXT FROM replace_cursor INTO @source, @target; WHILE (@@FETCH_STATUS = 0) BEGIN SET @httpString = REPLACE(@httpString, @source, @target) FETCH NEXT FROM replace_cursor INTO @source, @target; END CLOSE replace_cursor DEALLOCATE replace_cursor IF @ColumnLen IS NULL OR LEN(@httpString) <= @ColumnLen SET @OrigHttpString = @httpString; RETURN @OrigHttpString; END
CREATE PROCEDURE [dbo].[EAUI_GetCustomParamXmlValue_70](@TargetNo int, @ParamLevel char(1),@ParamName varchar(100), @ItemName varchar(255) ) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,@ParamLevel) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE SELECT [dbo].[CustomParamEditDetail].[ValueTemplate] as ParamValue FROM [dbo].[CustomParamEditDetail] WHERE [dbo].[CustomParamEditDetail].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_InterfaceParam_AddModify_91] ( @newParamName VARCHAR(100), @newParamPromptText VARCHAR(255), @newParamType VARCHAR(10), @newParamValueTemplate VARCHAR(3000) = NULL, @newParamLevel CHAR(1), @newParamEditControl VARCHAR(50), @newParamEditGroup VARCHAR(100), @newParamEditSubGroup VARCHAR(100), @newParamPosition VARCHAR(10) = NULL, @paramNameToCompare VARCHAR(100) = '', @newParamParentParamName VARCHAR(100) = NULL, @newParamEditLevel SMALLINT, @newParamInterface VARCHAR(10), @newParamVersion VARCHAR(10), @newParamHierarchyDisplayOption SMALLINT, @newParamChildEditPromptText VARCHAR(255), @newDefaultValue NVARCHAR(2000) = '', @newParamCopyable BIT = 1, @newParamHintText VARCHAR(255) = null, @UpdateForNewParamOnly BIT = 1 ) AS BEGIN DECLARE @newParamNumber INT EXEC [dbo].[EAIP_AddCustomParam_70] @newParamLevel, @newParamName, @newParamType, @newParamInterface,@newParamVersion, @newDefaultValue, @UpdateForNewParamOnly, @newParamEditLevel SELECT @newParamNumber = dbo.EAIF_GetCustomParamNumber_70(@newParamName,@newParamLevel) IF( @newParamParentParamName IS NOT NULL AND @newParamParentParamName <> '' AND @newParamParentParamName <> 'None') BEGIN DECLARE @newParamParentParamNumber SMALLINT SELECT @newParamParentParamNumber = dbo.EAIF_GetCustomParamNumber_70(@newParamParentParamName,@newParamLevel) UPDATE [dbo].[CustomParamList] SET [dbo].[CustomParamList].[ParentParamNo] = @newParamParentParamNumber WHERE [dbo].[CustomParamList].[ParamNo] = @newParamNumber END IF NOT EXISTS( SELECT 1 FROM [dbo].[CustomParamEditDetail] WHERE [dbo].[CustomParamEditDetail].[ParamNo]= @newParamNumber) BEGIN INSERT INTO [dbo].[CustomParamEditDetail] ( [dbo].[CustomParamEditDetail].[ParamNo], [dbo].[CustomParamEditDetail].[PromptText], [dbo].[CustomParamEditDetail].[HelpText], [dbo].[CustomParamEditDetail].[EditGroup], [dbo].[CustomParamEditDetail].[EditSubGroup], [dbo].[CustomParamEditDetail].[SeqNo], [dbo].[CustomParamEditDetail].[EditLevel], [dbo].[CustomParamEditDetail].[EditControl], [dbo].[CustomParamEditDetail].[ValueTemplate], [dbo].[CustomParamEditDetail].[ProcInfo], [dbo].[CustomParamEditDetail].[HierarchyDisplayOptions], [dbo].[CustomParamEditDetail].[HintText], [dbo].[CustomParamEditDetail].[ChildEditPromptText], [dbo].[CustomParamEditDetail].[Copyable] ) VALUES ( @newParamNumber, @newParamPromptText, '', @newParamEditGroup, @newParamEditSubGroup, 1, @newParamEditLevel, @newParamEditControl, @newParamValueTemplate, NULL, @newParamHierarchyDisplayOption, @newParamHintText, @newParamChildEditPromptText, @newParamCopyable ) END ELSE BEGIN UPDATE [dbo].[CustomParamEditDetail] SET [dbo].[CustomParamEditDetail].[ParamNo] = @newParamNumber, [dbo].[CustomParamEditDetail].[PromptText] = @newParamPromptText, [dbo].[CustomParamEditDetail].[HelpText] = '', [dbo].[CustomParamEditDetail].[EditGroup] = @newParamEditGroup, [dbo].[CustomParamEditDetail].[EditSubGroup] = @newParamEditSubGroup, [dbo].[CustomParamEditDetail].[EditLevel] = @newParamEditLevel, [dbo].[CustomParamEditDetail].[SeqNo] = 1, [dbo].[CustomParamEditDetail].[EditControl] = @newParamEditControl, [dbo].[CustomParamEditDetail].[ValueTemplate] = @newParamValueTemplate, [dbo].[CustomParamEditDetail].[ProcInfo] = NULL, [dbo].[CustomParamEditDetail].[HierarchyDisplayOptions] = @newParamHierarchyDisplayOption, [dbo].[CustomParamEditDetail].[HintText] = @newParamHintText, [dbo].[CustomParamEditDetail].[ChildEditPromptText] = @newParamChildEditPromptText, [dbo].[CustomParamEditDetail].[Copyable] = @newParamCopyable WHERE [dbo].[CustomParamEditDetail].[ParamNo]= @newParamNumber END IF @newParamPosition IS NOT NULL BEGIN EXEC dbo.EAIP_InterfaceParam_Resort_91 @newParamEditGroup, @newParamEditSubGroup, @newParamName, @newParamPosition, @paramNameToCompare END END
Create Procedure [dbo].[EAIP_GetMDbLimiterList_89] as Select * from [dbo].[MDbLimiterList]
CREATE PROCEDURE [dbo].[EAUI_UpdateCollectionsUsedByCustomLinks_912] ( @UserID nvarchar(20), @UserIP varchar(15), @LinkList varchar(8000) ) AS BEGIN DECLARE @ParamNoCustomLink int select @ParamNoCustomLink =[dbo].[CustomParamList].[ParamNo] from dbo.CustomParamList where [dbo].[CustomParamList].[ParamName] = 'customerCustomLink' DECLARE @CurrDate datetime SET @CurrDate =GETDATE() DECLARE @Links TABLE ( Num int NOT NULL, LinkID VARCHAR(255) NOT NULL ) INSERT INTO @Links(Num, LinkID) SELECT [dbo].[EAIF_GetEnumValueTable_70].[Num], [dbo].[EAIF_GetEnumValueTable_70].[Item] FROM dbo.EAIF_GetEnumValueTable_70(@LinkList,'+',1,1) DECLARE @CurrItem int DECLARE @MaxItem int SET @CurrItem = 1 SELECT @MaxItem=ISNULL(Max(Num), 0) From @Links DECLARE @Colls TABLE ( CustID VARCHAR(10) NOT NULL, ColID NVARCHAR(50) NOT NULL, unique clustered (CustID, ColID) ) DECLARE @LinkXML XML WHILE @CurrItem <=@MaxItem BEGIN select @LinkXML= cv.ParamValue from [dbo].[CustomParamXmlValues] cv WITH (NOLOCK) JOIN @Links l ON cv.ParamNo=@ParamNoCustomLink and cv.ItemName =l.LinkID WHERE l.Num=@CurrItem INSERT INTO @Colls SELECT l.* from dbo.EAIF_GetCustomLinkCollections_912(@LinkXML) l LEFT OUTER JOIN @Colls c ON l.CustID=c.CustID and l.ColID=c.ColID where c.CustID is null and c.ColID is null SET @CurrItem=@CurrItem+1 END BEGIN TRY BEGIN TRANSACTION --Update collection from this list with AutoRecreate=1 and current LastUpDateDate INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, @CurrDate , 'Collections', 'Update AuthoRecrete Flag', '1', c.CustID, c.ColID, NULL, NULL from [dbo].[Collection] c INNER JOIN @Colls usedc ON c.CustID=usedc.CustID and c.ColID=usedc.ColID where c.SharedFrom=0 and c.AutoRecreate=0 and c.IsDeleted = 0 and Eonline =0 INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, @CurrDate , 'Collections', 'Update AuthoRecrete Flag', '1', c.CustID, c.ColID, NULL, NULL from [dbo].[Collection] c INNER JOIN @Colls usedc ON c.CustID=usedc.CustID and c.ColID=usedc.ColID INNER JOIN [dbo].[Collection] sharedc ON c.ColNo=sharedc.ColNo where c.SharedFrom<>0 and c.IsDeleted = 0 and sharedc.IsDeleted = 0 and sharedc.AutoRecreate=0 and sharedc.Eonline =0 Update [dbo].[Collection] Set [AutoRecreate]=1, [LastUpdateDate]=@CurrDate from [dbo].[Collection] c INNER JOIN @Colls usedc ON c.CustID=usedc.CustID and c.ColID=usedc.ColID where c.SharedFrom=0 and c.AutoRecreate=0 and c.IsDeleted = 0 and Eonline =0 Update [dbo].[Collection] Set [AutoRecreate]=1, [LastUpdateDate]=@CurrDate from dbo.Collection AS a INNER JOIN ( select sharedc.ColNo from [dbo].[Collection] c INNER JOIN @Colls usedc ON c.CustID=usedc.CustID and c.ColID=usedc.ColID INNER JOIN [dbo].[Collection] sharedc ON c.ColNo=sharedc.ColNo where c.SharedFrom<>0 and c.IsDeleted = 0 and sharedc.AutoRecreate=0 and sharedc.Eonline =0 and sharedc.IsDeleted = 0 ) AS b ON a.ColNo=b.ColNo COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetCustomParamNumber_70](@ParamName varchar(100), @ParamLevel char(1)) RETURNS smallint AS BEGIN RETURN ( SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName AND [dbo].[CustomParamList].[ParamLevel]=@ParamLevel ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfile_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) BEGIN TRY BEGIN TRANSACTION IF EXISTS(SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo) BEGIN EXEC [dbo].[EAIP_DeleteProfile_70] @ProfNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Delete Profile', @ProfLogName END COMMIT TRANSACTION END TRY BEGIN CATCH IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE Procedure [dbo].[EAIP_EJSUpdatesLog_91] ( @ProfNo int ) AS BEGIN INSERT INTO [dbo].[EJSCustUpdates] ([dbo].[EJSCustUpdates].[ProfNo], [dbo].[EJSCustUpdates].[LogTime]) VALUES (@ProfNo, getdate()) END
CREATE PROCEDURE [dbo].[EAUI_GetRegularDBList_101] AS BEGIN SELECT Distinct [dbo].[DbList].[DbName], [dbo].[DbList].[DisplayName] + N' (' + [dbo].[DbList].[DbName] + N')' as DisplayName FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbType]=1 ORDER BY DisplayName END
CREATE PROCEDURE [dbo].[EAUI_AddSubTopicToInterface_79] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @IntfTopicNo int, @TopicList varchar(8000)) AS BEGIN DECLARE @TopicNo int DECLARE @NextSeqNo int SELECT @TopicNo=[dbo].[InterfaceTopic].[TopicNo] FROM [dbo].[InterfaceTopic] where [dbo].[InterfaceTopic].[IntfTopicNo]=@IntfTopicNo SELECT @NextSeqNo = ISNULL(MAX(it.SeqNo) + 1, 1) FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo WHERE it.InterfaceID = @InterfaceID AND it.Version = @Version AND tl.ParentTopicNo = @TopicNo BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceTopic] ([dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version],[dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[SeqNo]) SELECT @InterfaceID, @Version, CONVERT(int,a.Item), a.Num FROM dbo.EAIF_GetEnumValueTable_70(@TopicList,'+',@NextSeqNo,1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@TopicList,1,1024),'+',',') IF DATALENGTH(@TopicList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@TopicList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Add Interface SubTopic', @InterfaceID,@Version,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[ET_DropArticle] (@pubname [sys].[sysname] , @object [sys].[sysname]) AS BEGIN declare @retcode int IF NOT EXISTS (SELECT 1 FROM [dbo].[sysobjects] WHERE [dbo].[sysobjects].[name]='sysarticles') RETURN IF NOT EXISTS (SELECT 1 FROM [dbo].[sysarticles] WHERE [dbo].[sysarticles].[objid] = object_id(@object)) RETURN BEGIN TRANSACTION EXEC @retcode=[dbo].[sp_dropsubscription] @publication = @pubname, @article = @object, @subscriber = N'all', @destination_db = N'all' IF @@error <> 0 OR @retcode <> 0 BEGIN if @@trancount > 0 ROLLBACK TRANSACTION RETURN (1) END EXEC @retcode=[dbo].[sp_droparticle] @publication = @pubname, @article = @object, @force_invalidate_snapshot = 1 IF @@error <> 0 OR @retcode <> 0 BEGIN if @@trancount > 0 ROLLBACK TRANSACTION RETURN (1) END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_AddDbInterfaceSearchOption_76] (@InterfaceID varchar(10), @Version varchar(10),@ScreenID varchar(10), @DbVerNo int, @OptionID varchar(10), @Show int, @SeqNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ DECLARE @IntfScreenNo int DECLARE @SearchOptionNo int SELECT @IntfScreenNo=[dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID]=@ScreenID IF @IntfScreenNo IS NULL RETURN SELECT @SearchOptionNo = [dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID IF @SearchOptionNo IS NULL BEGIN RAISERROR('Can not find Search Option ID %s', 16,-1, @OptionID) RETURN END INSERT INTO [dbo].[DbInterfaceSearchOption] ([dbo].[DbInterfaceSearchOption].[DbVerNo],[dbo].[DbInterfaceSearchOption].[IntfScreenNo],[dbo].[DbInterfaceSearchOption].[SearchOptionNo],[dbo].[DbInterfaceSearchOption].[Show],[dbo].[DbInterfaceSearchOption].[SeqNo]) VALUES(@DbVerNo,@IntfScreenNo,@SearchOptionNo,@Show,@SeqNo) END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterListBrowseByContents_70] (@DbLabel varchar(10), @ControlTemplate nvarchar(max)) AS BEGIN SELECT distinct ll.LimiterNo, ll.LimiterId, ll.Description, lct.ControlName, ll.LogicalOpCode, Substring(ld.ControlTemplate,0,100) AS ControlTemplate, 'Hidden' = CASE ll.BitFlag1 WHEN 0 THEN 'No' ELSE 'Yes' END, HelpUrlSet = Case Len(IsNull(ll.HelpUrl,'')) When 0 then 'No' Else 'Yes' End FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lct ON (ll.ControlType = lct.ControlType) JOIN [dbo].[DbLimiterDetail] ld ON (ll.LimiterNo = ld.LimiterNo) WHERE ll.DbLabel = @DbLabel AND ll.LimiterType = 'D' AND ld.ControlTemplate LIKE '%' + @ControlTemplate + '%' ORDER BY ll.LimiterId END
CREATE PROCEDURE EATL_UpdateContentLinkText_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,ContentType INT ,LinkText NVARCHAR(255) ) INSERT INTO #Objects ( ContentType ,LinkText ) SELECT m.c.value('(./ContentType)[1]', 'int') ,m.c.value('(./LinkText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@ContentType INT ,@LinkText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @ContentType = ContentType ,@LinkText = LinkText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateContentLinkText_82] @UserID ,@UserIP ,@ContentType ,@LinkText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbDocTypes_77](@DbName varchar(10),@DbLabel varchar(10))AS BEGIN SELECT dtl.DocTypeID, ddt.TargetDb, ISNULL(ddt.SearchString, dtl.SearchString) AS SearchString, dtl.SortOption FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DocTypeList] dtl ON dtl.DocTypeNo = ddt.DocTypeNo INNER JOIN [dbo].[DbList] db ON db.DbVerNo = ddt.DbVerNo WHERE db.DbName = @DbName AND db.DbLabel=@DbLabel END
CREATE PROCEDURE [dbo].[EAUI_GetFieldElementList_70] AS BEGIN SELECT [dbo].[FieldElementList].[FieldElementNo], [dbo].[FieldElementList].[FieldElementName], [dbo].[FieldElementList].[Description] FROM [dbo].[FieldElementList] ORDER BY [dbo].[FieldElementList].[FieldElementName] END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomParamXmlValue_70](@TargetNo int, @ParamLevel char(1),@ParamNo int, @ItemName varchar(255), @ParamValue nvarchar(max), @SeqNo smallint=null) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE INSERT INTO [dbo].[CustomParamXmlValues] values (@TargetNo,@ParamLevel,@ParamNo,@ItemName,@ParamValue, @SeqNo) END
/**************************************************************************/ CREATE PROCEDURE [dbo].[EAUI_UpdateProfileExpanders_70] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ControlName varchar(50), @ControlShow int, @Caption nvarchar(255), @ControlDefault int, @LangCode varchar(10) ) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo DECLARE @defControlShow int DECLARE @defControlDefault int DECLARE @defCaption nvarchar(100) BEGIN TRANSACTION SELECT @defControlShow = ISNULL(ie.ControlShow,g.ControlShow), @defControlDefault= ISNULL(ie.ControlDefault,g.ControlDefault) FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[InterfaceExpander] ie ON g.ControlName = ie.ControlName AND ie.InterfaceID=@InterfaceID AND ie.Version=@Version WHERE g.ControlName = @ControlName SELECT @defCaption = [dbo].[GlobalExpanderCaption].[DefCaption] FROM [dbo].[GlobalExpanderCaption] WHERE [dbo].[GlobalExpanderCaption].[ControlName] = @ControlName AND [dbo].[GlobalExpanderCaption].[LangCode] = @LangCode IF @defControlShow = @ControlShow AND @defControlDefault= @ControlDefault AND @defCaption=@Caption BEGIN DELETE FROM [dbo].[ProfExpander] where [dbo].[ProfExpander].[ProfNo]=@ProfNo AND [dbo].[ProfExpander].[ControlName] = @ControlName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ProfExpander] WHERE [dbo].[ProfExpander].[ProfNo] = @ProfNo AND [dbo].[ProfExpander].[ControlName] = @ControlName) UPDATE [dbo].[ProfExpander] SET [dbo].[ProfExpander].[ControlShow]=@ControlShow, [dbo].[ProfExpander].[ControlDefault] = @ControlDefault WHERE [dbo].[ProfExpander].[ProfNo] = @ProfNo AND [dbo].[ProfExpander].[ControlName] = @ControlName ELSE INSERT INTO [dbo].[ProfExpander] ([dbo].[ProfExpander].[ProfNo], [dbo].[ProfExpander].[ControlName], [dbo].[ProfExpander].[ControlShow], [dbo].[ProfExpander].[ControlDefault]) VALUES (@ProfNo,@ControlName, @ControlShow, @ControlDefault) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --------- --caption --------- IF @defCaption=@Caption DELETE FROM [dbo].[ProfExpanderCaption] where [dbo].[ProfExpanderCaption].[ProfNo]=@ProfNo AND [dbo].[ProfExpanderCaption].[ControlName] = @ControlName AND [dbo].[ProfExpanderCaption].[LangCode] = @LangCode ELSE IF EXISTS (SELECT 1 FROM [dbo].[ProfExpanderCaption] where [dbo].[ProfExpanderCaption].[ProfNo]=@ProfNo AND [dbo].[ProfExpanderCaption].[ControlName] = @ControlName AND [dbo].[ProfExpanderCaption].[LangCode] = @LangCode ) UPDATE [dbo].[ProfExpanderCaption] SET [dbo].[ProfExpanderCaption].[Caption]=@Caption where [dbo].[ProfExpanderCaption].[ProfNo]=@ProfNo AND [dbo].[ProfExpanderCaption].[ControlName] = @ControlName AND [dbo].[ProfExpanderCaption].[LangCode] = @LangCode ELSE INSERT INTO [dbo].[ProfExpanderCaption] ([dbo].[ProfExpanderCaption].[ProfNo], [dbo].[ProfExpanderCaption].[ControlName], [dbo].[ProfExpanderCaption].[LangCode], [dbo].[ProfExpanderCaption].[Caption]) VALUES (@ProfNo, @ControlName, @LangCode, @Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END DECLARE @ProfLoggingName varchar(32) SELECT @ProfLoggingName = dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify Expanders for a Profile', @ProfLoggingName, @ControlName, @ControlShow, @ControlDefault COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[UTIL_AllTrimProcText](@ProcText varchar(8000)) RETURNS varchar(8000) AS BEGIN DECLARE @Text varchar(8000) DECLARE @RevText varchar(8000) DECLARE @Posn int SET @Text = @ProcText SET @Posn = CHARINDEX('CREATE ', @ProcText) IF @Posn > 0 SET @Text = SUBSTRING(@ProcText, @Posn-1, 8000) /* SET @RevText = REVERSE(@Text) -- Search for Reverse of END SET @Posn = CHARINDEX('DNE', @RevText) IF @Posn > 0 SET @Text = REVERSE(SUBSTRING(@RevText, @Posn, 8000)) */ RETURN @Text END
CREATE PROCEDURE [dbo].[EAUI_GetCustomWidgetDisplayScreens_100] (@ProfNo int) AS BEGIN DECLARE @Category varchar (10) Declare @FieldName varchar(20) Set @Category = 'lpt' -- landing pages for toolbar items Set @FieldName='DisplayScreen' DECLARE @ToolbarSPages TABLE (ShowFlag int, StartPageID varchar(30), StartPageName varchar(100)) DECLARE @ProfDbTable TABLE (DbVerNo int) -- Get the Dropdown items which have database dependency -- Step 1 INSERT INTO @ProfDbTable Select a.DbVerNo FROM [dbo].[ProfDatabase] a inner join [dbo].[DbList] d on (d.DbVerNo=a.DbVerNo) Where a.ProfNo=@ProfNo AND a.Enable = 1 AND (a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0) --Step 2 --Note : Use ToolbarID (FeatureName) as the StartPage ID INSERT INTO @ToolbarSPages SELECT FieldValueXml.query('fields/field[@name="EnabledForWidgets"]').value('.', 'int'), fl.FeatureName, FieldValueXml.query('fields/field[@name="StartPageName"]').value('.', 'varchar(100)') FROM @ProfDbTable pd inner join [dbo].[DbFeature] df on (df.DbVerNo=pd.DbVerNo) inner join [dbo].[FeatureList] fl on (fl.FeatureNo=df.FeatureNo) inner join [dbo].[FeatureValues] fv on (fv.FeatureNo=fl.FeatureNo) WHERE fl.Category = @Category Select s.FieldCode,S.Description from ( -- Note : This select has no database dependency, it will always be selected. Select [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description],[dbo].[StringValueMap].[SeqNo] from [dbo].[StringValueMap] where [dbo].[StringValueMap].[FieldName]=@FieldName UNION ALL -- Note : This has database dependency Select distinct [t].[StartPageID] as FieldCode, [t].[StartPageName] , '3' As SeqNo FROM @ToolbarSPages t Where t.ShowFlag = 1) s order by s.SeqNo, s.FieldCode END
CREATE PROCEDURE dbo.EAIP_InterfaceToolbarItemAttachDatabases_161 ( @UserID nvarchar(20), @UserIP varchar(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @IntfToolbarItemName VARCHAR(50), @DbVerNoList varchar(8000) ) AS BEGIN DECLARE @IntfToolbarItem INT DECLARE @InvalidDbVersionNo VARCHAR(10) DECLARE @AlreadyAttachedDbVersionNo VARCHAR(10) SELECT @IntfToolbarItem=[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @IntfToolbarItemName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @IntfToolbarItemName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version) BEGIN RAISERROR('The ToolbarItem:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @IntfToolbarItemName, @InterfaceID, @Version) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[Split]('+', @DbVerNoList) s LEFT OUTER JOIN [dbo].[DbList] db ON s.Value=db.DbVerNo WHERE db.DbVerNo IS NULL) BEGIN SELECT TOP 1 @InvalidDbVersionNo=[s].[Value] FROM [dbo].[Split]('+',@DbVerNoList) s LEFT OUTER JOIN [dbo].[DbList] db ON s.Value=db.DbVerNo WHERE db.DbVerNo IS NULL ORDER BY s.RowID RAISERROR('The DbVersionNo %s is invalid', 16,-1, @InvalidDbVersionNo) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[Split]('+', @DbVerNoList) s JOIN [dbo].[DbList] db ON s.Value=db.DbVerNo JOIN [dbo].[InterfaceToolbarDb] tdb ON tdb.DbVerNo = db.DbVerNo AND tdb.IntfToolbarItem =@IntfToolbarItem) BEGIN SELECT TOP 1 @AlreadyAttachedDbVersionNo=[s].[Value] FROM [dbo].[Split]('+',@DbVerNoList) s JOIN [dbo].[DbList] db ON s.Value=db.DbVerNo JOIN [dbo].[InterfaceToolbarDb] tdb ON tdb.DbVerNo = db.DbVerNo AND tdb.IntfToolbarItem =@IntfToolbarItem ORDER BY s.RowID RAISERROR('The DbVersionNo %s is already attached to this interface, version and toolbar item', 16,-1, @AlreadyAttachedDbVersionNo) RETURN END EXEC [dbo].[EAUI_InterfaceToolbarItemAttachDatabases_77] @UserID, @UserIP, @IntfToolbarItem, @DbVerNoList END
create procedure [dbo].[EAIP_getMDbLimitersAutoAdd_89] as Select * from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[AutoAdd]=1
CREATE PROCEDURE [dbo].[EAUI_UpdateConfigDbServerAssignment_70](@UserID nvarchar(20), @UserIP varchar(20), @ServerDbMode char(1), @ApplicationNo int, @ServerNo int, @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN IF( @ServerDbMode='D' ) SET @DbLabel='' BEGIN TRANSACTION DELETE FROM [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNo AND [dbo].[ConfigDb].[DbName]=@DbName AND [dbo].[ConfigDb].[DbLabel]=@DbLabel IF( @@ERROR<>0 ) BEGIN ROLLBACK TRANSACTION RETURN END IF( @ServerNo>0 ) BEGIN INSERT INTO [dbo].[ConfigDb]([dbo].[ConfigDb].[ApplicationNo], [dbo].[ConfigDb].[DbName], [dbo].[ConfigDb].[DbLabel], [dbo].[ConfigDb].[ServerNo]) VALUES(@ApplicationNo, @DbName, @DbLabel, @ServerNo) IF( @@ERROR<>0 ) BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION DECLARE @appID varchar(255), @srvID varchar(255) SET @appID = dbo.EAIF_GetConfigApplicationID_70(@ApplicationNo) SET @srvID = dbo.EAIF_GetConfigServerURI_70(@ServerNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Assign Database to Server', @AppID, @srvID, @DbName, @DbLabel END
--sql content merged from file: \Functions\EAIF_GetCustomParamScalarValue_70.sql CREATE FUNCTION [dbo].[EAIF_GetCustomParamScalarValue_70](@ParamName varchar(100), @InterfaceId varchar(10), @Version varchar(10), @MarketId varchar(20), @STMode char(1), @TargetNo int, @ParamLevel char(1)) RETURNS nvarchar(4000) AS BEGIN DECLARE @RetValue nvarchar(4000) DECLARE @DefValue nvarchar(2000) DECLARE @ParamNo int SELECT @ParamNo=cpl.ParamNo, @DefValue=ISNULL(cpctd.DefValue, cpl.DefValue) FROM [dbo].[CustomParamList] cpl LEFT JOIN [dbo].[Customer] c ON c.CustNo = @TargetNo AND @ParamLevel='C' LEFT JOIN [dbo].[CustomParamCustTypeDefaults] cpctd ON cpctd.ParamNo =cpl.ParamNo AND cpctd.CustType = c.CustType AND @ParamLevel='C' WHERE cpl.ParamName = @ParamName AND cpl.ParamLevel=@ParamLevel SELECT @RetValue=[val].[ParamValue] FROM [dbo].[CustomParamScalarValues] val WHERE val.TargetNo=@TargetNo AND val.ParamLevel=@ParamLevel AND val.ParamNo=@ParamNo IF @RetValue is NULL SELECT @RetValue= dval.DefValue FROM [dbo].[CustomParamDefaults] dval WHERE dval.ParamNo=@ParamNo AND dval.InterfaceID=@InterfaceId AND dval.Version=@Version AND dval.MarketID=@MarketId AND dval.STMode=@STMode RETURN ISNULL(@RetValue,@DefValue) END
--sql content merged from file: \StoredProcedures\EAUI_DeleteProfileCustGroupDatabase_92.sql CREATE PROCEDURE [dbo].[EAUI_DeleteProfileCustGroupDatabase_92](@UserID nvarchar(20),@UserIP varchar(15), @ProfNo int,@GroupNo int, @DbVerNo int )AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @Displayname nvarchar (100) DECLARE @Caption nvarchar(255) BEGIN try BEGIN TRANSACTION IF EXISTS (Select 1 from [dbo].[ProfCustGroupDb] WHERE [dbo].[ProfCustGroupDb].[ProfNo] =@ProfNo AND [dbo].[ProfCustGroupDb].[GroupNo] = @GroupNo AND [dbo].[ProfCustGroupDb].[DbVerNo] = @DbVerNo ) DELETE [dbo].[ProfCustGroupDb] WHERE [dbo].[ProfCustGroupDb].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupDb].[GroupNo]=@GroupNo AND [dbo].[ProfCustGroupDb].[DbVerNo] = @DbVerNo SELECT @Displayname=dbo.EAIF_GetDbDisplayName_92(@DbVerNo) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @Caption=[dbo].[ProfCustGroupCaption].[Caption] FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo AND [dbo].[ProfCustGroupCaption].[LangCode]='en' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Delete Profile Cust Group Database', @ProfLogName, @Caption, @Displayname COMMIT TRANSACTION End try begin catch rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch END
CREATE PROCEDURE [dbo].[EAIP_EmailProfileDbChange_70](@ProfName varchar(40)) AS BEGIN DECLARE @Email varchar(255) DECLARE @Subject varchar(100) DECLARE @StatusMsg1 varchar(255) DECLARE @StatusMsg2 varchar(255) SET @Email = dbo.EAIF_GetConfigApplicationParamScalarValue_70('eadmin','epTechSupportAddress') IF @Email is not null AND @Email <> '' BEGIN SET @Subject = 'Profile Database Change : '+@ProfName SET @StatusMsg1 = 'This is to notify that one or more databases that require hidden limiter customization are added to the profile ' SET @StatusMsg2 = '. Please customize the hidden limiters as appropriate.'+char(10)+char(10)+'Thank you.'+char(10) EXEC EASUPPORT.dbo.EAIP_AddNotifyRequest_70 'system','E', @Subject,@StatusMsg1,@ProfName,@StatusMsg2,@Email END END
CREATE PROCEDURE [dbo].[EAUI_GetRegularDBList_70] AS BEGIN SELECT Distinct [dbo].[DbList].[DbName], [dbo].[DbList].[DisplayName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbType]=1 ORDER BY [dbo].[DbList].[DisplayName] END
CREATE PROCEDURE [dbo].[EAUI_AddSystemCollection_70](@UserID nvarchar(20), @UserIP varchar(15), @ColID nvarchar(50), @ColName nvarchar(100), @EPFullText bit=0, @CustomLink bit=0, @SmartLink bit=0, @Category varchar(50)='other' ) AS BEGIN DECLARE @NewColNo int DECLARE @LogColName varchar(30) SELECT @LogColName = 'system.'+@ColID EXEC [dbo].[EAIPO_AddSystemCollection_70] @ColID, @ColName, @EPFullText, @CustomLink, @SmartLink, @Category, 0, @ColNo=@NewColNo OUTPUT EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'System Collection', 'Add System Collection', @LogColName, @ColName END
-- Create a utility procedure CREATE PROCEDURE [dbo].[ET_RecompileAll] AS BEGIN SET NOCOUNT ON DECLARE @procname varchar(50) DECLARE C1 CURSOR FOR SELECT [dbo].[sysobjects].[name] FROM [dbo].[sysobjects] WHERE [dbo].[sysobjects].[type] = 'P' OPEN C1 FETCH NEXT FROM C1 INTO @procname WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[sp_recompile] @procname END FETCH NEXT FROM C1 INTO @procname END CLOSE C1 DEALLOCATE C1 END
CREATE PROCEDURE [dbo].[EAIP_AddDbLimiterDefaults_70]( @LimiterNo int, @InterfaceID varchar(10), @Version varchar (10), @MarketID varchar(20), @ForceCommon bit, @ControlDefault bit, @BitFlag1 bit, @BitFlag2 bit, @BitFlag3 bit, @BitFlag4 bit, @BitFlag5 bit, @BitFlag6 bit) AS BEGIN INSERT INTO [dbo].[LimiterDefaults] values ( @LimiterNo, @InterfaceID, @Version, @MarketID, @ForceCommon, @ControlDefault, @BitFlag1, @BitFlag2, @BitFlag3, @BitFlag4, @BitFlag5, @BitFlag6) END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterListBrowseByControlName_70] (@DbLabel varchar(10), @ControlName varchar(50)) AS BEGIN SELECT ll.LimiterNo, ll.LimiterId, ll.Description, lct.ControlName, ll.LogicalOpCode, 'Hidden' = CASE ll.BitFlag1 WHEN 0 THEN 'No' ELSE 'Yes' END, HelpUrlSet = Case Len(IsNull(ll.HelpUrl,'')) When 0 then 'No' Else 'Yes' End FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lct ON (ll.ControlType = lct.ControlType) WHERE ll.DbLabel = @DbLabel AND ll.LimiterType = 'D' AND lct.ControlName LIKE @ControlName + '%' ORDER BY lct.ControlName, ll.LimiterId END
CREATE PROCEDURE [dbo].[EATL_UpdateDbFieldGroupCaption_70]( @UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int, @FieldGroupId varchar(100), @LangCode varchar(10), @Caption nvarchar(255) ) AS BEGIN DECLARE @LogFlag varchar(100) DECLARE @FieldGroupNo int SELECT @FieldGroupNo=[dbo].[FieldGroupList].[FieldGroupNo] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupId]=@FieldGroupId IF EXISTS(SELECT 1 FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo) BEGIN SET @LogFlag='Translate(Update) Group Caption' UPDATE [dbo].[DbFieldGroupCaption] SET [dbo].[DbFieldGroupCaption].[Caption]=@Caption WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupCaption].[LangCode]=@LangCode IF @@ROWCOUNT=0 BEGIN SET @LogFlag='Translate(Insert) Group Caption' INSERT INTO [dbo].[DbFieldGroupCaption]([dbo].[DbFieldGroupCaption].[DbVerNo], [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption]) VALUES(@DbVerNo, @FieldGroupNo, @LangCode, @Caption) END /* Log the Transaction */ DECLARE @DbName varchar(10), @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId ,@UserIp, @DbName, @DbLabel, @LogFlag, 'Group:', @FieldGroupId, 'Lang:', @LangCode, 'Caption:', @Caption END END
CREATE PROCEDURE [dbo].[EPCS_GetDbFamilies_70]( @DBFamilyFlag int ) AS BEGIN Select a.DSFamilyName,a.DbLabel,[a].[Volumes] From (Select Distinct [dbo].[DbList].[DSFamilyName],[dbo].[DbList].[DbLabel],dbo.EAIF_GetDbfamilyVolumes_70([dbo].[DbList].[DbVerNo]) as Volumes From [dbo].[DbList] Where [dbo].[DbList].[ShowOnDDSConsole] = @DBFamilyFlag And [dbo].[DbList].[DbType] In(1,3,4,6,8) )a Where [a].[Volumes] Is Not NULL ORDER BY a.DSFamilyName,a.DbLabel; END
CREATE PROCEDURE [dbo].[EAUI_GetFieldGroup_70](@FieldGroupNo int) AS BEGIN SELECT [dbo].[FieldGroupList].[FieldGroupId], [dbo].[FieldGroupList].[Description] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateDbInterfaceLimiterOrderNoAutoAdd_76] ( @DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterList varchar(8000), @OrderList varchar(8000)) AS BEGIN UPDATE [dbo].[DbInterfaceLimiter] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbInterfaceLimiter] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@LimiterList, @OrderList,'+') b ON a.LimiterNo=convert(int,b.Item) WHERE a.DbVerNo=@DbVerNo AND a.IntfScreenNo=@ScreenNo AND ( a.GroupNo is null OR a.GroupNo=@GroupNo) IF @@ERROR <> 0 BEGIN RAISERROR('Update failed for Modify Db Interfcae Limiter order', 16, -1) RETURN END END
CREATE Procedure [dbo].[EAUI_UpdateProfileFeatureItem_102] (@UserID varchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @ItemNo int, @SeqNo int, @ItemType char(1), @ItemShow bit ) AS Begin DECLARE @LoggingProfile varchar(30), @InterfaceID varchar(20), @Version varchar(10) DECLARE @InterfaceDefShowValue bit DECLARE @NewShowValue bit Select @InterfaceDefShowValue=[dbo].[InterfaceFeatureValues].[Show] from [dbo].[InterfaceFeatureValues] where [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]=@ItemNo -- EHPMEBSCOADMIN-1140:If the profile setting is same as interface default, remove customization for show column. if (@InterfaceDefShowValue is NOT NULL AND @InterfaceDefShowValue = @ItemShow ) SET @NewShowValue = NULL else SET @NewShowValue = @ItemShow SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) Begin Try Begin Transaction MERGE [dbo].[ProfFeatureValues] as Target Using (Select @ProfNo as ProfNo, @InterfaceFeatureNo as InterfaceFeatureNo, @ItemNo as ItemNo, @SeqNo as SeqNo, @ItemType as ItemType, @ItemShow as Show ) as Source On (Target.ProfNo=Source.ProfNo and Target.InterfaceFeatureNo=Source.InterfaceFeatureNo and Target.ItemNo=Source.ItemNo and Target.ItemType =Source.ItemType) When matched Then Update set Target.Show=@NewShowValue, Target.SeqNo = Source.SeqNo When Not matched by target Then Insert ([ProfNo], [InterfaceFeatureNo], [ItemNo], [ItemType],[Show], [SeqNo]) Values (Source.ProfNo, Source.InterfaceFeatureNo, Source.ItemNo, Source.ItemType,Source.Show, Source.SeqNo); EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify profile feature item ', @LoggingProfile, @InterfaceFeatureNo, @ItemNo, @ItemType, @ItemShow Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE FUNCTION [dbo].[UTIL_GetDropStmt](@ProcName varchar(100), @ProcType char(2)) RETURNS varchar(8000) AS BEGIN DECLARE @DropText varchar(8000) DECLARE @CrLf varchar(50) DECLARE @GO varchar(50) SET @CrLf = CHAR(13)+CHAR(10) SET @GO = 'GO' + @CrLf IF (@ProcType='FN' OR @ProcType='IF' OR @ProcType='TF') BEGIN SET @DropText = 'if exists (select * from dbo.sysobjects where id = object_id(N''[dbo].[' + @ProcName + ']'') and xtype in (N''FN'', N''IF'', N''TF''))' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + 'drop function [dbo].['+@ProcName+']' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + @GO SET @DropText = @DropText + @CrLf END IF (@ProcType='P' OR @ProcType='X') BEGIN SET @DropText = 'if exists (select * from dbo.sysobjects where id = object_id(N''[dbo].[' + @ProcName + ']'') and OBJECTPROPERTY(id, N''IsProcedure'') = 1)' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + 'drop procedure [dbo].['+@ProcName+']' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + @GO SET @DropText = @DropText + @CrLf END IF (@ProcType='V') BEGIN SET @DropText = 'if exists (select * from dbo.sysobjects where id = object_id(N''[dbo].[' + @ProcName + ']'') and OBJECTPROPERTY(id, N''IsView'') = 1)' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + 'drop view [dbo].['+@ProcName+']' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + @GO SET @DropText = @DropText + @CrLf END IF (@ProcType='TR') BEGIN SET @DropText = 'if exists (select * from dbo.sysobjects where id = object_id(N''[dbo].[' + @ProcName + ']'') and OBJECTPROPERTY(id, N''IsTrigger'') = 1)' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + 'drop trigger [dbo].['+@ProcName+']' SET @DropText = @DropText + @CrLf SET @DropText = @DropText + @GO SET @DropText = @DropText + @CrLf END RETURN @DropText END
CREATE PROCEDURE [dbo].[EAUI_GetCustProfilesList_141] (@CustID varchar(10), @InterfaceID varchar(10), @IntfVersion varchar (10)) AS BEGIN Select [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] Where [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[InterfaceID]=@InterfaceID AND [dbo].[Profile].[Version]=@IntfVersion Order by [dbo].[Profile].[ProfNo] END
CREATE PROCEDURE [dbo].[EAIP_InterfaceToolbarItemsReorder_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @IntfToolbarItemList VARCHAR(8000), @SeqNoList VARCHAR(8000) ) AS BEGIN DECLARE @Interface VARCHAR(8000) DECLARE @InterfaceToolbarItems TABLE ( Item VARCHAR(50), Value INT ) INSERT INTO @InterfaceToolbarItems (Item, Value) SELECT * FROM dbo.EAIF_GetItemValueTable_70(@IntfToolbarItemList, @SeqNoList, '+') DECLARE @InvalidToolbarName VARCHAR(50) SELECT @InvalidToolbarName = [ITI].[Item] FROM @InterfaceToolbarItems ITI WHERE [ITI].[Item] NOT IN (SELECT [dbo].[InterfaceToolbar].[ItemName] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version) IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END IF (@InvalidToolbarName IS NOT NULL) BEGIN RAISERROR('The ToolbarItem:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @InvalidToolbarName, @InterfaceID, @Version) RETURN END BEGIN TRANSACTION UPDATE IT SET IT.SeqNo = CONVERT(int,ITI.Value) FROM [dbo].[InterfaceToolbar] IT INNER JOIN @InterfaceToolbarItems ITI ON IT.ItemName = ITI.Item WHERE IT.InterfaceID = @InterfaceID AND IT.Version = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SELECT @Interface = InterfaceID + ',' + Version FROM [dbo].[InterfaceToolbar] IT INNER JOIN @InterfaceToolbarItems ITI ON IT.ItemName = ITI.Item WHERE IT.InterfaceID = @InterfaceID AND IT.Version = @Version IF (@Interface IS NULL) BEGIN SET @Interface = '' END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Reorder ToolbarItems', @Interface, '' COMMIT TRANSACTION END
create procedure [dbo].[EAIP_getMDbLimitersNoAutoAdd_89] as Select * from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[AutoAdd]=0
CREATE PROCEDURE [dbo].[EAUI_UpdateContentType_70](@UserId nvarchar(20), @UserIp varchar(15), @ContentType smallint, @Description nvarchar(50), @ImageFileName varchar(50), @StartPageName varchar(50), @LangCode varchar(10)='en', @LinkText nvarchar(255)=null) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[DbContentList] SET [dbo].[DbContentList].[Description]=@Description, [dbo].[DbContentList].[ImageFileName]=@ImageFileName, [dbo].[DbContentList].[StartPageName]=@StartPageName WHERE [dbo].[DbContentList].[ContentType]=@ContentType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF LEN(@LinkText)=0 SET @LinkText=null IF @LinkText is null DELETE [dbo].[DbContentCaptions] WHERE [dbo].[DbContentCaptions].[ContentType]=@ContentType AND [dbo].[DbContentCaptions].[LangCode]=@LangCode ELSE BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbContentCaptions] WHERE [dbo].[DbContentCaptions].[ContentType]=@ContentType AND [dbo].[DbContentCaptions].[LangCode]=@LangCode) UPDATE [dbo].[DbContentCaptions] SET [dbo].[DbContentCaptions].[LinkText]=@LinkText WHERE [dbo].[DbContentCaptions].[ContentType]=@ContentType AND [dbo].[DbContentCaptions].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[DbContentCaptions]([dbo].[DbContentCaptions].[ContentType], [dbo].[DbContentCaptions].[LangCode], [dbo].[DbContentCaptions].[LinkText]) VALUES (@ContentType, @LangCode, @LinkText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'ContentType','Update Content Type', @ContentType COMMIT TRANSACTION END
CREATE Function dbo.EAIF_GetCustomTblParamDbs_90 (@ParamNo int, @ItemID varchar(10), @FieldNo int) RETURNS varchar(100) AS BEGIN DECLARE @Ret varchar(100) SET @Ret = '' SELECT @Ret = @Ret+','+[dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName] FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo]=@FieldNo IF LEN(@Ret)>0 SET @Ret = SUBSTRING(@Ret, 2, LEN(@Ret)) RETURN @Ret END
--sql content merged from file: \StoredProcedures\EAUI_DeleteProfileCustomWidget_97.sql CREATE PROCEDURE [dbo].[EAUI_DeleteProfileCustomWidget_97] (@UserId nvarchar(20), @UserIp varchar(15), @ProfNo int, @WidgetNo int) AS BEGIN DECLARE @Label varchar(255) DECLARE @WidgetType varchar(4) SELECT @Label=[dbo].[ProfCustomWidgets].[Label],@WidgetType=[dbo].[ProfCustomWidgets].[Type] FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId,@UserIp,@Label,@WidgetType,@ProfNo,'Delete Custom Widget','Widget ID:',@WidgetNo BEGIN TRANSACTION DELETE FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[WidgetID] = @WidgetNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_FixSingleSegment_70](@DbVerNo int, @SegName varchar(10), @SegDescription nvarchar(100)) AS BEGIN BEGIN TRANSACTION -- First Clean all of the existing segment(s) for the given dbverno DELETE FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Failed to delete segments for database %s', 16, -1, @SegName) RETURN END -- Add Parent DbVerNo as a Segment of Itself. DECLARE @SeqNo int SELECT @SeqNo=(ISNULL(MAX([dbo].[DbSegment].[SeqNo]),0) + 1) FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo INSERT INTO [dbo].[DbSegment]([dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName], [dbo].[DbSegment].[SegDescription], [dbo].[DbSegment].[SeqNo]) VALUES (@DbVerNo, @SegName, @SegDescription, @SeqNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Failed to add Parent Database %s as its segement', 16, -1, @SegName) RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetReportCollectionList_70](@CustID varchar(10)) AS BEGIN SELECT [dbo].[Collection].[ColID], [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID and [dbo].[Collection].[IsDeleted] = 0 ORDER BY [dbo].[Collection].[ColName] END
CREATE PROCEDURE [dbo].[EAUI_AddTblParamItem_101]( @UserID nvarchar(20),@UserIP varchar(15), @ParamNo int, @ItemId varchar(10),@AutoAdd bit, @FieldsXML nvarchar(max)) AS BEGIN DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo IF EXISTS (SELECT 1 FROM [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblItems].[ItemID]=@ItemId) BEGIN RAISERROR ('Parameter %s already has Item with ID %s ',16,-1, @ParamName, @ItemId) RETURN END /*@Fields expected to be in a format:Prasing XML value: select p.field.value('name[1]','varchar(20)') AS ParamName, p.field.value('itemID[1]','varchar(50)') AS ItemID, p.field.value('val[1]','varchar(255)') AS ParamValue from @Fields.nodes('/fields/field') AS p(field) */ DECLARE @FieldsTable TABLE (FieldName varchar(20), ItemID VARCHAR(10), ParamValue nvarchar(255)) INSERT INTO @FieldsTable select * from dbo.EAIF_ParseTblParamFieldsXML_90(@FieldsXML) DECLARE @SeqNo int SELECT @SeqNo = Max(ISNULL([dbo].[CustomParamTblItems].[SeqNo],0))+1 FROM [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[CustomParamTblItems]([dbo].[CustomParamTblItems].[ParamNo], [dbo].[CustomParamTblItems].[ItemID],[dbo].[CustomParamTblItems].[SeqNo],[dbo].[CustomParamTblItems].[AutoAddToInterface]) VALUES(@ParamNo, @ItemId,@SeqNo,@AutoAdd) INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo], [dbo].[CustomParamTblGlobalDefaultValues].[ItemID], [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) SELECT @ParamNo, @ItemId, f.FieldNo, fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN @FieldsTable fld ON f.FieldName = fld.FieldName WHERE f.ParamNo = @ParamNO AND f.FieldType in('SV', 'NV', 'BV') INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMValues]([dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID], [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode], [dbo].[CustomParamTblGlobalDefaultSMValues].[Value]) SELECT @ParamNo, @ItemId, f.FieldNo, 'en', fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN @FieldsTable fld ON f.FieldName = fld.FieldName WHERE f.ParamNo = @ParamNO AND f.FieldType = 'SM' INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'CustomParamTblItems', 'Add Parameter Item', @ParamName, @ItemId, NULL, NULL, NULL COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END Show RImg 1
CREATE PROCEDURE [dbo].[EW31_GetCustName](@CustID varchar(10)) AS BEGIN SELECT [dbo].[Customer].[CustName] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAIP_AddDbSearchOption_76] ( @DbVerNo int, @OptionID varchar(20), @OptionType varchar(1), @SearchString varchar(255), @TargetDb varchar(10), @SourceType varchar(100), @TabImage varchar (255), @SubsetID varchar(20), @ViewID varchar(20) ) AS BEGIN /***stored procedure is used by EACopy utility**********************/ IF @SearchString='' SELECT @SearchString =null IF @TargetDb='' SELECT @TargetDb=null IF @SourceType='' SELECT @SourceType=null IF @TabImage='' SELECT @TabImage=null IF @SubsetID='' SELECT @SubsetID=null IF @ViewID='' SELECT @ViewID=null DECLARE @OptionNo int BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID) SELECT @OptionNo=[dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID ELSE BEGIN INSERT INTO [dbo].[SearchOptionList] ([dbo].[SearchOptionList].[SearchOptionId]) VALUES(@OptionID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END SELECT @OptionNo=[dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID END INSERT INTO [dbo].[DbSearchOption] ([dbo].[DbSearchOption].[DbVerNo],[dbo].[DbSearchOption].[SearchOptionNo],[dbo].[DbSearchOption].[OptionType],[dbo].[DbSearchOption].[SearchString],[dbo].[DbSearchOption].[TargetDb],[dbo].[DbSearchOption].[SourceType],[dbo].[DbSearchOption].[TabImage],[dbo].[DbSearchOption].[AuthoritySubset],[dbo].[DbSearchOption].[AuthorityView]) VALUES (@DbVerNo,@OptionNo,@OptionType,@SearchString,@TargetDb,@SourceType,@TabImage,@SubsetID,@ViewID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
/**************** Changed for : Multi-Lingual Admin (To support Unicode, UTF8 Encoding - MBCS) Table Name : LimiterList Column/Field def : Description (NOT NULL) to nvarchar from varchar(100) Sproc Called by : DataAccess\Database Called by page/app : UserInterface\Databases\LimiterDefinitions.aspx Version : 10.2 *****************/ CREATE PROCEDURE [dbo].[EAUI_GetLimiterListBrowseByDescription_70] (@DbLabel varchar(10), @Description nvarchar(100)) AS BEGIN SELECT ll.LimiterNo, ll.LimiterId, ll.Description, lct.ControlName, ll.LogicalOpCode, 'Hidden' = CASE ll.BitFlag1 WHEN 0 THEN 'No' ELSE 'Yes' END, HelpUrlSet = Case Len(IsNull(ll.HelpUrl,'')) When 0 then 'No' Else 'Yes' End FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lct ON (ll.ControlType = lct.ControlType) WHERE ll.DbLabel = @DbLabel AND ll.LimiterType = 'D' AND ll.Description LIKE @Description + '%' ORDER BY ll.Description END
CREATE PROCEDURE EATL_UpdateDbFieldGroupCaption_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo int ,FieldGroupId varchar(100) ,Caption nvarchar(255) ) INSERT INTO #Objects ( DbVerNo ,FieldGroupId ,Caption ) SELECT m.c.value('(./DbVerNo)[1]', 'int') ,m.c.value('(./FieldGroupId)[1]', 'varchar(100)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo int ,@FieldGroupId varchar(100) ,@Caption nvarchar(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@FieldGroupId = FieldGroupId ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateDbFieldGroupCaption_70] @UserID ,@UserIP ,@DbVerNo ,@FieldGroupId ,@Lang ,@Caption SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbFeatures_80] (@Category varchar(10),@DbName varchar(10), @DbLabel varchar(10))AS BEGIN SELECT l.FeatureName FROM [dbo].[DbFeature] dbf INNER JOIN [dbo].[DbList] db ON db.DbVerNo=dbf.DbVerNo INNER JOIN [dbo].[FeatureList] l ON dbf.FeatureNo=l.FeatureNo WHERE db.DbName = @DbName AND db.DbLabel=@DbLabel AND l.Category = @Category END
CREATE PROCEDURE [dbo].[EAUI_GetFieldGroupList_70] AS BEGIN SELECT [dbo].[FieldGroupList].[FieldGroupNo], [dbo].[FieldGroupList].[FieldGroupId], [dbo].[FieldGroupList].[Description] FROM [dbo].[FieldGroupList] ORDER BY [dbo].[FieldGroupList].[FieldGroupId] END
CREATE PROCEDURE [dbo].[EAIP_UpdateDbLimiterCaption_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @LimiterNo int, @LangCode varchar(10), @Caption nvarchar(100), @MouseOverText nvarchar(255) ) AS BEGIN BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiterCaption].[LangCode] = @LangCode) BEGIN UPDATE [dbo].[DbLimiterCaption] SET [dbo].[DbLimiterCaption].[Caption] = @Caption, [dbo].[DbLimiterCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[DbLimiterCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiterCaption].[LangCode] = @LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN INSERT INTO [dbo].[DbLimiterCaption] ([dbo].[DbLimiterCaption].[DbVerNo], [dbo].[DbLimiterCaption].[LimiterNo], [dbo].[DbLimiterCaption].[LangCode], [dbo].[DbLimiterCaption].[Caption], [dbo].[DbLimiterCaption].[MouseOverText]) VALUES (@DbVerNo, @LimiterNo, @LangCode, @Caption, @MouseOverText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
Create Procedure [dbo].[EAUI_UpdateProfileFeatureValues_102] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @ItemNo int, @ItemType varchar(5), @FieldsXML nvarchar(max)) AS Begin DECLARE @LoggingProfile varchar(30), @InterfaceID varchar(20), @Version varchar(10) SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version= [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo Begin Try Begin Transaction MERGE [dbo].[ProfFeatureValues] as Target Using (Select @ProfNo as ProfNo, @InterfaceFeatureNo as InterfaceFeatureNo, @ItemNo as ItemNo, @ItemType as ItemType, CAST(@FieldsXML as XML) as FieldXML ) as Source On (Target.ProfNo=Source.ProfNo and Target.InterfaceFeatureNo=Source.InterfaceFeatureNo and Target.ItemNo=Source.ItemNo and Target.ItemType =Source.ItemType) When matched Then Update set Target.FieldValueXml= Source.FieldXML When Not matched by target Then Insert ([ProfNo], [InterfaceFeatureNo], [ItemNo], [ItemType],[FieldValueXml]) Values (Source.ProfNo, Source.InterfaceFeatureNo, Source.ItemNo, Source.ItemType, Source.FieldXML); EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify profile feature / feature item', @LoggingProfile, @InterfaceFeatureNo, @ItemNo, @ItemType Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE FUNCTION [dbo].[UTIL_GetGrantToNames](@ProcName varchar(100), @ProcType char(2), @ProcUsers varchar(255)) RETURNS varchar(8000) AS BEGIN DECLARE @CrLf varchar(50) DECLARE @GO varchar(50) SET @CrLf = CHAR(13)+CHAR(10) SET @GO = 'GO' + @CrLf DECLARE @GrantList varchar(8000) SET @GrantList='' DECLARE @GranteeNameTable TABLE (GranteeName varchar(100)) INSERT INTO @GranteeNameTable SELECT user_name([dbo].[syspermissions].[grantee]) FROM [dbo].[syspermissions] WHERE [dbo].[syspermissions].[id]=object_id(@ProcName) IF @@ROWCOUNT=0 BEGIN DECLARE @DotPos int DECLARE @GranteeName varchar(100) SET @ProcUsers = REPLACE(@ProcUsers, ' ', '') SELECT @DotPos = charindex(',', @ProcUsers) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @GranteeName = left(@ProcUsers, @DotPos-1) INSERT INTO @GranteeNameTable VALUES(@GranteeName) SELECT @ProcUsers = substring(@ProcUsers, @DotPos+1, 255) SELECT @DotPos = charindex(',', @ProcUsers) END INSERT INTO @GranteeNameTable VALUES(@ProcUsers) END IF @ProcType='TF' SELECT @GrantList = @GrantList + @CrLf + 'GRANT SELECT ON [dbo].['+@ProcName+'] TO [' + GranteeName + ']' + @CrLf + @GO FROM @GranteeNameTable ELSE SELECT @GrantList = @GrantList + @CrLf + 'GRANT EXECUTE ON [dbo].['+@ProcName+'] TO [' + GranteeName + ']' + @CrLf + @GO FROM @GranteeNameTable RETURN @GrantList END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseAttributes_70] (@DbVerNo int) as BEGIN ---- get Subset DB info begin -- declare @HasSubsetDb bit=0, @SubsetDblist varchar(4000)='' -- check if has Subset DB select @HasSubsetDb = 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@DbVerNo if(@HasSubsetDb = 1) -- get Subset DB dbname list begin select @SubsetDblist =( select [d].[DbName] + ', ' from [dbo].[DbList] d inner join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo where s.PhysDbVerNo=@DbVerNo for xml path('') ) set @SubsetDblist=left(@SubsetDblist, LEN(@SubsetDblist)-1) -- remove trailing comma end ---- get Subset DB info end -- SELECT d.DbName, d.DisplayName, d.DbLabel, t.Description as DbTypeDesc, d.ContentType, d.DSFamilyName, d.DbGroup, d.MultiSegment, d.EnforceSimUsage, d.ShowStats, d.ShowOnDDSConsole, d.WebClient, d.WinClient, d.CharClient, d.Z3950Client, d.InterfaceID , ISNULL(d.DbCategory,'r') as DbCategory, d.EPXBuild,d.EDABuild,d.IncludeWhenAutoAdd, @HasSubsetDb as 'HasSubsetDb', @SubsetDblist as 'SubsetDBlist', ISNULL(ds.DbName,'') as 'PhysicalDb', ISNULL(ds.DbVerNo,0) as 'PhysicalDbVerNo', ISNULL(s.MergeSearches,0) as 'MergeSearches', ISNULL(s.DBDefSearchExprType,'I') as 'DbDefSearchExprType', ISNULL(s.DBDefSearchExpression ,'') as 'DbDefSearchExpression', d.NonSearchableDb, d.ArchiveProfSettings FROM [dbo].[DbList] d JOIN [dbo].[DbTypeList] t ON d.DbType=t.DbType left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo left outer join [dbo].[DbList] ds on ds.DbVerNo=s.PhysDbVerNo WHERE d.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAIP_MoveCollection_70] ( @SrcCustID varchar(10), @SrcColID nvarchar(50), @DstCustID varchar(10), @DstColID nvarchar(50), @ColName nvarchar(50) ) AS BEGIN DECLARE @ColNo int DECLARE @ReqId int SELECT @ColNo=[dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@SrcCustID AND [dbo].[Collection].[ColID]=@SrcColID AND [dbo].[Collection].[IsDeleted] = 0 IF @ColNo is NULL BEGIN RAISERROR ('The collection "%s.%s" does not exist',16,-1,@SrcCustID,@SrcColID) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@DstCustID AND [dbo].[Collection].[ColID]=@DstColID AND [dbo].[Collection].[IsDeleted] = 0) BEGIN RAISERROR ('The collection "%s.%s" already exists',16,-1,@DstCustID,@DstColID) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@DstCustID AND [dbo].[Collection].[ColID]=@DstColID AND [dbo].[Collection].[IsDeleted] = 1) BEGIN RAISERROR ('The collection "%s.%s" currently is deleting',16,-1,@DstCustID,@DstColID) RETURN END BEGIN TRANSACTION EXEC [dbo].[EAIP_CopyMessages_70] @SrcCustId, @DstCustID UPDATE [dbo].[Collection] SET [dbo].[Collection].[CustID]=@DstCustID, [dbo].[Collection].[ColID]=@DstColID, [dbo].[Collection].[ColName]=@ColName WHERE [dbo].[Collection].[ColNo]=@ColNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[LocalTitle] SET [YesMsgNo] = ms2.YesMsgNo FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[YesMessage] ms1 ON lt.YesMsgNo=ms1.YesMsgNo INNER JOIN [dbo].[YesMessage] ms2 ON SUBSTRING(ms2.MsgText,1,8000)=SUBSTRING(ms1.MsgText,1,8000) WHERE lt.ColNo=@ColNo AND ms2.CustID= @DstCustID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[LocalTitle] SET [NoMsgNo] = ms2.NoMsgNo FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[NoMessage] ms1 ON lt.NoMsgNo=ms1.NoMsgNo INNER JOIN [dbo].[NoMessage] ms2 ON SUBSTRING(ms2.MsgText,1,8000)=SUBSTRING(ms1.MsgText,1,8000) WHERE lt.ColNo=@ColNo AND ms2.CustID= @DstCustID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[ProfLocalLimiter] FROM [dbo].[ProfLocalLimiter] a INNER JOIN [dbo].[Profile] b ON a.ProfNo=b.ProfNo WHERE a.ColNo=@ColNo AND b.CustID=@SrcCustID DELETE [dbo].[ProfLocalAuthority] FROM [dbo].[ProfLocalAuthority] a INNER JOIN [dbo].[Profile] b ON a.ProfNo=b.ProfNo WHERE a.ColNo=@ColNo AND b.CustID=@SrcCustID --EXEC EASUPPORT.dbo.EAIP_NotifyCustCollection_70 @DstCustID, @DstColID, 'system', null UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() WHERE [dbo].[Collection].[ColNo]=@ColNo COMMIT TRANSACTION END
Create Procedure [dbo].[EAIP_GetMDbSTSList_90] as Select * from [dbo].[MultiDbSTSList]
CREATE PROCEDURE [dbo].[EAUI_UpdateCopyRequestStatus_193](@requestId int, @Status Char(1))AS BEGIN Update CopyRequest set RequestStatus=@Status Where ID=@requestId END
CREATE FUNCTION [dbo].[EAIF_GetDbDisplayName_70](@DbName varchar(10), @DbLabel varchar(10)) RETURNS nvarchar(100) AS BEGIN RETURN( SELECT [dbo].[DbList].[DisplayName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel) END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfileFeatureItem_102] (@UserId nvarchar(20), @UserIp varchar(15), @ProfNo int, @IntfFeatureNo int, @ItemNo int, @ItemType Char(1)) AS BEGIN TRY BEGIN TRANSACTION DELETE FROM [dbo].[ProfFeatureValues] WHERE [dbo].[ProfFeatureValues].[ProfNo]=@ProfNo AND [dbo].[ProfFeatureValues].[InterfaceFeatureNo]=@IntfFeatureNo AND [dbo].[ProfFeatureValues].[ItemNo]=@ItemNo AND [dbo].[ProfFeatureValues].[ItemType]=@ItemType EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Profile', 'Delete Profile Feature Item', @ProfNo,@IntfFeatureNo,@ItemNo,@ItemType COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EAIP_GetAllActiveCustomers_211] @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN DECLARE @flipsterProd VARCHAR(10) = 'flipster', @findMyOrgProd VARCHAR(10) = 'FindMyOrg', @customerProxyParamNo INT; SELECT @customerProxyParamNo = ParamNo FROM dbo.CustomParamList WHERE ParamLevel = 'C' AND ParamName = 'customerProxy'; WITH ProdCTE AS ( SELECT CustNo, CustID, CustName, MarketID, Consortium, MAX(0 + ISNULL(IsFlipma, 0)) IsFlipma, MAX(0 + ISNULL(IsFindMyOrg, 0)) IsFindMyOrg FROM ( SELECT c.CustNo ,c.CustID ,c.CustName ,c.MarketID ,c.Consortium ,CASE pcd.Product WHEN @flipsterProd THEN ISNULL(pc.ProductAllowed, pcd.ProductAllowed) END IsFlipma ,CASE pcd.Product WHEN @findMyOrgProd THEN ISNULL(pc.ProductAllowed, pcd.ProductAllowed) END IsFindMyOrg FROM dbo.Customer c INNER JOIN [dbo].[CustomParamProductConfigurationDefault] pcd ON c.MarketID = pcd.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc ON c.CustID = pc.CustID AND pcd.Product = pc.Product ) c GROUP BY CustNo, CustID, CustName, MarketID, Consortium ), AddressCTE AS ( SELECT p.* ,ct.CountryName ,ca.State AS SubdivisionId ,ca.City ,ca.PostalCode ,ca.Address1 ,ca.Address2 ,ca.Address3 FROM ProdCTE p LEFT OUTER JOIN dbo.CustAddress ca ON p.CustID=ca.CustID LEFT OUTER JOIN dbo.Country ct ON ct.CountryID=ca.CountryID ), InterfacesCTE AS ( SELECT a.* ,STUFF(( SELECT DISTINCT ',' + p.InterfaceID FROM dbo.Profile p WHERE p.CustID = a.CustID AND EXISTS( SELECT TOP 1 1 FROM dbo.ProfDatabase pd WHERE pd.ProfNo = p.ProfNo AND pd.Enable = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) )FOR XML PATH('')),1,1,'' ) Interfaces FROM AddressCTE a ), CustCTE AS ( SELECT i.* ,STUFF((SELECT ',,' + pv.ItemName + '::' + CONVERT(XML, pv.ParamValue).value('(/customerProxy/@urlMask)[1]','nvarchar(max)') FROM dbo.CustomParamXmlValues pv WHERE i.CustNo = pv.TargetNo AND pv.ParamNo = @customerProxyParamNo ORDER BY pv.ItemName FOR XML PATH('')), 1 ,2,'') AuthProxy FROM InterfacesCTE i ORDER BY CustID ASC OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT CustID ,CustName ,MarketID ,Consortium ,IsFlipma ,IsFindMyOrg ,CountryName ,SubdivisionId ,City ,PostalCode ,Address1 ,Address2 ,Address3 ,Interfaces ,AuthProxy ,NULL TotalCount FROM CustCTE UNION ALL SELECT NULL CustID ,NULL CustName ,NULL MarketID ,NULL Consortium ,NULL IsFlipma ,NULL IsFindMyOrg ,NULL CountryName ,NULL SubdivisionId ,NULL City ,NULL PostalCode ,NULL Address1 ,NULL Address2 ,NULL Address3 ,NULL Interfaces ,NULL AuthProxy ,COUNT(*) TotalCount FROM AddressCTE END
-- EAUI_GetRTACDbInfoList_101 is used by DatabaseModifyRTACSchema.aspx.cs -- to get the existing RTAC XML to make sure schema changes don't invalidate it CREATE PROCEDURE [dbo].[EAUI_GetRTACDbInfoList_101] @dbLabel VARCHAR(10) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; SELECT dl.DbVerNo, dl.DbName, dl.DisplayName, 'rtacTarget' AS ItemName, [rtac].[Config] AS XMLValue FROM [dbo].[DbRTACInfo] rtac JOIN [dbo].[DbList] dl ON dl.DbVerNo = rtac.DbVerNo and dl.DbLabel = @dbLabel WHERE [rtac].[Config] IS NOT NULL UNION ALL SELECT dl.DbVerNo, dl.DbName, dl.DisplayName, 'rtacTranslation' AS ItemName, [rtac].[Translation] AS XMLValue FROM [dbo].[DbRTACInfo] rtac JOIN [dbo].[DbList] dl ON dl.DbVerNo = rtac.DbVerNo and dl.DbLabel = @dbLabel WHERE [rtac].[Translation] IS NOT NULL ORDER BY [dl].[DbName] END
/*****************************************************************************/ CREATE PROCEDURE [dbo].[EAUI_AddTopic_77] (@UserID nvarchar(20), @UserIP varchar(30),@TopicID varchar(10), @SearchString varchar(255), @Caption nvarchar(255), @ParentTopicNo int, @AddSubTopicsToInterfaces int) AS BEGIN --assumption: if ParentTopicNo=0, this is a global topic DECLARE @TopicNo int DECLARE @Topic varchar(10) IF @ParentTopicNo=0 SET @Topic = 'Topic' ELSE SET @Topic='Subtopic' IF EXISTS(SELECT 1 FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID) BEGIN RAISERROR ('%s with ID %s already exists.',16,1, @Topic,@TopicID) RETURN END BEGIN TRANSACTION IF @ParentTopicNo=0 SET @ParentTopicNo=null INSERT INTO [dbo].[TopicList] ([dbo].[TopicList].[TopicID],[dbo].[TopicList].[SearchString],[dbo].[TopicList].[ParentTopicNo]) VALUES (@TopicID,@SearchString,@ParentTopicNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END SELECT @TopicNo=[dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID INSERT INTO [dbo].[TopicCaption] ([dbo].[TopicCaption].[TopicNo], [dbo].[TopicCaption].[LangCode],[dbo].[TopicCaption].[Caption]) VALUES (@TopicNo,'en',@Caption) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF @AddSubTopicsToInterfaces=1 BEGIN --add new subtopics to the InterfaceTopic also INSERT INTO [dbo].[InterfaceTopic] ([dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version],[dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[SeqNo]) SELECT [dbo].[InterfaceTopic].[InterfaceID], [dbo].[InterfaceTopic].[Version], @TopicNo, dbo.EAIF_GetNextInterfaceSubtopicSeqNo_77(@ParentTopicNo,[dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version]) FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[TopicNo] = @ParentTopicNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Topics','Add Topic',@TopicID,@Caption,@SearchString COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EW31_GetDbParams](@DbName varchar(10)) AS BEGIN DECLARE @DbVerNo int, @LimitList varchar(100), @ThesaurusExpansion bit, @FTExpansion bit SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel]='live' AND [dbo].[DbList].[DbName]=@DbName SET @LimitList = dbo.EAIF_GetDbLimiterDefaults_70(@DbVerNo) SET @ThesaurusExpansion=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'thesaurusExpansionAllowed')) SET @FTExpansion=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'fullTextExpansionAllowed')) SELECT @LimitList as 'LimitList', @ThesaurusExpansion AS 'ThesaurusExpansion', @FTExpansion as 'FullTextExpansion' END
CREATE PROCEDURE [dbo].[EAIP_AddDbSearchOptionCaptions_76] ( @DbVerNo int, @OptionID varchar(20), @OptionCaption nvarchar(255), @ResultCaption nvarchar(255), @Description nvarchar(max), @Lang varchar(10) ) AS BEGIN /***stored procedure is used by EACopy utility**********************/ DECLARE @OptionNo int SELECT @OptionNo=[dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID IF @OptionNo IS NULL BEGIN RAISERROR ('Could not find SearchOption with ID %s.',16,-1,@OptionID) RETURN END ELSE INSERT INTO [dbo].[DbSearchOptionCaption] ([dbo].[DbSearchOptionCaption].[DbVerNo],[dbo].[DbSearchOptionCaption].[SearchOptionNo],[dbo].[DbSearchOptionCaption].[LangCode],[dbo].[DbSearchOptionCaption].[OptionCaption],[dbo].[DbSearchOptionCaption].[ResultCaption],[dbo].[DbSearchOptionCaption].[Description] ) VALUES (@DbVerNo,@OptionNo,@Lang,@OptionCaption,@ResultCaption,@Description) END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterListBrowseByLimiterId_70] (@DbLabel varchar(10), @LimiterId varchar(20)) AS BEGIN SELECT ll.LimiterNo, ll.LimiterId, ll.Description, lct.ControlName, ll.LogicalOpCode, 'Hidden' = CASE ll.BitFlag1 WHEN 0 THEN 'No' ELSE 'Yes' END, HelpUrlSet = Case Len(IsNull(ll.HelpUrl,'')) When 0 then 'No' Else 'Yes' End FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lct ON (ll.ControlType = lct.ControlType) WHERE ll.DbLabel = @DbLabel AND ll.LimiterType = 'D' AND ll.LimiterId LIKE @LimiterId + '%' Order by ll.LimiterId END
CREATE PROCEDURE [dbo].[EATL_UpdateDbLimiterValues_70] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbLabel varchar(10), @LimiterId varchar(20), @LangCode varchar(10), @Caption nvarchar(100), @MouseOverText nvarchar(255) ) AS BEGIN DECLARE @LimiterNo int SET @LimiterNo = dbo.EAIF_GetLimiterNo_70( @LimiterId, @DbLabel) IF EXISTS(SELECT 1 FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiter].[LimiterNo]=@LimiterNo) BEGIN DECLARE @DbName varchar(10) SELECT @DbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database', 'Translate Limiter',@DbName, @DbLabel, @LangCode, @Caption, @MouseOverText EXEC [dbo].[EAIP_UpdateDbLimiterCaption_70] @UserID, @UserIP, @DbVerNo, @LimiterNo, @LangCode, @Caption, @MouseOverText END END
CREATE PROCEDURE [dbo].[EPCS_GetDbFields_70](@DbVerNo int, @SegName varchar(10))as BEGIN SELECT [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[IndexType], [dbo].[DbFieldTag].[Category], [dbo].[DbFieldTag].[ThesNumber], [dbo].[DbFieldTag].[FieldNumbers] FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName] = @SegName ORDER BY [dbo].[DbFieldTag].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetFieldGroupsBrowseByList_70](@FieldGroupId varchar(100), @Description varchar(255)) AS BEGIN IF(@FieldGroupId <> '') BEGIN SELECT [dbo].[FieldGroupList].[FieldGroupNo], [dbo].[FieldGroupList].[FieldGroupId], [dbo].[FieldGroupList].[Description] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupId] LIKE @FieldGroupId + '%' ORDER BY [dbo].[FieldGroupList].[FieldGroupId] END ELSE BEGIN SELECT [dbo].[FieldGroupList].[FieldGroupNo], [dbo].[FieldGroupList].[FieldGroupId], [dbo].[FieldGroupList].[Description] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[Description] LIKE @Description + '%' ORDER BY [dbo].[FieldGroupList].[Description] END END
CREATE PROCEDURE [dbo].[EAIP_UpdateDbParamScalarValue_70](@DbVerNo int,@ParamNo int, @ParamValue nvarchar(2000)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo] = @ParamNo) UPDATE [dbo].[DbParamScalarValues] SET [dbo].[DbParamScalarValues].[ParamValue] = @ParamValue WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo] = @ParamNo ELSE INSERT INTO [dbo].[DbParamScalarValues] values (@DbVerNo,@ParamNo,@ParamValue) END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileLibName_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileLibName_70](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @NewValue nvarchar(4000), @OldValue nvarchar(4000)) AS BEGIN DECLARE @CustName nvarchar(100) SELECT @CustName= a.CustName From [dbo].[Customer] a INNER JOIN [dbo].[Profile] b ON a.CustID = b.CustID Where b.ProfNo = @ProfNo DECLARE @CurrValue nvarchar(4000) SELECT @CurrValue = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo , 'libName') IF @NewValue = @OldValue RETURN IF @CurrValue ='' AND @NewValue=@CustName RETURN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivityOld_70] @UserID ,@UserIP,'Modify Library Name for a Profile',@ProfLogName,@ParamName,@NewValue IF @NewValue='' OR @NewValue=@CustName DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo ELSE EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @ParamNo, @NewValue COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[UTIL_GetListButtonBoxValueText](@xmlText varchar(8000), @SortValue bit) RETURNS VARCHAR(8000) AS BEGIN /* List Box, List Button */ /**/ /* */ DECLARE @ValueText varchar(8000) IF @SortValue=0 BEGIN SELECT @ValueText=dbo.EAIF_XmlDecode_70(SUBSTRING(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@xmlText, 'Caption goes here */ /*', '_'),'', ''), '(None)_(None)', '(None)'), 3, 8000)) SET @ValueText = REVERSE(SUBSTRING(REVERSE(@ValueText),2,8000)) END ELSE BEGIN SELECT @ValueText=dbo.EAIF_XmlDecode_70(SUBSTRING(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@xmlText, ' ', '_'),'', ''), '(None)_(None)', '(None)'), 3, 8000)) SET @ValueText = REVERSE(SUBSTRING(REVERSE(@ValueText),2,8000)) DECLARE @DotPos int DECLARE @Item varchar(1024) DECLARE @ItemTable TABLE(Item varchar(1024)) SELECT @DotPos=charindex('~', @ValueText) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item = left(@ValueText, @DotPos-1) INSERT INTO @ItemTable VALUES(@Item) SELECT @ValueText=substring(@ValueText, @DotPos+1, 8000) SELECT @DotPos=charindex('~', @ValueText) END INSERT INTO @ItemTable VALUES(@ValueText) SET @ValueText=NULL SELECT @ValueText = ISNULL(@ValueText+'~'+Item, Item) FROM @ItemTable ORDER BY Item END RETURN @ValueText END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseAuthorityList_70] ( @DbVerNo int ) AS BEGIN SELECT b.SeqNo, a.DisplayName, a.DbName, b.OwnedFlag, b.AuthDbVerNo FROM [dbo].[DbList] a LEFT JOIN [dbo].[DbAuthority] b ON a.DbVerNo = b.AuthDbVerNo WHERE b.MainDbVerNo = @DbVerNo ORDER BY [b].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseCustomizer_161](@NewDbLabel varchar(10), @UserID nvarchar(20) = '', @UserIP varchar(15) = '', @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try Begin Transaction DECLARE @Customizers2Copy TABLE (DbVerNo int, FeatureNo Smallint, FeatureName Varchar(100)) INSERT @Customizers2Copy SELECT dbf.DbVerNo, dbf.FeatureNo, fl.FeatureName FROM [dbo].[DbFeature] dbf JOIN [dbo].[FeatureList] fl ON dbf.FeatureNo = fl.FeatureNo join #TempDbListTable t on dbf.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE fl.Category = 'cust' DELETE dbf FROM [dbo].[DbFeature] dbf JOIN [dbo].[FeatureList] fl ON dbf.FeatureNo = fl.FeatureNo AND [fl].[Category] = 'cust' join #TempDbListTable t on dbf.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) --add new customizer(s) INSERT [dbo].[FeatureList] ([flOld].[Category], [flOld].[FeatureName], [flOld].[FeatureType], [flOld].[DbDependant], [flOld].[VisibleItemCount], [flOld].[SelectionMode], [flOld].[SubCategory]) SELECT distinct 'cust', flOld.FeatureName, flOld.FeatureType, flOld.DbDependant, flOld.VisibleItemCount, flOld.SelectionMode, @NewDbLabel FROM @Customizers2Copy fOld LEFT OUTER JOIN [dbo].[FeatureList] fNew ON fOld.FeatureName = fNew.FeatureName AND fNew.SubCategory = @NewDbLabel JOIN [dbo].[FeatureList] flOld ON fOld.FeatureNo = flOld.FeatureNo WHERE fNew.FeatureNo IS NULL --refresh customizers fields Delete fv From [dbo].[FeatureValues] fv join [dbo].[FeatureList] fl on fv.FeatureNo=fl.FeatureNo and fl.Category='Cust' and fl.SubCategory=@NewDbLabel join @Customizers2Copy c on fl.FeatureName=c.FeatureName Insert [dbo].[FeatureValues] Select a.NewFeatureNo, fvOld.ItemNo, fvOld.FieldValueXml, fvOld.SeqNo From (Select distinct fl.FeatureNo NewFeatureNo, c.FeatureNo OldFeatureNo from [dbo].[FeatureList] fl join @Customizers2Copy c on fl.FeatureName=c.FeatureName where fl.Category='Cust' and fl.SubCategory=@NewDbLabel) a join [dbo].[FeatureValues] fvOld on a.OldFeatureNo=fvOld.FeatureNo Insert [dbo].[DbFeature] Select dbl2.DbVerNo, fl.FeatureNo from @Customizers2Copy c Join [dbo].[FeatureList] fl ON c.FeatureName = fl.FeatureName and fl.Category = 'cust' AND fl.SubCategory = @NewDbLabel join #TempDbListTable t on c.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) join [dbo].[DbList] dbl1 on t.LowerDbVerNo=dbl1.DbVerNo join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel Commit Transaction DECLARE @FeatureNo Smallint DECLARE CopiedCustomizers CURSOR FOR SELECT Distinct fl.FeatureNo FROM @Customizers2Copy cc JOIN [dbo].[FeatureList] fl ON cc.FeatureName = fl.FeatureName WHERE fl.Category = 'cust' AND fl.SubCategory = @NewDbLabel OPEN CopiedCustomizers FETCH NEXT FROM CopiedCustomizers INTO @FeatureNo WHILE @@FETCH_STATUS = 0 BEGIN EXEC [dbo].[EAIP_ValidateDabatasesWithCustomizer_88] @FeatureNo, @UserID, @UserIP FETCH NEXT FROM CopiedCustomizers INTO @FeatureNo END CLOSE CopiedCustomizers DEALLOCATE CopiedCustomizers End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE dbo.EAIP_GetMstsStsDbMappingsForProfile_261(@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS Begin select mdbsl.MultiDBSTSID, dtl.DocTypeID, dbl.DbName from Profile P INNER JOIN ProfDatabase pdb on p.ProfNo=pdb.ProfNo and pdb.AccessEndDate>=GETDATE() and pdb.Enable=1 INNER JOIN DbList dbl on pdb.DbVerNo=dbl.DbVerNo INNER JOIN DbDocType dbdt on dbl.DbVerNo=dbdt.DbVerNo INNER JOIN DocTypeList dtl on dbdt.DocTypeNo=dtl.DocTypeNo INNER JOIN InterfaceDocType idt on dtl.DocTypeNo=idt.DocTypeNo and p.InterfaceID=idt.InterfaceID and p.Version=idt.Version INNER JOIN DocTypeMultiDbSTSList dtmsl on dtl.DocTypeNo=dtmsl.DocTypeNo INNER JOIN MultiDbSTSList mdbsl on dtmsl.MultiDbSTSID=mdbsl.MultiDBSTSID INNER JOIN InterfaceMultiDbSTSList imdbsl on mdbsl.MultiDBSTSID=imdbsl.MultiDbSTSID and p.InterfaceID=imdbsl.InterfaceID and p.Version=imdbsl.Version where p.CustID=@CustID and p.GroupID=@GroupID and p.ProfID=@ProfID order by mdbsl.MultiDBSTSID, dtl.DocTypeID, dbl.DbName End
CREATE PROCEDURE [dbo].[EAUI_UpdateCopyRequestToSiteStatus_193](@RequestId int,@ToSiteId varchar(10), @Status Char(1),@ErrorMsg varchar(200))AS BEGIN Update CopyRequestToSites set SiteCopyStatus=@Status, ErrorMessage=@ErrorMsg Where CopyRequestId=@RequestId and ToSiteId=@ToSiteId END
CREATE FUNCTION [dbo].[EAIF_GetDbDisplayName_92](@DbVerNo int) RETURNS nvarchar(100) AS BEGIN RETURN ISNULL((SELECT [dbo].[DbList].[DisplayName]+ N' ('+[dbo].[DbList].[DbName]+N')' FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo),N'Unknown') END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfileLinkSourceMenu_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int) AS BEGIN DECLARE @ProfLogName varchar(50), @LogAction varchar(50) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DELETE [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=dbo.EAIF_GetCustomParamNumber_70('linkSourceMenu','P') AND [dbo].[CustomParamXmlValues].[ItemName]='' SET @LogAction = 'Delete LinkSource Menu for a Profile' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', @LogAction, @ProfNo, @ProfLogName END
CREATE PROCEDURE [dbo].[EAIP_GetAllActiveCustomersExt_241] @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN DECLARE @flipsterProd VARCHAR(10) = 'flipster', @findMyOrgProd VARCHAR(10) = 'FindMyOrg', @customerProxyParamNo INT, @defaultProfileParamNo INT; SET @customerProxyParamNo = dbo.EAIF_GetCustomParamNumber_70('customerProxy','C'); SET @defaultProfileParamNo = dbo.EAIF_GetCustomParamNumber_70('defaultProfileForEbscoMobileApp','G'); WITH ProdCTE AS ( SELECT CustNo, CustID, CustName, MarketID, Consortium, MAX(0 + ISNULL(IsFlipma, 0)) IsFlipma, MAX(0 + ISNULL(IsFindMyOrg, 0)) IsFindMyOrg FROM ( SELECT c.CustNo ,c.CustID ,c.CustName ,c.MarketID ,c.Consortium ,CASE pcd.Product WHEN @flipsterProd THEN ISNULL(pc.ProductAllowed, pcd.ProductAllowed) END IsFlipma ,CASE pcd.Product WHEN @findMyOrgProd THEN ISNULL(pc.ProductAllowed, pcd.ProductAllowed) END IsFindMyOrg FROM dbo.Customer c INNER JOIN [dbo].[CustomParamProductConfigurationDefault] pcd ON c.MarketID = pcd.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc ON c.CustID = pc.CustID AND pcd.Product = pc.Product ) c GROUP BY CustNo, CustID, CustName, MarketID, Consortium ), AddressCTE AS ( SELECT p.* ,ct.CountryName ,ca.State AS SubdivisionId ,ca.City ,ca.PostalCode ,ca.Address1 ,ca.Address2 ,ca.Address3 FROM ProdCTE p LEFT OUTER JOIN dbo.CustAddress ca ON p.CustID=ca.CustID LEFT OUTER JOIN dbo.Country ct ON ct.CountryID=ca.CountryID ), InterfaceDbProfCTE AS ( SELECT a.* ,STUFF(( SELECT DISTINCT ',' + p.InterfaceID FROM [dbo].[Profile] p WHERE p.CustID = a.CustID AND EXISTS( SELECT TOP 1 1 FROM [dbo].[ProfDatabase] pd WHERE pd.ProfNo = p.ProfNo AND pd.Enable = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) )FOR XML PATH('')),1,1,'' ) Interfaces ,STUFF(( SELECT DISTINCT ',' + dbl.DbName FROM [dbo].[DbList] dbl INNER JOIN [dbo].[ProfDatabase] pd ON dbl.DbVerNo = pd.DbVerNo INNER JOIN [dbo].[Profile] p ON p.ProfNo = pd.ProfNo WHERE p.CustID = a.CustID AND pd.[Enable] = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) FOR XML PATH('')),1,1,'' ) [Databases] ,STUFF(( SELECT DISTINCT ',' + p.MarketID FROM [dbo].[Profile] p WHERE p.CustID = a.CustID AND EXISTS( SELECT TOP 1 1 FROM [dbo].[ProfDatabase] pd WHERE pd.ProfNo = p.ProfNo AND pd.Enable = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) )FOR XML PATH('')),1,1,'' ) ProfStyle ,( select p.ProfID FROM [dbo].[CustomParamScalarValues] cp INNER JOIN [dbo].[UserGroup] ug ON ug.GroupNo = cp.TargetNo INNER JOIN [dbo].[Profile] p ON p.ProfNo = COALESCE(cp.ParamValue,'0') WHERE ug.CustID = a.CustID AND ug.GroupID = 'main' AND cp.ParamNo = @defaultProfileParamNo ) DefaultProfileForEbscoMobileApp FROM AddressCTE a ), CustCTE AS ( SELECT i.* ,STUFF((SELECT ',,' + pv.ItemName + '::' + CONVERT(XML, pv.ParamValue).value('(/customerProxy/@urlMask)[1]','nvarchar(max)') FROM [dbo].[CustomParamXmlValues] pv WHERE i.CustNo = pv.TargetNo AND pv.ParamNo = @customerProxyParamNo ORDER BY pv.ItemName FOR XML PATH('')), 1 ,2,'') AuthProxy FROM InterfaceDbProfCTE i ORDER BY CustID ASC OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT CustID ,CustName ,MarketID ,Consortium ,IsFlipma ,IsFindMyOrg ,CountryName ,SubdivisionId ,City ,PostalCode ,Address1 ,Address2 ,Address3 ,Interfaces ,[Databases] ,ProfStyle ,DefaultProfileForEbscoMobileApp ,AuthProxy ,NULL TotalCount FROM CustCTE UNION SELECT NULL CustID ,NULL CustName ,NULL MarketID ,NULL Consortium ,NULL IsFlipma ,NULL IsFindMyOrg ,NULL CountryName ,NULL SubdivisionId ,NULL City ,NULL PostalCode ,NULL Address1 ,NULL Address2 ,NULL Address3 ,NULL Interfaces ,NULL [Databases] ,NULL ProfStyle ,NULL DefaultProfileForEbscoMobileApp ,NULL AuthProxy ,COUNT(*) TotalCount FROM AddressCTE END
CREATE PROCEDURE [dbo].[EAUI_GetScreenListForBrowseOptions_76](@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[LibBrowseOption]=1 ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_AddTopicToInterface_77] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @TopicList varchar(8000)) AS BEGIN DECLARE @NextSeqNo int SELECT @NextSeqNo = ISNULL(MAX(it.SeqNo) + 1, 1) FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo WHERE [it].[InterfaceID] = @InterfaceID AND [it].[Version] = @Version AND tl.ParentTopicNo is null BEGIN TRANSACTION --main topics INSERT INTO [dbo].[InterfaceTopic] ([dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version],[dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[SeqNo]) SELECT @InterfaceID, @Version, CONVERT(int,a.Item), a.Num FROM dbo.EAIF_GetEnumValueTable_70(@TopicList,'+',@NextSeqNo,1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --subtopics DECLARE @DotPos int DECLARE @Item varchar(255) DECLARE @TmpTopicList varchar(8000) SET @TmpTopicList = @TopicList+'+' DECLARE @SubtopicList varchar(8000) SET @SubtopicList='' SELECT @DotPos=charindex('+',@TmpTopicList) WHILE @DotPos <> 0 BEGIN SELECT @SubtopicList = @SubtopicList + CASE tl.TopicNo WHEN null THEN '' ELSE '+' + convert(varchar, tl.TopicNo) END FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE tl.ParentTopicNo = CONVERT(int, left(@TmpTopicList, @DotPos - 1)) AND tc.LangCode = 'en' ORDER BY tc.Caption IF LEN(@SubtopicList)>0 BEGIN SELECT @SubtopicList = SUBSTRING(@SubtopicList,2, LEN(@SubtopicList)) INSERT INTO [dbo].[InterfaceTopic] ([dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version],[dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[SeqNo]) SELECT @InterfaceID,@Version,[dbo].[EAIF_GetEnumValueTable_70].[Item], [dbo].[EAIF_GetEnumValueTable_70].[Num] FROM dbo.EAIF_GetEnumValueTable_70(@SubtopicList,'+',1,1) END SET @SubtopicList ='' SELECT @TmpTopicList=substring(@TmpTopicList,@DotPos+1,2048) SELECT @DotPos=charindex('+',@TmpTopicList) END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@TopicList,1,1024),'+',',') IF DATALENGTH(@TopicList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@TopicList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Add Interface Topic', @InterfaceID,@Version,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EW31_GetProfFlags](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN -- OEMDirect only uses Field Number 17 (MaxHitsAllowed) and Field Number 18 (MaxResultSet - Max Hits before warning) -- Let us simulate these values and return in the correct position DECLARE @BasicSearch int, @DefaultSearch bit, @NaturalLanguage bit, @EOLinking bit, @EOCustID varchar(20), @EOUserID varchar(20), @EOPassword varchar(20), @HomeURL varchar(255), @SearchLevel int, @PDFAllowed bit, @LimitSource int DECLARE @ProfNo int SELECT @ProfNo = dbo.EAIF_GetProfNo_70(@CustID,@GroupID,@ProfID) SET @SearchLevel=0 SET @BasicSearch = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'searchScreen') IF @BasicSearch=2 SET @BasicSearch=0 IF @BasicSearch=3 BEGIN SET @BasicSearch=0 SET @SearchLevel=1 END SET @DefaultSearch=0 SET @NaturalLanguage = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'relevancyRankingPermitted') ) SET @EOLinking = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlinePermitted') SET @EOCustID = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlineCustID') SET @EOUserID = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlineUserID') SET @EOPassword = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlinePassword') SET @HomeURL = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'LibURL') SET @PDFAllowed = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'pdfPermitted') ) SET @LimitSource = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'limitSource') ) SELECT @BasicSearch AS BasicSearch, @DefaultSearch AS DefaultSearch, @NaturalLanguage AS NaturalLanguage, @EOLinking AS EOLinking, @EOCustID AS EOCustID, @EOUserID AS EOUserID, @EOPassword AS EOPassword, @HomeURL AS HomeURL, @SearchLevel AS SearchLevel, @PDFAllowed AS PDFAllowed, @LimitSource AS LimitSource END
CREATE PROCEDURE [dbo].[EAIP_AddDbSystemCustomLink_204] --@dbList xml should look like ---- @dbList XML, @autoAssign BIT = 1 AS BEGIN DECLARE @CustNo INT = dbo.EAIF_GetCustNo_70('System'); DECLARE @ParamNo INT = dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C'); INSERT INTO dbo.DbSystemCustomLink SELECT cp.ItemName, db.DbVerNo, @autoAssign AS AutoAssign FROM [dbo].[DbList] db INNER JOIN ( SELECT 'DbName' = x.v.value('name[1]', 'VARCHAR(100)'), 'DbLabel' = x.v.value('label[1]', 'VARCHAR(100)'), 'LinkName' = x.v.value('linkName[1]', 'VARCHAR(100)') FROM @dbList.nodes('dbList/db') x(v) ) dbXml ON db.DbName = dbXml.DbName AND db.DbLabel = dbXml.DbLabel INNER JOIN [dbo].[CustomParamXmlValues] cp ON dbo.EAIF_GetXmlAttribValue_70(cp.ParamValue,'linkName') = dbXml.LinkName WHERE cp.TargetNo=@CustNo AND cp.ParamLevel='C' AND cp.ParamNo = @ParamNo END;-- edship Hiperkitap -- hip Hiperkitap -- eric ERIC Full Text
CREATE PROCEDURE [dbo].[EAUI_GetLimiterListBrowseContentsByAndOrSrch_70](@DbLabel varchar(10), @ControlTemplate nvarchar(max), @Operator varchar(10)) AS BEGIN DECLARE @SqlStmt nvarchar(1024) DECLARE @SrchTerms varchar(1024) SET @SrchTerms='' SELECT @SrchTerms=@SrchTerms+'ld.ControlTemplate like ''%'+[dbo].[EAIF_GetItemTable_70].[Item]+'%'' '+@Operator+' ' from dbo.EAIF_GetItemTable_70(@ControlTemplate,',') SET @SrchTerms = REVERSE(SUBSTRING(REVERSE(RTRIM(@SrchTerms)), PATINDEX('% %',REVERSE(RTRIM(@SrchTerms))), 1024)) SET @SqlStmt = 'SELECT distinct ll.LimiterNo, ll.LimiterId, ll.Description, lct.ControlName, ll.LogicalOpCode, Substring(ld.ControlTemplate,0,100) AS ControlTemplate, ''Hidden'' = CASE ll.BitFlag1 WHEN 0 THEN ''No'' ELSE ''Yes'' END, ''HelpUrlSet'' = Case Len(IsNull(ll.HelpUrl,'')) When 0 then ''No'' Else ''Yes'' End FROM dbo.LimiterList ll JOIN dbo.LimiterControlType lct ON (ll.ControlType = lct.ControlType) JOIN dbo.DbLimiterDetail ld ON (ll.LimiterNo = ld.LimiterNo) WHERE ll.DbLabel = ''' + @DbLabel + ''' AND ll.LimiterType = ''D'' AND (' + @SrchTerms + ') Order BY ll.LimiterId' EXEC [dbo].[sp_executesql] @SqlStmt END
CREATE PROCEDURE EATL_UpdateDbLimiterValues_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@LangCode VARCHAR(10) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo INT ,DbLabel VARCHAR(10) ,LimiterId VARCHAR(20) ,Caption NVARCHAR(100) ,MouseOverText NVARCHAR(255) ) INSERT INTO #Objects ( DbVerNo ,DbLabel ,LimiterId ,Caption ,MouseOverText ) SELECT m.c.value('(./DbVerNo)[1]', ' int') ,m.c.value('(./DbLabel)[1]', ' varchar(10)') ,m.c.value('(./LimiterId)[1]', 'varchar(20)') ,m.c.value('(./Caption)[1]', 'nvarchar(100)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo INT ,@DbLabel VARCHAR(10) ,@LimiterId VARCHAR(20) ,@Caption NVARCHAR(100) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@DbLabel = DbLabel ,@LimiterId = LimiterId ,@Caption = Caption ,@MouseOverText = MouseOverText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateDbLimiterValues_70] @UserID ,@UserIP ,@DbVerNo ,@DbLabel ,@LimiterId ,@LangCode ,@Caption ,@MouseOverText SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbFields_76](@DbName varchar(10), @SegName varchar(10),@DbLabel varchar(10)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo =dbo.EAIF_GetDbVerNo_70(@DbName, @DbLabel) SELECT [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[IndexType], [dbo].[DbFieldTag].[Category], [dbo].[DbFieldTag].[ThesNumber], [dbo].[DbFieldTag].[FieldNumbers] FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName] = @SegName ORDER BY [dbo].[DbFieldTag].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetFunFact_70](@FactNo int) AS BEGIN SELECT [dbo].[FunFacts].[Title], [dbo].[FunFacts].[Fact], [dbo].[FunFacts].[Image] From [dbo].[FunFacts] WHERE [dbo].[FunFacts].[FactNo] = @FactNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateDbParamXmlValue_70](@DbVerNo int,@ParamNo int, @ItemName varchar(255), @ParamValue nvarchar(max), @SeqNo smallint=NULL) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[DbParamXmlValues] SET [dbo].[DbParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName]=@ItemName ELSE BEGIN SELECT @SeqNo=(ISNULL(MAX([dbo].[DbParamXmlValues].[SeqNo]),0) + 1) FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo INSERT INTO [dbo].[DbParamXmlValues] values (@DbVerNo,@ParamNo,@ItemName,@ParamValue,@SeqNo) END END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileLinkNames_70](@UserID nvarchar(20), @UserIP varchar(15), @OldName varchar(255), @NewName varchar(255)) AS BEGIN Update [dbo].[CustomParamXmlValues] Set [dbo].[CustomParamXmlValues].[ItemName] = @NewName Where [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') AND [dbo].[CustomParamXmlValues].[ItemName]=@OldName EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Modify Custom Link Names for a Profile', @OldName, @NewName END
CREATE FUNCTION [dbo].[UTIL_LeftTrimProcText](@ProcText varchar(8000)) RETURNS varchar(8000) AS BEGIN DECLARE @Text varchar(8000) DECLARE @Posn int SET @Text = @ProcText SET @Posn = CHARINDEX('CREATE ', @ProcText) IF @Posn > 0 SET @Text = SUBSTRING(@ProcText, @Posn, 8000) RETURN @Text END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseBibMap_70] ( @DbVerNo int, @SegName varchar(10), @BibField int ) AS BEGIN SELECT [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag] FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName AND [dbo].[DbBibMap].[BibField] = @BibField END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseCustomizer_88](@OldDbVerNo int, @NewDbVerNo int, @UserID nvarchar(20) = '', @UserIP varchar(15) = '') AS BEGIN DECLARE @Customizers2Copy TABLE ( FeatureNo Smallint, FeatureName Varchar(100)); DECLARE @OldLabel Varchar(20), @NewLabel Varchar(20) SELECT @OldLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @OldDbVerNo SELECT @NewLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @NewDbVerNo INSERT INTO @Customizers2Copy SELECT [dbo].[DbFeature].[FeatureNo], [dbo].[FeatureList].[FeatureName] FROM [dbo].[DbFeature] INNER JOIN [dbo].[FeatureList] ON [dbo].[DbFeature].[FeatureNo] = [dbo].[FeatureList].[FeatureNo] WHERE [dbo].[FeatureList].[Category] = 'cust' AND [dbo].[DbFeature].[DbVerNo] = @OldDbVerNo BEGIN TRY BEGIN TRANSACTION -- cleanup existing customizers from target table DELETE FROM [dbo].[DbFeature] FROM [dbo].[DbFeature] INNER JOIN [dbo].[FeatureList] ON [dbo].[DbFeature].[FeatureNo] = [dbo].[FeatureList].[FeatureNo] WHERE [dbo].[DbFeature].[DbVerNo] = @NewDbVerNo AND [dbo].[FeatureList].[Category] = 'cust' --add new customizer(s) INSERT INTO [dbo].[FeatureList] ([flOld].[Category], [flOld].[FeatureName], [flOld].[FeatureType], [flOld].[DbDependant], [flOld].[VisibleItemCount], [flOld].[SelectionMode], [flOld].[SubCategory]) SELECT 'cust', flOld.FeatureName, flOld.FeatureType, flOld.DbDependant, flOld.VisibleItemCount, flOld.SelectionMode, @NewLabel FROM @Customizers2Copy fOld LEFT JOIN [dbo].[FeatureList] fNew ON fOld.FeatureName = fNew.FeatureName AND fNew.SubCategory = @NewLabel INNER JOIN [dbo].[FeatureList] flOld ON fOld.FeatureNo = flOld.FeatureNo WHERE fNew.FeatureNo IS NULL DECLARE @NewFeatureNo int SELECT @NewFeatureNo= l.FeatureNo from [dbo].[FeatureList] l JOIN @Customizers2Copy c ON l.FeatureName=c.FeatureName WHERE l.Category = 'cust' AND l.SubCategory = @NewLabel --refresh customizers fields DELETE FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@NewFeatureNo INSERT INTO [dbo].[FeatureValues] ([fvOld].[FeatureNo], [fvOld].[ItemNo], [fvOld].[FieldValueXml], [fvOld].[SeqNo]) SELECT @NewFeatureNo, fvOld.ItemNo, fvOld.FieldValueXml, fvOld.SeqNo FROM [dbo].[FeatureValues] fvOld JOIN @Customizers2Copy flOld ON fvOld.FeatureNo = flOld.FeatureNo --attach new customizers to the promoted database INSERT INTO [dbo].[DbFeature]([dbo].[DbFeature].[DbVerNo], [dbo].[DbFeature].[FeatureNo]) SELECT @NewDbVerNo AS DbVerNo, fl.FeatureNo FROM @Customizers2Copy cc INNER JOIN [dbo].[FeatureList] fl ON cc.FeatureName = fl.FeatureName WHERE fl.Category = 'cust' AND fl.SubCategory = @NewLabel COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH DECLARE @FeatureNo Smallint DECLARE CopiedCustomizers CURSOR FOR SELECT fl.FeatureNo FROM @Customizers2Copy cc INNER JOIN [dbo].[FeatureList] fl ON cc.FeatureName = fl.FeatureName WHERE fl.Category = 'cust' AND fl.SubCategory = @NewLabel OPEN CopiedCustomizers FETCH NEXT FROM CopiedCustomizers INTO @FeatureNo WHILE @@FETCH_STATUS = 0 BEGIN EXEC [dbo].[EAIP_ValidateDabatasesWithCustomizer_88] @FeatureNo, @UserID, @UserIP FETCH NEXT FROM CopiedCustomizers INTO @FeatureNo END CLOSE CopiedCustomizers DEALLOCATE CopiedCustomizers END
CREATE PROCEDURE [dbo].[EAIP_GetNewEdsProfiles_211] -- Add the parameters for the stored procedure here @pageIndex INT = 1, @pageSize INT = 10 AS BEGIN DECLARE @profileParamLevel CHAR(1) = 'P' DECLARE @uiStatusParamName VARCHAR(10) = 'uiStatus' DECLARE @uiStatusParamNo INT = dbo.EAIF_GetCustomParamNumber_70(@uiStatusParamName, @profileParamLevel); DECLARE @uiStatusDefault NVARCHAR(2000) SELECT @uiStatusDefault = cpl.DefValue FROM [dbo].[CustomParamList] cpl WHERE cpl.ParamNo = @uiStatusParamNo; WITH MainCte AS ( SELECT ProfNo, CustID, GroupID, ProfID, InterfaceID, Version, MarketID, STMode, DbLabel, ProfName, DefLangCode, SeqNo, URL, COALESCE(UiStatusCustom, UiStatusDefault, @uiStatusDefault) UiStatus FROM ( SELECT p.ProfNo, p.CustID, p.GroupID, p.ProfID, P.InterfaceID, P.Version, P.MarketID, P.STMode, P.DbLabel, P.ProfName, P.DefLangCode, P.SeqNo, P.URL, cpd.DefValue AS UiStatusDefault, NULL AS UiStatusCustom FROM dbo.Profile p INNER JOIN [dbo].[CustomParamDefaults] cpd ON cpd.ParamNo = @uiStatusParamNo AND cpd.InterfaceID = p.InterfaceID AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode AND cpd.Version = p.Version UNION ALL SELECT p.ProfNo, p.CustID, p.GroupID, p.ProfID, P.InterfaceID, P.Version, P.MarketID, P.STMode, P.DbLabel, P.ProfName, P.DefLangCode, P.SeqNo, P.URL, NULL AS UiStatusDefault, cpsv.ParamValue AS UiStatusCustom FROM dbo.Profile p INNER JOIN [dbo].[CustomParamScalarValues] cpsv ON p.ProfNo = cpsv.TargetNo AND cpsv.ParamNo = @uiStatusParamNo AND cpsv.ParamLevel = @profileParamLevel ) p GROUP BY ProfNo, CustID, GroupID, ProfID, InterfaceID, Version, MarketID, STMode, DbLabel, ProfName, DefLangCode, SeqNo, URL, UiStatusDefault, UiStatusCustom Having COALESCE(UiStatusCustom, UiStatusDefault, @uiStatusDefault) > '1' ), CountCte AS ( SELECT COUNT(*) AS TotalCount FROM MainCte ), PagedCte AS ( SELECT * FROM MainCte ORDER BY MainCte.ProfNo ASC OFFSET (@pageIndex - 1) * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT CustID, GroupID, ProfID, InterfaceID, Version, MarketID, STMode, DbLabel, ProfName, DefLangCode, SeqNo, URL, UiStatus, NULL TotalCount FROM PagedCte UNION ALL SELECT NULL CustID, NULL GroupID, NULL ProfID, NULL InterfaceID, NULL Version, NULL MarketID, NULL STMode, NULL DbLabel, NULL ProfName, NULL DefLangCode, NULL SeqNo, NULL URL, NULL UiStatus, CountCte.TotalCount FROM CountCte END
-- ============================================= -- Author: jjalbert -- Create date: October 10, 2011 -- November 23, 2001 Added logging. -- Description: SP to set CustExternalDbList.Status for series of Connectors -- 2011.11.30: JJalbert makes UserID nvarchar -- ============================================= CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerConnectorStatus_102] ( @UserID NVARCHAR(255), @UserIP varchar(15), @custid varchar(10), @connectorDbvernos varchar(max), @status varchar(1) ) AS BEGIN DECLARE @DbName VARCHAR(10) declare @ConnectorIds table ( id int ) DECLARE @SourceList XML DECLARE @SourceType VARCHAR(1) = 'M' -- ExternalDbID is populated from either DbListExternalSourceMuse.ExternalDbID or DbListExternalSourceIndexData.ExternalDbID, both of which are VARCHAR(255) DECLARE @SourceTable table (ExternalDbID VARCHAR(255), DbName VARCHAR(10), DisplayName NVARCHAR(100), [Description] Nvarchar(max), DbVerNo INT) insert into @ConnectorIds select CONVERT(int,[dbo].[Util_SplitToTable].[SplitData]) from dbo.Util_SplitToTable(',',@connectorDbvernos) declare @custno int select @custno = c.CustNo from [dbo].[Customer] c where c.CustID = @custid UPDATE [dbo].[CustExternalDbList] SET [Status] = @status FROM [dbo].[CustExternalDbList] a INNER JOIN @ConnectorIds b on a.DbVerNo = b.id and a.CustNo = @custno DECLARE @id int if (@status = 'P') begin -- delete from ProfDatabase -- where DbVerNo in (select id from @ConnectorIds) -- and CtrlCustID = @custid Delete [dbo].[ProfDatabase] from [dbo].[ProfDatabase] pd JOIN [dbo].[Profile] p ON p.ProfNo=pd.ProfNo JOIN @ConnectorIds c ON c.id=pd.DbVerNo where p.CustID = @custid end ELSE BEGIN INSERT @SourceTable SELECT CASE cdl.ConnectorProvider WHEN 'I' THEN indexData.ExternalDbID WHEN 'M' THEN muse.ExternalDbID END ,d.DbName, d.DisplayName, '',d.DbVerNo FROM [dbo].[DbListExternalSource] des INNER JOIN [dbo].[DbList] d ON d.DbVerNo = des.DbVerNo INNER JOIN @ConnectorIds ids on ids.id = d.DbVerNo INNER JOIN [dbo].[CustExternalDbList] cdl ON cdl.DbVerNo = des.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON muse.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON indexData.DbVerNo = d.DbVerNo WHERE cdl.CustNo = @custno AND d.SourceType = 'M' SELECT @SourceList=(SELECT ExternalDb.ExternalDbID,ExternalDb.DbName, ExternalDb.DisplayName, ExternalDb.Description FROM @SourceTable ExternalDb WHERE ExternalDb.DbVerNo NOT IN (SELECT [pd].[DbVerNo] FROM [dbo].[ProfDatabase] pd inner join [dbo].[Profile] pf ON pd.ProfNo = pf.ProfNo WHERE pf.CustID=@custid) FOR XML AUTO, ROOT('ExternalDbs')) EXEC [dbo].[EAIP_AddExternalDatabasesToProfiles_92] @custid, @SourceType, @SourceList END DECLARE @cust VARCHAR(50) set @cust = 'CustID='+@custid DECLARE @actvity VARCHAR(100) SET @actvity = 'Status Change to '+CAST(@status AS VARCHAR(1)) DECLARE IdList Cursor FOR SELECT id FROM @ConnectorIds OPEN IdList Fetch NEXT FROM IdList INTO @id While (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN SELECT @DbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo] = @id EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP, @DbName, 'live',@actvity,@cust END Fetch NEXT FROM IdList INTO @id END CLOSE IdList DEALLOCATE IdList END
CREATE FUNCTION [dbo].[EAIF_GetDbDocTypeMouseOverTexts_77](@IntfDocTypeNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @MOver nvarchar(max) SET @Mover=N'' DECLARE @DocTypeNo int SELECT @DocTypeNo = [dbo].[InterfaceDocType].[DocTypeNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[IntfDocTypeNo]=@IntfDocTypeNo SELECT @Mover = @Mover + N''+ dtc.MouseOverText +N' ' FROM [dbo].[DocTypeCaption] dtc LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idtc.IntfDocTypeNo=@IntfDocTypeNo AND dtc.LangCode=idtc.LangCode WHERE dtc.DocTypeNo = @DocTypeNo AND idtc.MouseOverText IS NULL SELECT @Mover = @Mover + N''+idtc.MouseOverText +N' ' FROM [dbo].[InterfaceDocTypeCaption] idtc LEFT OUTER JOIN [dbo].[DocTypeCaption] dtc ON dtc.DocTypeNo = @DocTypeNo AND dtc.LangCode=idtc.LangCode WHERE idtc.IntfDocTypeNo=@IntfDocTypeNo RETURN @Mover END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfileParamScalarValue_86](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Delete Scalar Profile Parameter',@ProfLogName,@ParamName EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @ProfNo,'P',@ParamNo END
-- ====================================================================================================================== /* Description: Return A Template for Email based on type - Import or export? EAIP_GetAllEmailTemplates EAIP_GetAllEmailTemplates 'en' EAIP_GetAllEmailTemplates 'es', ';' */ -- ====================================================================================================================== CREATE PROCEDURE [dbo].[EAIP_GetAllEmailTemplates_133] @LanguageCode nvarchar(10) = N'en' ,@Separator varchar(1) = ',' ,@AdminUser NVARCHAR(20) = NULL ,@UserIP VARCHAR(15) = NULL AS BEGIN DECLARE @step VARCHAR(50) -- describes the current step being performed BEGIN TRY SELECT ETK.FromEmailAddress AS FromEmailAddress, ETK.TemplateID AS TemplateID ,NULL AS ToEmailAddress ,NULL AS CcEmailAddress ,NULL AS BccEmailAddress ,ETV.LanguageID AS LanguageCode,ETV.SubjectTemplate AS EmailSubject ,ETV.EmailBodyTemplate, ETK.TemplateType AS TemplateType FROM dbo.EmailTemplate ETK INNER JOIN dbo.EmailTemplateDetails ETV ON ETK.TemplateID = ETV.TemplateID WHERE ETV.LanguageID = @LanguageCode End TRY BEGIN CATCH SELECT @step "StepName" ,ERROR_NUMBER() "ErrorNumber" ,ERROR_SEVERITY() "ErrorSeverity" ,ERROR_STATE() "ErrorState" ,ERROR_PROCEDURE() "ErrorProcedure" ,ERROR_LINE() "ErrorLine" ,ERROR_MESSAGE() "ErrorMessage" END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetScreenListForDbLimiters_76](@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], Description= CASE WHEN (@InterfaceID='ehost' OR @InterfaceID='eds') AND [dbo].[InterfaceScreen].[Description]='Basic' THEN 'Basic/Visual' ELSE [dbo].[InterfaceScreen].[Description] END FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[LibDbLimiters]=1 ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_AddUpdateCustCatalogNotificationSettings_142] ( @UserID nvarchar(20), @UserIP varchar(30), @CustID varchar(10), @CatalogDbName varchar(10), @EmailAddresses nvarchar (4000), @EmailSubjectLine nvarchar (2000) ) AS BEGIN TRY BEGIN TRANSACTION SET @EmailAddresses = LTRIM(RTRIM(@EmailAddresses)) SET @EmailSubjectLine = LTRIM(RTRIM(@EmailSubjectLine)) -- If the Email addresses is empty, it means email customization is being removed, remove the entry from the table IF (@EmailAddresses is null OR @EmailAddresses = '') BEGIN Delete from [dbo].[CustCatalogNotificationConfig] where [dbo].[CustCatalogNotificationConfig].[CustID]=@CustID and [dbo].[CustCatalogNotificationConfig].[DbName]=@CatalogDbName EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'CustCatalogNotificationConfig','Delete email customization',@CustID,@CatalogDbName,@EmailAddresses END -- /* Add/Update the CustCatalogNotificationConfig */ -- ELSE BEGIN MERGE [dbo].[CustCatalogNotificationConfig] AS target USING (Select @CustID as CustID, @CatalogDbName as DbName, @EmailAddresses as EmailAddress, @EmailSubjectLine as EmailSubjectLine) AS source ON (target.CustID = source.CustID AND target.DbName=source.DbName) WHEN MATCHED THEN UPDATE SET [target].[EmailAddresses] = source.EmailAddress, [target].[EmailSubjectLine]=source.EmailSubjectLine WHEN NOT MATCHED THEN INSERT ([CustID], [DbName], [EmailAddresses], [EmailSubjectLine]) VALUES (source.CustID, source.DbName, source.EmailAddress, source.EmailSubjectLine); EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'CustCatalogNotificationConfig','Add/Update CustCatalogNotificationConfig values',@CustID,@CatalogDbName,@EmailAddresses,@EmailSubjectLine END COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EW32_GetAllDbParams](@Label varchar(20)='live') AS BEGIN SET NOCOUNT ON DECLARE @DbVerNo int, @DbName varchar(10), @LimitList varchar(100), @ThesaurusExpansion bit, @FTExpansion bit, @FullTextTranslationAllowed bit, @SDIAlert bit DECLARE @AllDbParamsTable TABLE (ShortDBName varchar(10), LimitList varchar(100), ThesaurusExpansion bit, FullTextExpansion bit, FullTextTranslation bit, SDIAllowed bit) DECLARE GetDbNamesCursor CURSOR FOR SELECT [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel]=@Label AND ([dbo].[DbList].[DbType]=1 OR [dbo].[DbList].[DbType]=3) ORDER BY [dbo].[DbList].[DbName] FOR READ ONLY OPEN GetDbNamesCursor FETCH NEXT FROM GetDbNamesCursor INTO @DbVerNo, @DbName WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN SET @LimitList = dbo.EAIF_GetDbLimiterDefaults_70(@DbVerNo) SET @ThesaurusExpansion=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'thesaurusExpansionAllowed')) SET @FTExpansion=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'fullTextExpansionAllowed')) SET @FullTextTranslationAllowed=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'fullTextTranslationAllowed')) SET @SDIAlert=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'sdiAlertAllowed')) INSERT INTO @AllDbParamsTable VALUES(@DbName, @LimitList, @ThesaurusExpansion, @FTExpansion, @FullTextTranslationAllowed, @SDIAlert) END FETCH NEXT FROM GetDbNamesCursor INTO @DbVerNo, @DbName END CLOSE GetDbNamesCursor DEALLOCATE GetDbNamesCursor SELECT * FROM @AllDbParamsTable --ORDER BY ShortDBName END
--sql content merged from file: \StoredProcedures\EAIP_AddDbToInterfaceProfiles_70.sql CREATE PROCEDURE [dbo].[EAIP_AddDbToInterfaceProfiles_70](@CallerUserID nvarchar(20), @CallerUserIP varchar(15), @InterfaceID varchar(10), @ProductID varchar(10), @Version varchar(10)='live') AS BEGIN SET NOCOUNT ON DECLARE @DbVerNo int DECLARE @DefProfID varchar(10) Declare @SourceType char(1) SELECT @DefProfID = ISNULL([dbo].[InterfaceVersion].[DefProfID], @InterfaceID) FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version DECLARE @WRK_ProfSeqNo TABLE (ProfNo int, SeqNo int) CREATE TABLE #WRK_ProfDatabase (ProfNo int, DbVerNo int, SeqNo int, Enable bit, CtrlCustID varchar(10), Limiters varchar(100), Mode char(1), AccessEndDate datetime, SelDefault bit) SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ProductID AND [dbo].[DbList].[DbLabel]='live' Select @SourceType=[EASUPPORT].[dbo].[Product].[ProductType] from EASUPPORT.dbo.Product where [EASUPPORT].[dbo].[Product].[ProductID]=@ProductID DECLARE @ContentAutoAddParamNo int SELECT @ContentAutoAddParamNo=ISNULL([dbo].[CustomParamList].[ParamNo],-1) FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='newContentAutoAddToProfile' Begin Transaction IF @DbVerNo IS NULL Begin If @SourceType='M' Begin /* Get defaults -- where p.ProfID=@InterfaceID */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID], #WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) Select p.ProfNo, dbl.DbVerNo, 1 as 'SeqNo', -- 1 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=0 THEN 0 /* Profile customization exists, Auto Add turned Off*/ WHEN cv.ParamValue IS NULL AND p.InterfaceID in ('eds','wsapi') AND p.Version='live' THEN 0 /* EHPMEBSCOADMIN-2084 : Uncustomized default 'eds/wsapi' profiles should be disabled*/ ELSE 1 END AS 'Enable', /* Default is 1 in this scenario. It is updating default profiles*/ cs.CtrlCustID,ISNULL(pkg.Limiters,''),cs.Mode, dbo.fn_GetEPAccessEndDate_90(cs.EndDate, prd.GracePeriod, null, null), 0 from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID Join [dbo].[Profile] p on c.CustID=p.CustID join EASUPPORT.dbo.ProductPackage pkg on cs.PrdOffNo=pkg.PrdOffNo join EASUPPORT.dbo.Product prd on pkg.ProductID=prd.ProductID join [dbo].[CustExternalDbList] cedbl on c.CustNo=cedbl.CustNo join [dbo].[DbList] dbl on cedbl.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo where p.InterfaceID=@InterfaceID and p.Version=@Version and p.ProfID=@DefProfID --and p.GroupID NOT IN ('pc','trial') --AND cs.GroupID = 'main' and prd.ProductType=@SourceType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END /* Get Custom one's -- where p.ProfID<>@InterfaceID */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) Select p.ProfNo, dbl.DbVerNo, 1 as 'SeqNo', -- 0 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 THEN 1 /* Profile customization exists, Auto Add turned On*/ ELSE 0 END AS 'Enable', /* Default is 0 in this scenario. It is updating non-default profiles*/ cs.CtrlCustID,ISNULL(pkg.Limiters,''),cs.Mode, dbo.fn_GetEPAccessEndDate_90(cs.EndDate, prd.GracePeriod, null, null), 0 from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID Join [dbo].[Profile] p on c.CustID=p.CustID join EASUPPORT.dbo.ProductPackage pkg on cs.PrdOffNo=pkg.PrdOffNo join EASUPPORT.dbo.Product prd on pkg.ProductID=prd.ProductID join [dbo].[CustExternalDbList] cedbl on c.CustNo=cedbl.CustNo join [dbo].[DbList] dbl on cedbl.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.InterfaceID=@InterfaceID AND p.Version=@Version AND p.ProfID <> @DefProfID --AND p.GroupID NOT IN ('pc','trial') --AND cs.GroupID = 'main' And prd.ProductType = @SourceType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END End Else If @SourceType='C' Begin Insert #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) Select p.ProfNo, dbl.DbVerNo, 1 as 'SeqNo', -- 1 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=0 THEN 0 /* Profile customization exists, Auto Add turned Off*/ WHEN cv.ParamValue IS NULL AND p.InterfaceID in ('eds','wsapi') AND p.Version='live' THEN 0 /* EHPMEBSCOADMIN-2084 : Uncustomized default 'eds/wsapi' profiles should be disabled*/ ELSE 1 END AS 'Enable', /* Default is 1 in this scenario. It is updating default profiles*/ cs.CtrlCustID,ISNULL(pkg.Limiters,''),cs.Mode, dbo.fn_GetEPAccessEndDate_90(cs.EndDate, prd.GracePeriod, null, null), 0 from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID Join [dbo].[Profile] p on c.CustID=p.CustID join EASUPPORT.dbo.ProductPackage pkg on cs.PrdOffNo=pkg.PrdOffNo join EASUPPORT.dbo.Product prd on pkg.ProductID=prd.ProductID join EASUPPORT.dbo.CustomerCatalogs cc on c.CustID=cc.CustID join [dbo].[DbList] dbl on cc.DbName=dbl.DbName and dbl.DbLabel='live' LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo where p.InterfaceID=@InterfaceID and p.Version=@Version and p.ProfID=@DefProfID --and p.GroupID NOT IN ('pc','trial') --AND cs.GroupID = 'main' and prd.ProductType=@SourceType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Insert #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) Select p.ProfNo, dbl.DbVerNo, 1 as 'SeqNo', -- 0 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 THEN 1 /* Profile customization exists, Auto Add turned On*/ ELSE 0 END AS 'Enable', /* Default is 0 in this scenario. It is updating non-default profiles*/ cs.CtrlCustID,ISNULL(pkg.Limiters,''),cs.Mode, dbo.fn_GetEPAccessEndDate_90(cs.EndDate, prd.GracePeriod, null, null), 0 from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID Join [dbo].[Profile] p on c.CustID=p.CustID join EASUPPORT.dbo.ProductPackage pkg on cs.PrdOffNo=pkg.PrdOffNo join EASUPPORT.dbo.Product prd on pkg.ProductID=prd.ProductID join EASUPPORT.dbo.CustomerCatalogs cc on c.CustID=cc.CustID join [dbo].[DbList] dbl on cc.DbName=dbl.DbName and dbl.DbLabel='live' LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo where p.InterfaceID=@InterfaceID and p.Version=@Version AND p.ProfID <> @DefProfID --and p.GroupID NOT IN ('pc','trial') --AND cs.GroupID = 'main' and prd.ProductType=@SourceType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END End -- /* Get defaults -- where p.ProfID=@InterfaceID trial/pc*/ -- INSERT INTO #WRK_ProfDatabase(ProfNo, DbVerNo, SeqNo, Enable, CtrlCustID, Limiters,Mode) -- SELECT distinct ProfNo, dbl.DbVerNo, 1 as 'SeqNo', 1 as 'Enable', sub.CtrlCustID, ISNULL(pkg.Limiters,''),sub.Mode -- FROM EAMASTER.dbo.Profile prf -- join EASUPPORT.dbo.CustSubscription sub -- on prf.CustID=sub.CustID -- join EASUPPORT.dbo.ProductPackage pkg -- on sub.PrdOffNo=pkg.PrdOffNo -- join dbo.Customer c -- on prf.CustID=c.CustID -- join dbo.CustExternalDbList cedbl -- on c.CustNo=cedbl.CustNo -- join dbo.DbList dbl -- on cedbl.DbVerNo=dbl.DbVerNo -- WHERE prf.InterfaceID=@InterfaceID AND prf.Version=@Version -- --AND pkg.ProductID=@ProductID -- AND prf.ProfID = @DefProfID -- AND sub.GroupID <> 'main' AND prf.GroupID=sub.GroupID -- And dbl.SourceType = @SourceType -- -- IF @@ERROR <> 0 BEGIN -- ROLLBACK TRANSACTION -- RETURN -- END -- -- /* Get Custom one's -- where p.ProfID<>@InterfaceID trial,pc*/ -- INSERT INTO #WRK_ProfDatabase(ProfNo, DbVerNo, SeqNo, Enable, CtrlCustID, Limiters,Mode) -- SELECT distinct ProfNo, dbl.DbVerNo, 1 as 'SeqNo', 0 as 'Enable', sub.CtrlCustID, ISNULL(pkg.Limiters,''),sub.Mode -- FROM EAMASTER.dbo.Profile prf -- join EASUPPORT.dbo.CustSubscription sub -- on prf.CustID=sub.CustID -- join EASUPPORT.dbo.ProductPackage pkg -- on sub.PrdOffNo=pkg.PrdOffNo -- join dbo.Customer c -- on prf.CustID=c.CustID -- join dbo.CustExternalDbList cedbl -- on c.CustNo=cedbl.CustNo -- join dbo.DbList dbl -- on cedbl.DbVerNo=dbl.DbVerNo -- WHERE prf.InterfaceID=@InterfaceID AND prf.Version=@Version -- --AND pkg.ProductID=@ProductID -- AND prf.ProfID <> @DefProfID -- AND sub.GroupID <> 'main' AND prf.GroupID=sub.GroupID -- And dbl.SourceType = @SourceType -- -- IF @@ERROR <> 0 BEGIN -- ROLLBACK TRANSACTION -- RETURN -- END End Else Begin /* Get defaults -- where p.ProfID=@InterfaceID */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID], #WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) SELECT [prf].[ProfNo], @DbVerNo, 1 as 'SeqNo', -- 1 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=0 THEN 0 /* Profile customization exists, Auto Add turned Off*/ WHEN cv.ParamValue IS NULL AND prf.InterfaceID in ('eds','wsapi') AND prf.Version='live' THEN 0 /* EHPMEBSCOADMIN-2084 : Uncustomized default 'eds/wsapi' profiles should be disabled*/ ELSE 1 END AS 'Enable', /* Default is 1 in this scenario. It is updating default profiles*/ sub.CtrlCustID,ISNULL(pkg.Limiters,''),sub.Mode, dbo.fn_GetEPAccessEndDate_90(sub.EndDate, prd.GracePeriod, null, null), 0 FROM [dbo].[Profile] prf JOIN EASUPPORT.dbo.CustSubscription sub ON prf.CustID=sub.CustID JOIN EASUPPORT.dbo.ProductPackage pkg ON sub.PrdOffNo=pkg.PrdOffNo JOIN EASUPPORT.dbo.Product prd ON pkg.ProductID=prd.ProductID LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON prf.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE prf.InterfaceID=@InterfaceID AND prf.Version=@Version AND prf.ProfID = @DefProfID AND pkg.ProductID=@ProductID AND sub.GroupID = 'main' AND prf.GroupID NOT IN ('pc','trial') --prf.CustID=sub.CustID AND prf.InterfaceID=@InterfaceID AND prf.Version=@Version --AND sub.PrdOffNo=pkg.PrdOffNo --AND pkg.ProductID=prd.ProductID --AND pkg.ProductID=@ProductID --AND prf.ProfID = @DefProfID --AND sub.GroupID = 'main' AND prf.GroupID NOT IN ('pc','trial') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END /* Get Custom one's -- where p.ProfID<>@InterfaceID */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) SELECT [prf].[ProfNo], @DbVerNo, 1 as 'SeqNo', --0 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 THEN 1 /* Profile customization exists, Auto Add turned On*/ ELSE 0 END AS 'Enable', /* Default is 0 in this scenario. It is updating default profiles*/ sub.CtrlCustID,ISNULL(pkg.Limiters,''),sub.Mode, dbo.fn_GetEPAccessEndDate_90(sub.EndDate, prd.GracePeriod, null, null), 0 FROM [dbo].[Profile] prf JOIN EASUPPORT.dbo.CustSubscription sub ON prf.CustID=sub.CustID JOIN EASUPPORT.dbo.ProductPackage pkg ON sub.PrdOffNo=pkg.PrdOffNo JOIN EASUPPORT.dbo.Product prd ON pkg.ProductID=prd.ProductID LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON prf.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE prf.InterfaceID=@InterfaceID AND prf.Version=@Version AND prf.ProfID <> @DefProfID AND pkg.ProductID=@ProductID AND sub.GroupID = 'main' AND prf.GroupID NOT IN ('pc','trial') -- prf.CustID=sub.CustID AND prf.InterfaceID=@InterfaceID AND prf.Version=@Version --AND sub.PrdOffNo=pkg.PrdOffNo --AND pkg.ProductID=prd.ProductID --AND pkg.ProductID=@ProductID --AND prf.ProfID <> @DefProfID --AND sub.GroupID = 'main' AND prf.GroupID NOT IN ('pc','trial') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END /* Get defaults -- where p.ProfID=@InterfaceID trial/pc*/ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID], #WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) SELECT [prf].[ProfNo], @DbVerNo, 1 as 'SeqNo', -- 1 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=0 THEN 0 /* Profile customization exists, Auto Add turned Off*/ WHEN cv.ParamValue IS NULL AND prf.InterfaceID in ('eds','wsapi') AND prf.Version='live' THEN 0 /* EHPMEBSCOADMIN-2084 : Uncustomized default 'eds/wsapi' profiles should be disabled*/ ELSE 1 END AS 'Enable', /* Default is 1 in this scenario. It is updating default profiles*/ sub.CtrlCustID, ISNULL(pkg.Limiters,''),sub.Mode, dbo.fn_GetEPAccessEndDate_90(sub.EndDate, prd.GracePeriod, null, null), 0 FROM [dbo].[Profile] prf JOIN EASUPPORT.dbo.CustSubscription sub ON prf.CustID=sub.CustID JOIN EASUPPORT.dbo.ProductPackage pkg ON sub.PrdOffNo=pkg.PrdOffNo JOIN EASUPPORT.dbo.Product prd ON pkg.ProductID=prd.ProductID LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON prf.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE prf.InterfaceID=@InterfaceID AND prf.Version=@Version AND prf.ProfID = @DefProfID AND pkg.ProductID=@ProductID AND sub.GroupID <> 'main' AND prf.GroupID=sub.GroupID -- prf.CustID=sub.CustID AND prf.InterfaceID=@InterfaceID AND prf.Version=@Version --AND sub.PrdOffNo=pkg.PrdOffNo --AND pkg.ProductID=prd.ProductID --AND pkg.ProductID=@ProductID --AND prf.ProfID = @DefProfID -- AND sub.GroupID <> 'main' AND prf.GroupID=sub.GroupID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END /* Get Custom one's -- where p.ProfID<>@InterfaceID trial,pc*/ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID], #WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault]) SELECT [prf].[ProfNo], @DbVerNo, 1 as 'SeqNo', -- 0 as 'Enable', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 THEN 1 /* Profile customization exists, Auto Add turned On*/ ELSE 0 END AS 'Enable', /* Default is 0 in this scenario. It is updating default profiles*/ sub.CtrlCustID, ISNULL(pkg.Limiters,''),sub.Mode, dbo.fn_GetEPAccessEndDate_90(sub.EndDate, prd.GracePeriod, null, null), 0 FROM [dbo].[Profile] prf JOIN EASUPPORT.dbo.CustSubscription sub ON prf.CustID=sub.CustID JOIN EASUPPORT.dbo.ProductPackage pkg ON sub.PrdOffNo=pkg.PrdOffNo JOIN EASUPPORT.dbo.Product prd ON pkg.ProductID=prd.ProductID LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON prf.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE prf.InterfaceID=@InterfaceID AND prf.Version=@Version AND prf.ProfID <> @DefProfID AND pkg.ProductID=@ProductID AND sub.GroupID <> 'main' AND prf.GroupID=sub.GroupID --prf.CustID=sub.CustID AND prf.InterfaceID=@InterfaceID AND prf.Version=@Version --AND sub.PrdOffNo=pkg.PrdOffNo --AND pkg.ProductID=prd.ProductID --AND pkg.ProductID=@ProductID --AND prf.ProfID <> @DefProfID --AND sub.GroupID <> 'main' AND prf.GroupID=sub.GroupID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END End CREATE INDEX IX_TMP_ProfDbVer ON #WRK_ProfDatabase(ProfNo, DbVerNo) DELETE #WRK_ProfDatabase FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO @WRK_ProfSeqNo SELECT a.ProfNo, MAX(b.SeqNo)+1 FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo WHERE b.SeqNo < 90 GROUP BY a.ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE #WRK_ProfDatabase SET [SeqNo] = b.SeqNo FROM #WRK_ProfDatabase AS a INNER JOIN @WRK_ProfSeqNo AS b ON a.ProfNo=b.ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -------------------------------------------------- -- set enabled based on Interface and SourceType properties -------------------------------------------------- Update #WRK_ProfDatabase set [Enable]=a.[newEnable], [SelDefault]=a.[newSelDefault] from #WRK_ProfDatabase wpdb join (select p.ProfNo, dbl.DbVerNo, newEnable=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc.StringValue, 'Standard') = 'Standard' then wpdb.Enable when isnull(istc.StringValue, 'Standard') = 'Disable' then 0 when isnull(istc.StringValue, 'Standard') = 'Enable' then 1 end, newSelDefault=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc2.StringValue, 'Standard')= 'Standard' then wpdb.SelDefault when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from [dbo].[Profile] p join #WRK_ProfDatabase wpdb on p.ProfNo=wpdb.ProfNo join [dbo].[DbList] dbl on wpdb.DbVerNo=dbl.DbVerNo join [dbo].[InterfaceVersion] iv on (p.InterfaceID=iv.InterfaceID and p.Version=iv.Version) left outer join [dbo].[InterfacePrimaryDatabases] ip on (p.InterfaceID=ip.InterfaceID and p.Version=ip.Version and dbl.DbVerNo=ip.DbVerNo) left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseAddRule' left outer join [dbo].[InterfaceSourceTypeConfig] istc2 on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and dbl.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule') a on wpdb.ProfNo=a.ProfNo and wpdb.DbVerNo=a.DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --EHPMEBSCOADMIN-1344: When a product is added to an Interface, the non-searchable database (product) should be "enabled" by default on the impacted profiles -- This update would override ALL other existing business rules around "enabling" the databases (including NewContent Auto-add feature) on the profile. Update #WRK_ProfDatabase set [Enable]=1 from #WRK_ProfDatabase wpdb JOIN [dbo].[DbList] dbl WITH (NOLOCK) ON wpdb.DbVerNo=dbl.DbVerNo AND dbl.NonSearchableDb = 1 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- EhpmEbscoAdmin-1447 -- EAIF_GetHiddenProfDbList_133 returns all Databases that have been configured to not show on the Profile Database List -- For each of these Databases we need to configure them to be enabled and Selected by default for all Profiles UPDATE #WRK_ProfDatabase set [Enable]=1, [SelDefault]=1 from #WRK_ProfDatabase wpdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON wpdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS not null /* Log the ProfNo & DbVerNo inserted in ProfDatabase. */ INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Add Database to Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, NULL, NULL, NULL FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[Profile] AS prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON a.DbVerNo=dbl.DbVerNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter],[dbo].[ProfDatabase].[CtrlCustID],[dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate]) SELECT #WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], max(#WRK_ProfDatabase.[SeqNo]), min(convert(int,#WRK_ProfDatabase.[Enable])), min(convert(int,#WRK_ProfDatabase.[SelDefault])), 0, null, max(#WRK_ProfDatabase.[Mode]), min(#WRK_ProfDatabase.[AccessEndDate]) FROM #WRK_ProfDatabase GROUP BY #WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo] IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Update [dbo].[ProfDatabase] SET [CtrlCustID] = dbo.EAIF_AppendCtrlCustID_70(b.CtrlCustID,a.CtrlCustID) FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo --add hidden limiters defined for the Product Offering to the ProfDLimiters2 DECLARE @WRK_ProfDbLimiter2 TABLE (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int, SeqNo int) DECLARE @ProfNo int DECLARE @LimiterList varchar(100) DECLARE @IntfScreenNo int DECLARE C1_C CURSOR FOR SELECT wt.ProfNo, wt.DbVerNo, wt.Limiters, ins.IntfScreenNo FROM #WRK_ProfDatabase AS wt INNER JOIN [dbo].[Profile] AS p ON p.ProfNo=wt.ProfNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID = ins.InterfaceID AND p.Version=ins.Version WHERE wt.Limiters <> '' GROUP BY wt.ProfNo, wt.DbVerNo,wt.Limiters, ins.IntfScreenNo OPEN C1_C FETCH NEXT FROM C1_C INTO @ProfNo,@DbVerNo,@LimiterList,@IntfScreenNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @WRK_ProfDbLimiter2(ProfNo,DbVerNo,IntfScreenNo,LimiterNo,SeqNo) SELECT @ProfNo,@DbVerNo,@IntfScreenNo, ll.LimiterNo,-1 FROM dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a INNER JOIN [dbo].[LimiterList] AS ll ON a.Item = ll.LimiterId WHERE ll.DbLabel='live' IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C ROLLBACK TRANSACTION RETURN END END FETCH NEXT FROM C1_C INTO @ProfNo,@DbVerNO,@LimiterList,@IntfScreenNo END CLOSE C1_C DEALLOCATE C1_C UPDATE @WRK_ProfDbLimiter2 SET [SeqNo] = dbl.SeqNo FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[DbLimiter] AS dbl ON a.DbVerNo=dbl.DbVerNo AND dbl.LimiterNo=a.LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue],[dbo].[ProfDbLimiter2].[SeqNo]) SELECT ProfNo,DbVerNo,IntfScreenNo,LimiterNo,0,'On',SeqNo FROM @WRK_ProfDbLimiter2 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Add ProductOffering Limiters for a Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, ins.Description,ll.LimiterId, '' FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[Profile] AS prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON prf.InterfaceID = ins.InterfaceID AND prf.Version=ins.Version INNER JOIN [dbo].[LimiterList] AS ll ON ll.LimiterNo = a.LimiterNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterListDescription_79] (@LimiterListID varchar(255))AS BEGIN SELECT [ll].[Description]+'('+ll.LimiterId+')' as Description FROM [dbo].[LimiterList] ll INNER JOIN dbo.EAIF_GetItemTable_70(@LimiterListID, '+') pl ON ll.LimiterId = pl.Item WHERE ll.DbLabel = 'live' END
CREATE PROCEDURE [dbo].[EATL_UpdateDbParamXmlValue_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @ParamName varchar(100), @ItemName varchar(255), @ParamValue nvarchar(max)) AS BEGIN DECLARE @ParamNo smallint SELECT @ParamNo = dbo.EAIF_GetDbParamNumber_70(@ParamName) --Check for dbDocTypes IF( @ParamName IN ( 'dbDocType' ,'shortDescriptions')) BEGIN --This XML carries all dbDocTypes for a given Database/Label. IF EXISTS(SELECT 1 FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[DbParamXmlValues].[ItemName]=@ItemName) BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Database', 'Translate Parameter',@DbName,@DbLabel,@ParamName,@ParamValue EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, @ItemName,@ParamValue END END ELSE BEGIN -- language stored as separate items- nothing for now EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Database', 'Translate Parameter',@DbName,@DbLabel,@ParamName,@ParamValue EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, @ItemName,@ParamValue END END
CREATE PROCEDURE [dbo].[EPCS_GetDbForms_76](@DbVerNo int, @Category char(1)) AS BEGIN SELECT [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo AND [dbo].[DbForm].[Category]=@Category END
CREATE PROCEDURE [dbo].[EAUI_GetFunFacts_70] AS BEGIN SELECT [dbo].[FunFacts].[FactNo], [dbo].[FunFacts].[Title], [dbo].[FunFacts].[Fact] From [dbo].[FunFacts] END
-- UPDATE the Enable, Config and Translation data for the given database CREATE PROCEDURE [dbo].[EAIP_UpdateDbRTACInfo_101] (@DbVerNo int, @Enable bit, @Config nvarchar(max), @Translation nvarchar(max)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- temp variables for checking for NULL values or empty strings DECLARE @tempConfig NVARCHAR(MAX) DECLARE @tempTranslation NVARCHAR(MAX) SET @tempConfig = @Config SET @tempTranslation = @Translation -- if the strings are empty, set them to NULL (to make the checks below easier) SET @tempConfig = NULLIF(@tempConfig, '') SET @tempTranslation = NULLIF(@tempTranslation, '') -- if the string was empty and set to null, set the param to null too IF @tempConfig IS NULL BEGIN SET @Config = NULL -- if there is no config, enable can't be true SET @Enable = 0 END IF @tempTranslation IS NULL BEGIN SET @Translation = NULL END -- check if the record is already there IF EXISTS (SELECT 1 FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo) BEGIN -- if the user is setting both the config and the translation to NULL, -- then delete the row IF (@tempConfig IS NULL AND @tempTranslation IS NULL) BEGIN DELETE FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo END ELSE BEGIN -- otherwise update it UPDATE [dbo].[DbRTACInfo] SET [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo, [dbo].[DbRTACInfo].[Enable] = @Enable, [dbo].[DbRTACInfo].[Config] = @Config, [dbo].[DbRTACInfo].[Translation] = @Translation WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo END END ELSE -- it's a new record, so insert it BEGIN IF (@tempConfig IS NOT NULL OR @tempTranslation IS NOT NULL) BEGIN INSERT INTO [dbo].[DbRTACInfo] ([dbo].[DbRTACInfo].[DbVerNo] ,[dbo].[DbRTACInfo].[Enable] ,[dbo].[DbRTACInfo].[Config] ,[dbo].[DbRTACInfo].[Translation]) VALUES (@DbVerNo, @Enable, @Config, @Translation) END END END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileLinkSourceMenu_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @MenuXml nvarchar(max)) AS BEGIN DECLARE @ProfLogName varchar(50), @LogAction varchar(50) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @ProfParamNo int SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('linkSourceMenu','P') IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ProfParamNo ) BEGIN SET @LogAction = 'Update LinkSource Menu for a Profile' UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @MenuXml WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ProfParamNo END ELSE BEGIN SET @LogAction = 'Create LinkSource Menu for a Profile' INSERT INTO [dbo].[CustomParamXmlValues]([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], [dbo].[CustomParamXmlValues].[SeqNo]) VALUES(@ProfNo, 'P', @ProfParamNo, '', @MenuXml, NULL) END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', @LogAction, @ProfNo, @ProfLogName END
CREATE FUNCTION [dbo].[UTIL_RightTrimProcText](@ProcText varchar(8000)) RETURNS varchar(8000) AS BEGIN DECLARE @Text varchar(8000) DECLARE @RevText varchar(8000) DECLARE @Posn int SET @Text = @ProcText SET @RevText = REVERSE(@ProcText) -- Search for Reverse of END SET @Posn = CHARINDEX('DNE', @RevText) IF @Posn > 0 SET @Text = REVERSE(SUBSTRING(@RevText, @Posn, 8000)) RETURN @Text END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseBibMapList_70] ( @DbVerNo int, @SegName varchar(10) ) AS BEGIN SELECT [dbo].[DbBibMap].[SeqNo], [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag] FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName ORDER BY [dbo].[DbBibMap].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseDetails_161](@OldDbLabel varchar(10), @NewDbLabel varchar(10), @BasicParams bit=1, @Authorities bit=1, @Descriptions bit=1, @DocTypes bit=1, @Forms bit=1, @Limiters bit=1, @SegmentFileInfo bit=1, @SortOptions bit=1, @Subjects bit=1, @DbFields bit=1, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit = 1, @TOCs bit=1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1, @RtacItems bit = 0, @SubsetDbs bit = 0, @PickupLocations BIT=0, @SearchConceptMapping BIT = 1, @DSParameters bit=0, @UserID nvarchar(20) = '', @UserIP varchar(15) = '') AS BEGIN Begin try /* UPDATE dbo.DbList */ /* DbName, DbLabel, DSFamilyName are intentionally not overwritten */ /* EnforceSimUsage is handled separately below */ /* All other fields should be updated*/ if @SubsetDbs = 1 UPDATE dbl2 SET [dbl2].[DisplayName]=dbl1.DisplayName, [dbl2].[DbGroup]=dbl1.DbGroup,[dbl2].[DbType]=dbl1.DbType,[dbl2].[ContentType]=dbl1.ContentType, [dbl2].[LastUpdateDate]=GETDATE(),[dbl2].[MultiSegment]=dbl1.MultiSegment, [dbl2].[ShowStats]=dbl1.ShowStats,[dbl2].[ShowOnDDSConsole]=dbl1.ShowOnDDSConsole, [dbl2].[WebClient]=dbl1.WebClient,[dbl2].[WinClient]=dbl1.WinClient,[dbl2].[CharClient]=dbl1.CharClient,[dbl2].[Z3950Client]=dbl1.Z3950Client, [dbl2].[InterfaceID]=dbl1.InterfaceID, [dbl2].[DbCategory]=dbl1.DbCategory,[dbl2].[EPXBuild]=dbl1.EPXBuild,[dbl2].[EDABuild]=dbl1.EDABuild, [dbl2].[IncludeWhenAutoAdd]=dbl1.IncludeWhenAutoAdd, [dbl2].[DSFamilyName]=dbl1.DSFamilyName, [dbl2].[NonSearchableDb]=dbl1.NonSearchableDb, [dbl2].[ArchiveProfSettings]=dbl1.ArchiveProfSettings FROM [dbo].[DbList] dbl1 Join #TempDbListTable t on dbl1.DbVerNo=t.LowerDbVerNo Join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel else Begin Update dbl2 SET [dbl2].[DisplayName]=dbl1.DisplayName, [dbl2].[DbGroup]=dbl1.DbGroup,[dbl2].[DbType]=dbl1.DbType,[dbl2].[ContentType]=dbl1.ContentType, [dbl2].[LastUpdateDate]=GETDATE(),[dbl2].[MultiSegment]=dbl1.MultiSegment, [dbl2].[ShowStats]=dbl1.ShowStats,[dbl2].[ShowOnDDSConsole]=dbl1.ShowOnDDSConsole, [dbl2].[WebClient]=dbl1.WebClient,[dbl2].[WinClient]=dbl1.WinClient,[dbl2].[CharClient]=dbl1.CharClient,[dbl2].[Z3950Client]=dbl1.Z3950Client, [dbl2].[InterfaceID]=dbl1.InterfaceID, [dbl2].[DbCategory]=dbl1.DbCategory,[dbl2].[EPXBuild]=dbl1.EPXBuild,[dbl2].[EDABuild]=dbl1.EDABuild, [dbl2].[IncludeWhenAutoAdd]=dbl1.IncludeWhenAutoAdd, [dbl2].[DSFamilyName]=dbl1.DSFamilyName, [dbl2].[NonSearchableDb]=dbl1.NonSearchableDb, [dbl2].[ArchiveProfSettings]=dbl1.ArchiveProfSettings FROM [dbo].[DbList] dbl1 Join [dbo].[DbSubset] dbs on dbl1.DbVerNo=dbs.SubsetDbVerNo Join #TempDbListTable t on dbl1.DbVerNo=t.LowerDbVerNo Join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel Update dbl2 SET [dbl2].[DisplayName]=dbl1.DisplayName, [dbl2].[DbGroup]=dbl1.DbGroup,[dbl2].[DbType]=dbl1.DbType,[dbl2].[ContentType]=dbl1.ContentType, [dbl2].[LastUpdateDate]=GETDATE(),[dbl2].[MultiSegment]=dbl1.MultiSegment, [dbl2].[ShowStats]=dbl1.ShowStats,[dbl2].[ShowOnDDSConsole]=dbl1.ShowOnDDSConsole, [dbl2].[WebClient]=dbl1.WebClient,[dbl2].[WinClient]=dbl1.WinClient,[dbl2].[CharClient]=dbl1.CharClient,[dbl2].[Z3950Client]=dbl1.Z3950Client, [dbl2].[InterfaceID]=dbl1.InterfaceID, [dbl2].[DbCategory]=dbl1.DbCategory,[dbl2].[EPXBuild]=dbl1.EPXBuild,[dbl2].[EDABuild]=dbl1.EDABuild, [dbl2].[IncludeWhenAutoAdd]=dbl1.IncludeWhenAutoAdd, [dbl2].[NonSearchableDb]=dbl1.NonSearchableDb, [dbl2].[ArchiveProfSettings]=dbl1.ArchiveProfSettings FROM [dbo].[DbList] dbl1 Left Outer Join [dbo].[DbSubset] dbs on dbl1.DbVerNo=dbs.SubsetDbVerNo Join #TempDbListTable t on dbl1.DbVerNo=t.LowerDbVerNo Join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel Where dbs.SubsetDbVerNo is null End If @SubsetDbs=1 Begin DECLARE @Subsets VARCHAR(100) SET @Subsets='' Select @Subsets=@Subsets + a.DbName + ', ' from (Select dbl2.DbName From [dbo].[DbList] dbl1 join #TempDbListTable t on dbl1.DbVerNo=t.UpperDbVerNo join [dbo].[DbSubset] dbs on dbl1.DbVerNo=dbs.PhysDbVerNo Join [dbo].[DbList] dbl2 on dbs.SubsetDbVerNo=dbl2.DbVerNo) a Left Outer Join (Select dbl2.DbName From [dbo].[DbList] dbl1 join #TempDbListTable t on dbl1.DbVerNo=t.LowerDbVerNo join [dbo].[DbSubset] dbs on dbl1.DbVerNo=dbs.PhysDbVerNo Join [dbo].[DbList] dbl2 on dbs.SubsetDbVerNo=dbl2.DbVerNo) b on a.DbName=b.DbName WHERE b.DbName IS NULL IF @Subsets<>'' Begin SELECT @Subsets=SUBSTRING(@Subsets, 1, LEN(@Subsets)-1) RAISERROR ('Database being promoted has the following associated subset database(s) in %s label that do not exist as subset for this database in current label, please make sure these subset(s) are removed from target label as well before promoting it: %s',16,-1,@NewDbLabel, @Subsets) END /* The following fix for EADM-3911 is being removed because the logic is redundant with the conditional above. If the promoted database has no subsets databases in the current label, however the same database has subset databases (Parent + subsets) in the target label then the conditional above will have already caught this. -- EADM-3911 fix: If the promoted database has no subsets databases in the current label, however the same database has -- subset databases (Parent + subsets) in the target label, then raise an error. If exists (select * from #TempDbListTable t join dbo.DbSubset dbs1 on t.UpperDbVerNo=dbs1.PhysDbVerNo left outer join dbo.DbSubset dbs2 on t.LowerDbVerNo=dbs2.PhysDbVerNo where dbs2.PhysDbVerNo is null) RAISERROR ('Database being promoted has some associated subset database(s) in %s label that do not exist as subset for this database in current label, please make sure these subset(s) are removed from target label as well before promoting it.',16,-1,@NewDbLabel)*/ End -- If promoted Database is not a SubsetDB on the lower label but it is on the upper label then make it not a SubsetDb on the upper lable as well Declare @Table table (SubsetDbVerNo int, PhysDbVerNo int) Insert @Table select t.UpperDbVerNo, dbs1.PhysDbVerNo from [dbo].[DbSubset] dbs1 join #TempDbListTable t on dbs1.SubsetDbVerNo=t.UpperDbVerNo left outer join [dbo].[DbSubset] dbs2 on t.LowerDbVerNo=dbs2.SubsetDbVerNo where dbs2.SubsetDbVerNo is null Delete dbs From [dbo].[DbSubset] dbs join @Table t on dbs.SubsetDbVerNo=t.SubsetDbVerNo Delete dbpsv From [dbo].[DbParamScalarValues] dbpsv join [dbo].[DbParamList] dbpl on dbpsv.ParamNo=dbpl.ParamNo and dbpl.InheritFromPhysical=1 join @Table t on dbpsv.DbVerNo=t.SubsetDbVerNo delete dbc From [dbo].[DbCluster] dbc join @Table t on dbc.DbVerNo=t.SubsetDbVerNo Delete dbs From [dbo].[DbSort] dbs join @Table t on dbs.DbVerNo=t.SubsetDbVerNo Delete dbsp From [dbo].[DbServerParams] dbsp join @Table t on dbsp.DbVerNo=t.SubsetDbVerNo Insert [dbo].[DbParamScalarValues]([dbpsv].[DbVerNo], [dbpsv].[ParamNo], [dbpsv].[ParamValue]) Select t.SubsetDbVerNo, dbpl.ParamNo, dbpsv.ParamValue From [dbo].[DbParamScalarValues] dbpsv Join [dbo].[DbParamList] dbpl on dbpl.ParamNo= dbpsv.ParamNo and dbpl.InheritFromPhysical=1 Join @Table t on dbpsv.DbVerNo=t.PhysDbVerNo Insert [dbo].[DbCluster] ([dbs].[DbVerNo], [dbs].[ClustNo], [dbs].[Enable], [dbs].[DbSearchTag]) Select t.SubsetDbVerNo, ClustNo, Enable, DbSearchTag From [dbo].[DbCluster] dbs join @Table t on dbs.DbVerNo=t.PhysDbVerNo Insert [dbo].[DbSort]([dbs].[DbVerNo], [dbs].[SortID], [dbs].[SortName], [dbs].[SortField], [dbs].[SeqNo]) select t.SubsetDbVerNo, SortID, SortName, SortField, SeqNo from [dbo].[DbSort] dbs join @Table t on dbs.DbVerNo=t.PhysDbVerNo Insert [dbo].[DbServerParams]([dbsp].[DbVerNo], [dbsp].[Threads], [dbsp].[WaitForRequest], [dbsp].[DefSearchInstances], [dbsp].[MaxSearchInstances],[dbsp].[DefRetrieveInstances], [dbsp].[MaxRetrieveInstances], [dbsp].[DefFormatInstances], [dbsp].[MaxFormatInstances], [dbsp].[DefFullTextInstances], [dbsp].[MaxFullTextInstances], [dbsp].[DefThesaurusInstances], [dbsp].[MaxThesaurusInstances], [dbsp].[MaxFuzzyTerms], [dbsp].[MaxBooleanTerms], [dbsp].[MaxFuzzyRecordNumbers], [dbsp].[MaxBooleanRecordNumbers], [dbsp].[MaxRecords]) select t.SubsetDbVerNo, Threads, WaitForRequest, DefSearchInstances, MaxSearchInstances,DefRetrieveInstances, MaxRetrieveInstances, DefFormatInstances, MaxFormatInstances, DefFullTextInstances, MaxFullTextInstances, DefThesaurusInstances, MaxThesaurusInstances, MaxFuzzyTerms, MaxBooleanTerms, MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers, MaxRecords from [dbo].[DbServerParams] dbsp join @Table t on dbsp.DbVerNo=t.PhysDbVerNo ------ /* Enforce Sim Usage only gets overwritten if it was disabled to begin with Avoids unintentional disabling of this feature during promotion */ Update dbl2 Set [dbl2].[EnforceSimUsage]=dbl1.EnforceSimUsage From [dbo].[DbList] dbl1 Join #TempDbListTable t on dbl1.DbVerNo=t.LowerDbVerNo Join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel Where dbl1.EnforceSimUsage=0 /* DbIcon */ Exec [dbo].[EAIP_PromoteDatabaseIcons_161] 1, 1, 1 /* BasicParams */ IF (@BasicParams = 1 or @Authorities=1 or @SubsetDbs=1) EXEC dbo.EAIP_PromoteDatabaseScalarParams_161 @BasicParams, 1, 1 /* AUTHORITIES */ IF (@Authorities=1 or @Authorities=1 or @SubsetDbs=1) BEGIN EXEC dbo.EAIP_PromoteDatabaseAuthorities_161 @NewDbLabel, @Authorities, 0, 1 EXEC dbo.EAIP_PromoteMultiDbAuthoritiesForRegularDb_161 @NewDbLabel, @Authorities, 0, 1 END /* MultiDb Authorities */ IF (@MultiDbAuthorities = 1 or @Authorities=1 or @SubsetDbs=1) EXEC dbo.EAIP_PromoteMultiDbAuthoritiesForAuthority_161 @MultiDbAuthorities, @MultiDbAuthorities, 1 /* Forms */ IF (@Forms = 1 or @Authorities=1 or @SubsetDbs=1) EXEC dbo.EAIP_PromoteDatabaseForms_161 @Forms, 1, 1 /* Limiters */ IF (@Limiters=1) EXEC dbo.EAIP_PromoteDatabaseLimiters_161 @NewDbLabel, @Limiters, 1, 1 /* SegmentFileInfo */ IF (@SegmentFileInfo = 1 ) EXEC dbo.EAIP_PromoteDatabaseSegmentFileInfo_161 @SegmentFileInfo, 1, 1 /* SortOptions */ IF (@SortOptions = 1) EXEC dbo.EAIP_PromoteDatabaseSortOptions_161 @SortOptions, 1, 1 /* DocTypes */ IF (@DocTypes = 1 ) EXEC dbo.EAIP_PromoteDatabaseDocTypes_161 @DocTypes, 0, 1 /* Descriptions */ IF (@Descriptions = 1 ) BEGIN EXEC dbo.EAIP_PromoteDatabaseXmlParam_161 'shortDescription', @Descriptions, 0, 1 EXEC dbo.EAIP_PromoteDatabaseXmlParam_161 'longDescription', @Descriptions, 0, 1 EXEC dbo.EAIP_PromoteDatabaseScalarParam_161 'ResourceType', @Descriptions, 0, 1 END /* Subjects */ IF (@Subjects = 1 ) EXEC dbo.EAIP_PromoteDatabaseXmlParam_161 'dbSubjects', @Subjects, 0, 1 /* DbFields */ IF (@DbFields=1) EXEC dbo.EAIP_PromoteDatabaseFields_161 @DbFields, @DbFields, 1 /* BrowseOptions */ IF (@BrowseOptions=1) EXEC dbo.EAIP_PromoteDatabaseBrowseOptions_161 @BrowseOptions, @BrowseOptions, 1 /* SearchOptions */ IF (@SearchOptions=1) EXEC dbo.EAIP_PromoteDatabaseSearchOptions_161 @SearchOptions, @SearchOptions, 1 IF (@AuthFilter =1) EXEC dbo.EAIP_PromoteDatabaseXmlParam_161 'authorityFilters', @AuthFilter, @AuthFilter, 1 /*Topics*/ IF (@Topics =1) EXEC dbo.EAIP_PromoteDatabaseTopics_161 @Topics, @Topics, 1 IF (@TOCs =1) EXEC dbo.EAIP_PromoteDatabaseTOCs_161 @TOCs, 0, 1 --Subject Groups IF (@Groups =1) EXEC dbo.EAIP_PromoteDatabaseGroups_161 @Groups, @Groups, 1 --Rel. Ranking items: Customizers, RR Weight Fields, Field match IF (@Customizers = 1) BEGIN EXEC dbo.EAIP_PromoteDatabaseCustomizer_161 @NewDbLabel, @UserID, @UserIP, @Customizers, @Customizers, 1 EXEC [dbo].[EAIP_PromoteDatabaseFeatures_161] 'rrw', @Customizers, @Customizers, 1 EXEC [dbo].[EAIP_PromoteDatabaseFeatures_161] 'fmt', @Customizers, @Customizers, 1 END --Clusters IF (@Clusters = 1) EXEC dbo.EAIP_PromoteDatabaseClusters_161 @OldDbLabel, @NewDbLabel, @Clusters, @Clusters, 1 --ToolbarItems IF (@ToolbarItems = 1) EXEC dbo.EAIP_PromoteDatabaseToolbarItems_161 @ToolbarItems, @ToolbarItems, 1 -- RTAC items IF (@RtacItems=1) EXEC [dbo].[EAIP_PromoteDatabaseRtacItems_161] @RtacItems, 0, 0 -- subset dbs if @SubsetDbs =1 exec [dbo].[EAIP_PromoteDbSubsets_161] @NewDbLabel, @SubsetDbs, 1, 0 -- pickup locations IF @PickupLocations=1 EXEC [dbo].[EAIP_PromoteDbPickupLocations_161] @PickupLocations, 0, 1 -- search concept mapping data IF (@SearchConceptMapping=1) EXEC [dbo].[EAIP_PromoteDatabaseSearchConceptMapping_161] @SearchConceptMapping, 1, 1 if @DSParameters=1 Exec [dbo].[EAIP_PromoteDSParameters_161] @DSParameters, 0, 0 End try BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetParamControls_141] (@ParamName varchar(100)) AS IF EXISTS (Select 1 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName AND [dbo].[CustomParamList].[ParamLevel] = 'P') SELECT c.ParamNo,c.ParamName,c.ParamType,e.EditControl,e.ValueTemplate,e.ProcInfo FROM [dbo].[CustomParamEditDetail] e JOIN [dbo].[CustomParamList] c ON c.ParamNo=e.ParamNo WHERE c.ParamName=@ParamName ELSE Select -1 AS ParamNo
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerEhostConnectDetails_80](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10),@CurrentSite bit, @ChildSites bit, @AuthType varchar(10), @DirectURL varchar(500), @DisplayName nvarchar(2000), @UseProxy bit, @ProxyID varchar(255)) AS BEGIN IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID AND [dbo].[Customer].[CustName]=@DisplayName) SET @DisplayName=null IF @UseProxy=0 OR LEN(@ProxyID)=0 SET @ProxyID=null IF EXISTS(SELECT 1 FROM [dbo].[CustomParamEhostConnect] WHERE [dbo].[CustomParamEhostConnect].[CustID] = @CustID) BEGIN UPDATE [dbo].[CustomParamEhostConnect] SET [dbo].[CustomParamEhostConnect].[EHConnection] = @CurrentSite, [dbo].[CustomParamEhostConnect].[EHConnectionChild] = @ChildSites, [dbo].[CustomParamEhostConnect].[AuthType] = @AuthType, [dbo].[CustomParamEhostConnect].[DirectURL] = @DirectURL, [dbo].[CustomParamEhostConnect].[EhConnectionDisplayName]= @DisplayName, [dbo].[CustomParamEhostConnect].[UseProxy]=@UseProxy, [dbo].[CustomParamEhostConnect].[ProxyID]=@ProxyID WHERE [dbo].[CustomParamEhostConnect].[CustID] = @CustID --Update all children of a given parent IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID and [dbo].[Customer].[Consortium] = 1) BEGIN --Assign Child site value to each site under a consortium and exclude the current parent. UPDATE [dbo].[CustomParamEhostConnect] SET [dbo].[CustomParamEhostConnect].[EHConnection] = @ChildSites WHERE [dbo].[CustomParamEhostConnect].[CustID] IN ( select [dbo].[CustomerGroup].[ChildID] from [dbo].[CustomerGroup] where [dbo].[CustomerGroup].[ParentID] = @CustID AND [dbo].[CustomerGroup].[ParentID] <> [dbo].[CustomerGroup].[ChildID] ) END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Site/Group','Modify Customer Ehost Connection Settings',@CustID END ELSE INSERT INTO [dbo].[CustomParamEhostConnect] ([dbo].[CustomParamEhostConnect].[CustID], [dbo].[CustomParamEhostConnect].[EHConnection], [dbo].[CustomParamEhostConnect].[EHConnectionChild], [dbo].[CustomParamEhostConnect].[AuthType], [dbo].[CustomParamEhostConnect].[DirectURL], [dbo].[CustomParamEhostConnect].[EhConnectionDisplayName], [dbo].[CustomParamEhostConnect].[UseProxy], [dbo].[CustomParamEhostConnect].[ProxyID]) VALUES ( @CustID,@CurrentSite,@ChildSites,@AuthType, @DirectURL, @DisplayName,@UseProxy, @ProxyID) IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID and [dbo].[Customer].[Consortium] = 1) BEGIN --Assign Child site value to each site under a consortium and exclude the current parent. INSERT INTO [dbo].[CustomParamEhostConnect] ([dbo].[CustomParamEhostConnect].[CustID], [dbo].[CustomParamEhostConnect].[EHConnection]) SELECT [dbo].[CustomerGroup].[ChildID], @ChildSites FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID] = @CustID AND [dbo].[CustomerGroup].[ParentID] <> [dbo].[CustomerGroup].[ChildID] AND [dbo].[CustomerGroup].[ChildID] NOT IN (SELECT [dbo].[CustomParamEhostConnect].[CustID] FROM [dbo].[CustomParamEhostConnect]) END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Site/Group','Add Customer Ehost Connection Settings',@CustID END
CREATE FUNCTION [dbo].[EAIF_GetDbfamilyVolumes_70]( @DBVerNo int ) RETURNS varchar(2000) AS BEGIN DECLARE @VolumeString varchar (2000) SET @VolumeString=null SELECT @VolumeString=COALESCE(@VolumeString+'|','')+[dbo].[DbVolume].[Volume] FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@DBVerNo RETURN @VolumeString END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfileZ3950Target_70](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ItemName varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') DECLARE @VendorName varchar(100) SELECT @VendorName=[dbo].[Z3950Vendors].[VendorName] From [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=convert(int,@ItemName) DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Delete Z39.50 Target from Profile',@ProfLogName,@VendorName END
CREATE PROCEDURE [dbo].[EAIP_GetAllExternalSourceDbEmail_102] as BEGIN DECLARE @paramNo int Select @paramNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription' DECLARE @ShortDesc nvarchar(2000); declare @shorts TABLE ( dbverno int, shortDesc nvarchar(2000) NULL ) insert into @shorts(dbverno) select [dbo].[DbListExternalSource].[DbVerNo] FROM [dbo].[DbListExternalSource] DECLARE cur cursor for select dbverno from @shorts OPEN cur declare @i int fetch next from cur into @i while (@@FETCH_STATUS <> -1) begin IF (@@FETCH_STATUS <> -2) begin BEGIN TRY select @ShortDesc = ISNULL(dbo.EAIF_GetDbShortDescription_102(@i), '') ; END TRY BEGIN CATCH select @ShortDesc = ''; END CATCH update @shorts set shortDesc = @ShortDesc where dbverno = @i end fetch next from cur into @i end close cur deallocate cur SELECT l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, ISNULL(muse.ExternalDbID,'') AS ExternalSourceID_M, ISNULL(e.VendorName,'') AS Vendor, ISNULL(e.ConnectorType,'') AS ConnectorType, e.Free AS DbFree, l.SourceType, ISNULL(indexData.ExternalDbID,'') AS ExternalSourceID_I, ISNULL(e.Notes,'') as Notes, ISNULL(indexData.ProxyForResult, 1) AS ProxyForResult, ISNULL(indexData.ProxyForSearch,1) AS ProxyForSearch, ISNULL(indexData.ConnectorURL,'') AS ConnectorURL, ISNULL(indexData.KeyValuePairs,'') AS KeyValuePairs, e.ConnectorProvider , ISNULL([sh].[shortDesc],'') AS ShortDescription, ISNULL(dpsv.ParamValue,'') AS ResourceType FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN @shorts sh on sh.dbverno = e.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON (indexData.DbVerNo = e.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamScalarValues] dpsv on dpsv.DbVerNo = e.DbVerNo AND dpsv.ParamNo = 46 LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON muse.DbVerNo = e.DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetScreenListForLocalLimiters_76](@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[LibLocalLimiters]=1 ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
-- Update the catalog caption for all the catalogs on the profile. CREATE PROCEDURE [dbo].[EAUI_AddUpdateProfCatalogHoldingTblCaptionForAllCatalogsOnProfile_104] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @LangCode varchar(10), @CaptionID varchar(10), @NewCaptionDesc nvarchar (2000) ) AS BEGIN TRY BEGIN TRANSACTION SET @NewCaptionDesc = LTRIM(RTRIM(@NewCaptionDesc)) --Use a temp table, instead of cursor Declare @WRK_DbTable Table (RowID int identity (1,1) primary key, DbVerNo int) Declare @i int Declare @max int Declare @selDbVerNo int Insert into @WRK_DbTable (DbVerNo) Select pd.DbVerNo from [dbo].[ProfDatabase] pd Inner Join [dbo].[DbList] d on (d.DbVerNo = pd.DbVerNo) Where pd.ProfNo=@ProfNo and pd.Enable = 1 and d.SourceType='C' and d.DbName like 'cat%' and (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) select @i =min(RowID) from @WRK_DbTable select @max = max(RowID) from @WRK_DbTable -- If the Caption desc is same as global default, remove it from the profile table (if exists) Declare @defaultCaption nvarchar(2000) set @defaultCaption = NULL Select @defaultCaption = [dbo].[GlobalCatalogHoldingTblCaptions].[Caption] from [dbo].[GlobalCatalogHoldingTblCaptions] where [dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID]=@CaptionID and [dbo].[GlobalCatalogHoldingTblCaptions].[LangCode]=@LangCode IF (@NewCaptionDesc = @defaultCaption) BEGIN Delete pc from [dbo].[ProfCatalogHoldingTblCaptions] pc inner join @WRK_DbTable w on (w.DbVerNo = pc.DbVerNo) where pc.ProfNo=@ProfNo and LangCode=@LangCode and CaptionID=@CaptionID while @i <= @max begin select @SelDbVerNo=DbVerNo from @WRK_DbTable where RowID = @i EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table caption','Delete default caption value - update all catalogs on profile',@ProfNo,@SelDbVerNo,@LangCode,@CaptionID set @i = @i + 1 end END -- /* Add/Update the ProfCatalogHoldingTblCaptions */ -- ELSE BEGIN MERGE [dbo].[ProfCatalogHoldingTblCaptions] AS target USING (Select @ProfNo as ProfNo, w.DbVerNo as DbVerNo, @LangCode as LangCode, @CaptionID as CaptionID, @NewCaptionDesc as Caption From @WRK_DbTable w) AS source ON (target.ProfNo = source.ProfNo AND target.DbVerNo=source.DbVerNo AND target.LangCode=source.LangCode AND target.CaptionID=source.CaptionID) WHEN MATCHED THEN UPDATE SET [target].[Caption] = @NewCaptionDesc WHEN NOT MATCHED THEN INSERT ([ProfNo], [DbVerNo], [LangCode], [CaptionID], [Caption]) VALUES (source.ProfNo, source.DbVerNo, source.LangCode, source.CaptionID, source.Caption); while @i <= @max begin select @SelDbVerNo=DbVerNo from @WRK_DbTable where RowID = @i EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table captions','Add/Update catalog caption value',@ProfNo,@SelDbVerNo,@LangCode,@CaptionID set @i = @i + 1 end END COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EW32_GetProfFlags](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN -- OEMDirect only uses Field Number 17 (MaxHitsAllowed) and Field Number 18 (MaxResultSet - Max Hits before warning) -- Let us simulate these values and return in the correct position DECLARE @BasicSearch int, @DefaultSearch bit, @NaturalLanguage bit, @EOLinking bit, @EOCustID varchar(20), @EOUserID varchar(20), @EOPassword varchar(20), @HomeURL varchar(255), @SearchLevel int, @PDFAllowed bit, @LimitSource int, @ChooseDb int, @URLMask varchar(255), @VisibleText varchar(255), @LocalTitleOnly bit, @NewWindow bit, @DurableLinking bit, @MaxCitstoPrint int, @MaxHitsAllowed int, @MaxHitsBW int, @XMLAllowed bit, @SoftLinking bit, @ResultsPerPage int DECLARE @ProfNo int SELECT @ProfNo = dbo.EAIF_GetProfNo_70(@CustID,@GroupID,@ProfID) SET @SearchLevel=0 SET @BasicSearch = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'searchScreen') IF @BasicSearch=2 SET @BasicSearch=0 IF @BasicSearch=3 BEGIN SET @BasicSearch=0 SET @SearchLevel=1 END SET @DefaultSearch=0 SET @NaturalLanguage = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'relevancyRankingPermitted') ) SET @EOLinking = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlinePermitted') SET @EOCustID = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlineCustID') SET @EOUserID = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlineUserID') SET @EOPassword = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'eonlinePassword') SET @HomeURL = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'LibURL') SET @PDFAllowed = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'pdfPermitted') ) SET @LimitSource = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'limitSource') ) SET @ChooseDb = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'stopAtChooseDb') SET @URLMask = '' SET @VisibleText = '' SET @LocalTitleOnly = 0 SET @NewWindow = 0 SET @DurableLinking = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'durableLinkingPermitted')) SET @MaxCitstoPrint = CONVERT(INT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'maxNumberofCitationsToPrint')) SET @MaxHitsAllowed = CONVERT(INT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'maxNumberOfHits')) SET @MaxHitsBW = CONVERT(INT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'maxNumberOfHitsBeforeWarning')) SET @XMLAllowed = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'xmlPermitted')) SET @SoftLinking = CONVERT(BIT, dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, 'softLinkingPermitted')) SET @ResultsPerPage = 10 SELECT @BasicSearch AS BasicSearch, @DefaultSearch AS DefaultSearch, @NaturalLanguage AS NaturalLanguage, @EOLinking AS EOLinking, @EOCustID AS EOCustID, @EOUserID AS EOUserID, @EOPassword AS EOPassword, @HomeURL AS HomeURL, @SearchLevel AS SearchLevel, @PDFAllowed AS PDFAllowed, @LimitSource AS limitSource, @ChooseDb AS ChooseDb, @URLMask AS URLMask, @VisibleText AS VisibleText, @LocalTitleOnly AS LocalTitleOnly, @NewWindow AS NewWindow, @DurableLinking AS DurableLinking, @MaxCitstoPrint AS MaxCitstoPrint, @MaxHitsBW AS MaxHitsBW, @XMLAllowed AS XMLAllowed, @SoftLinking AS SoftLinking, @ResultsPerPage AS ResultsPerPage END
CREATE PROCEDURE [dbo].[EAIP_AddDbToProfiles_70](@CallerUserID nvarchar(20), @CallerUserIP varchar(15), @PrdOffNo int, @ProductID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; DECLARE @DbVerNo int DECLARE @GracePeriod int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ProductID AND [dbo].[DbList].[DbLabel]='live' IF @DbVerNo IS NULL RETURN SELECT @GracePeriod = [pr].[GracePeriod] FROM EASUPPORT.dbo.Product pr WHERE pr.ProductID=@ProductID BEGIN TRY BEGIN TRANSACTION DECLARE @ContentAutoAddParamNo int SELECT @ContentAutoAddParamNo=ISNULL([dbo].[CustomParamList].[ParamNo],-1) FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='newContentAutoAddToProfile' DECLARE @WRK_ProfSeqNo TABLE (ProfNo int, SeqNo int) CREATE TABLE #WRK_ProfDatabase (ProfNo int, CustId varchar(10), DbVerNo int, SeqNo int, Enable bit, CtrlCustID varchar(10), Limiters varchar(100), Mode char(1), EndDate datetime, AccessEndDate datetime null, SelDefault bit default 0) CREATE TABLE #WRK_ProfDatabaseUpdate ( ProfNo INT, AccessEndDate DATETIME, DbVerNo int ); /* If customer has "S" subscription to product offering standard profiles with the Interfaces that product is alllowed in main group should get new database enabled*/ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[CustId], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode],#WRK_ProfDatabase.[EndDate]) SELECT distinct [p].[ProfNo], p.CustID,@DbVerNo, 1 as 'SeqNo', --1 as 'Enable' CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=0 THEN 0 /* Profile customization exists, Auto Add turned Off*/ WHEN cv.ParamValue IS NULL AND p.InterfaceID in ('eds','wsapi') AND p.Version='live' THEN 0 /* EHPMEBSCOADMIN-2084 : Uncustomized default 'eds/wsapi' profiles should be disabled*/ ELSE 1 END AS Enable, /* Default is 1 in this scenario. It is updating the default profiles in Main group */ sub.CtrlCustID, ISNULL(pp.Limiters,''),sub.Mode,sub.EndDate FROM [dbo].[Profile] p WITH (INDEX(IX_Profile)) JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON sub.PrdOffNo=@PrdOffNo JOIN EASUPPORT.dbo.ProductInterface i WITH (INDEX(PK_ProductInterface)) ON i.ProductID=@ProductID AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.CustID=sub.CustID AND p.GroupID =sub.GroupID AND p.ProfID=iv.DefProfID AND sub.GroupID = 'main' AND sub.Mode='S' -- AND sub.PrdOffNo=@PrdOffNo --AND i.ProductID=@ProductID --AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version --AND p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND --pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID --AND p.ProfID=iv.DefProfID --AND sub.GroupID = 'main' AND sub.Mode='S' --AND p.GroupID =sub.GroupID /* If customer has "S" subscription to product offering standard profiles with the Interfaces that product is alllowed in trial group should get new database disabled*/ /* NewContentAutoAdd parameter setting will be honored for the profiles in the group associated with the subscription mode ONLY. No changes needed here as it is updating the profiles in trial group for paid subscription. Changing it would change the existing behavior. */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[CustId], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters],#WRK_ProfDatabase.[Mode],#WRK_ProfDatabase.[EndDate]) SELECT distinct [p].[ProfNo], p.CustID,@DbVerNo, 1 as 'SeqNo', 0 as 'Enable', sub.CtrlCustID, ISNULL(pp.Limiters,''),sub.Mode,sub.EndDate FROM [dbo].[Profile] p WITH (INDEX(IX_Profile)) JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON p.CustID=sub.CustID AND sub.PrdOffNo=@PrdOffNo JOIN EASUPPORT.dbo.ProductInterface i WITH (INDEX(PK_ProductInterface)) ON i.ProductID=@ProductID AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND p.ProfID=iv.DefProfID WHERE sub.GroupID = 'main' AND sub.Mode='S' AND p.GroupID ='trial' -- WHERE p.CustID=sub.CustID AND sub.PrdOffNo=@PrdOffNo -- AND i.ProductID=@ProductID -- AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version -- AND p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND -- pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID -- AND p.ProfID=iv.DefProfID AND sub.GroupID = 'main' AND sub.Mode='S' -- AND p.GroupID ='trail' /* If customer has "T" subscription to product offering standard profiles with the Interfaces that product is allowed in trial group should get new database enabled*/ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[CustId], #WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode],#WRK_ProfDatabase.[EndDate]) SELECT distinct [p].[ProfNo],p.CustID, @DbVerNo, 1 as 'SeqNo', -- 1 as 'Enable' CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=0 THEN 0 /* Profile customization exists, Auto Add turned Off*/ WHEN cv.ParamValue IS NULL AND p.InterfaceID in ('eds','wsapi') AND p.Version='live' THEN 0 /* EHPMEBSCOADMIN-2084 : Uncustomized default 'eds/wsapi' profiles should be disabled*/ ELSE 1 END AS Enable, /* Default is 1 in this scenario. It is updating the default profile in Trail group for "T" subscription */ sub.CtrlCustID, ISNULL(pp.Limiters,''),sub.Mode,sub.EndDate FROM [dbo].[Profile] p WITH (INDEX(IX_Profile)) JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON sub.PrdOffNo=@PrdOffNo JOIN EASUPPORT.dbo.ProductInterface i WITH (INDEX(PK_ProductInterface)) ON i.ProductID=@ProductID AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.CustID=sub.CustID AND p.GroupID =sub.GroupID AND p.ProfID=iv.DefProfID AND sub.GroupID = 'trial' AND sub.Mode='T' -- AND sub.PrdOffNo=@PrdOffNo --AND i.ProductID=@ProductID --AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version --AND p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND --pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID --AND p.ProfID=iv.DefProfID AND sub.GroupID = 'trial' AND sub.Mode='T' --AND p.GroupID =sub.GroupID /* If customer has "T" subscription to product offering standard profiles with the Interfaces that product is alllowed in main group should get new database disabled*/ /* NewContentAutoAdd parameter setting will be honored for the profiles in the group associated with the subscription mode ONLY. No changes needed here as it is updating the profiles in main group for trial subscription. Changing it would change the existing behavior. */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[CustId],#WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[EndDate]) SELECT distinct [p].[ProfNo],p.CustID, @DbVerNo, 1 as 'SeqNo', 0 as 'Enable', sub.CtrlCustID, ISNULL(pp.Limiters,''),sub.Mode,sub.EndDate FROM [dbo].[Profile] p WITH (INDEX(IX_Profile)) JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON p.CustID=sub.CustID AND sub.PrdOffNo=@PrdOffNo JOIN EASUPPORT.dbo.ProductInterface i WITH (INDEX(PK_ProductInterface)) ON i.ProductID=@ProductID AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND p.ProfID=iv.DefProfID WHERE sub.GroupID = 'trial' AND sub.Mode='T' AND p.GroupID ='main' -- WHERE p.CustID=sub.CustID AND sub.PrdOffNo=@PrdOffNo -- AND i.ProductID=@ProductID -- AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version -- AND p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND -- pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID -- AND p.ProfID=iv.DefProfID AND sub.GroupID = 'trial' AND sub.Mode='T' -- AND p.GroupID ='main' /* all other profiles with the Interfaces that product is alllowed should get new database disabled */ /* NewContentAutoAdd parameter setting will be honored for the non-default profiles in both groups (main & trial) and subscription types. */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[CustId],#WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[EndDate]) SELECT distinct [p].[ProfNo],p.CustID, @DbVerNo, 1 as 'SeqNo', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 THEN 1 /* Profile customization exists, Auto Add turned On*/ ELSE 0 END AS 'Enable', /* Default is 0 in this scenario. It is updating all non-default profiles*/ sub.CtrlCustID, ISNULL(pp.Limiters,''),sub.Mode,sub.EndDate FROM [dbo].[Profile] p WITH (INDEX(IX_Profile)) JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON sub.PrdOffNo=@PrdOffNo JOIN EASUPPORT.dbo.ProductInterface i WITH (INDEX(PK_ProductInterface)) ON i.ProductID=@ProductID AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.CustID=sub.CustID AND p.ProfID<>iv.DefProfID AND p.GroupID<>'pc' --AND sub.PrdOffNo=@PrdOffNo --AND i.ProductID=@ProductID --AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version --AND p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND --pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID --AND p.ProfID<>iv.DefProfID --EADM-3294/ EADM-3592 Fix: Default profiles in custom groups not getting product when products are added to product-offering. -- fix will be included in release13.2. /* All other profiles with the Interfaces that product is allowed with profid same as interface default profID in groups other than 'main'/'trail' should get new database disabled */ /* NewContentAutoAdd parameter setting will be honored for the default profiles in groups other than main & trial and subscription types. */ INSERT INTO #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[CustId],#WRK_ProfDatabase.[DbVerNo], #WRK_ProfDatabase.[SeqNo], #WRK_ProfDatabase.[Enable], #WRK_ProfDatabase.[CtrlCustID],#WRK_ProfDatabase.[Limiters], #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[EndDate]) SELECT distinct [p].[ProfNo],p.CustID, @DbVerNo, 1 as 'SeqNo', CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 THEN 1 /* Profile customization exists, Auto Add turned On*/ ELSE 0 END AS 'Enable', /* The default is 0 in this case, as the default profile exists in custom group. */ sub.CtrlCustID, ISNULL(pp.Limiters,''),sub.Mode,sub.EndDate /* It is not in system generated groups (main,trial). */ FROM [dbo].[Profile] p WITH (INDEX(IX_Profile)) JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON sub.PrdOffNo=@PrdOffNo JOIN EASUPPORT.dbo.ProductInterface i WITH (INDEX(PK_ProductInterface)) ON i.ProductID=@ProductID AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo=sub.PrdOffNo AND pp.ProductID=i.ProductID JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.CustID=sub.CustID AND p.ProfID=iv.DefProfID AND p.GroupID NOT IN ('pc', 'main','trial') --Start AccessEnddate calculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), EndDate datetime, AccessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode,EndDate) select distinct #WRK_ProfDatabase.[Mode], #WRK_ProfDatabase.[EndDate] from #WRK_ProfDatabase update @WRK_AccessEndDate set AccessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(@Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AccessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode in ('T', 'X','I') Update #WRK_ProfDatabase SET [AccessEndDate] =wa.AccessEndDate FROM #WRK_ProfDatabase AS pd INNER JOIN @WRK_AccessEndDate AS wa ON pd.Mode=wa.Mode And pd.EndDate=wa.EndDate --End AccessEnddate calculation CREATE INDEX IX_TMP_ProfDbVer ON #WRK_ProfDatabase(ProfNo, DbVerNo) DELETE #WRK_ProfDatabase OUTPUT Deleted.ProfNo, Deleted.AccessEndDate, Deleted.DbVerNo INTO #WRK_ProfDatabaseUpdate FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo INSERT INTO @WRK_ProfSeqNo SELECT a.ProfNo, MAX(b.SeqNo)+1 FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo WHERE b.SeqNo < 90 GROUP BY a.ProfNo UPDATE #WRK_ProfDatabase SET [SeqNo] = b.SeqNo FROM #WRK_ProfDatabase AS a INNER JOIN @WRK_ProfSeqNo AS b ON a.ProfNo=b.ProfNo -- Add an Identity column to the work file - needed to remove duplicates ALTER TABLE #WRK_ProfDatabase ADD Id int IDENTITY (1,1) --Start: Eliminate duplicates for identical products coming from diff. subscriptions for a customer DECLARE @WRK_ProfDatabase2 TABLE (ProfNo int,CustId varchar(10),DbVerNo int,SeqNo int,Enable bit,CtrlCustID varchar(10),Limiters varchar(100), Mode char(1),EndDate datetime,AccessEndDate datetime, SelDefault bit , Id int) insert into @WRK_ProfDatabase2 select * from #WRK_ProfDatabase delete #WRK_ProfDatabase from #WRK_ProfDatabase AS a INNER JOIN @WRK_ProfDatabase2 AS b ON a.DbVerNo = b.DbVerNo and a.CustId=b.CustId where datediff(hh, a.AccessEndDate, b.AccessEndDate) > 0 --End :Eliminate duplicates for identical products coming from diff. subscriptions /* Duplicate removal part II In case several subscriptions with overlapping products has the same EndDate - there still will be duplicates - needs to remove all but ONE */ Delete #WRK_ProfDatabase from #WRK_ProfDatabase AS p INNER JOIN ( select #WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[DbVerNo],#WRK_ProfDatabase.[CustId],#WRK_ProfDatabase.[Mode],#WRK_ProfDatabase.[AccessEndDate],Min(#WRK_ProfDatabase.[Id]) AS Id, #WRK_ProfDatabase.[SelDefault] from #WRK_ProfDatabase Group By #WRK_ProfDatabase.[ProfNo],#WRK_ProfDatabase.[DbVerNo],#WRK_ProfDatabase.[CustId],#WRK_ProfDatabase.[Mode],#WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault] Having count(*)>1 ) AS a ON p.ProfNo=a.ProfNo and p.DbVerNo=a.DbVerNo and p.CustId=a.CustId and p.Mode=a.Mode and p.AccessEndDate=a.AccessEndDate and p.Id > [a].Id Update #WRK_ProfDatabase SET [SelDefault]=1 From #WRK_ProfDatabase wp JOIN [dbo].[Profile] p with (nolock) ON wp.ProfNo=p.ProfNo Join [dbo].[InterfaceSourceTypeConfig] ic with (nolock) On p.InterfaceID=ic.InterfaceID AND p.Version=ic.Version Join [dbo].[DbList] db with (nolock) ON wp.DbVerNo=db.DbVerNo Where ic.ConfigurationName='profDatabaseSelectedRule' and ic.StringValue ='Yes' and db.SourceType=ic.SourceType --EADM-3535 fix: Can't add Product to Dynamed --SelDefault was using the incorrect rule from InterfaceSourceTypeConfig. Added a new left outer join --for InterfaceSourceTypeConfig. Update #WRK_ProfDatabase set [Enable]=Case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when ISNULL(ic.StringValue, 'Standard') = 'Standard' then [wp].[Enable] when ISNULL(ic.StringValue, 'Standard') = 'Disable' then 0 when ISNULL(ic.StringValue, 'Standard') = 'Enable' then 1 end, [SelDefault]=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc2.StringValue, 'Standard')= 'Standard' then [wp].[SelDefault] when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from #WRK_ProfDatabase wp JOIN [dbo].[Profile] p with (nolock) ON wp.ProfNo=p.ProfNo Join [dbo].[InterfaceSourceTypeConfig] ic with (nolock) On p.InterfaceID=ic.InterfaceID AND p.Version=ic.Version Join [dbo].[DbList] db with (nolock) ON wp.DbVerNo=db.DbVerNo and ic.SourceType=db.SourceType Join [dbo].[InterfaceVersion] iv with (nolock) ON p.InterfaceID=iv.InterfaceID and p.Version=iv.Version left outer join [dbo].[InterfacePrimaryDatabases] ip on (p.InterfaceID=ip.InterfaceID and p.Version=ip.Version and db.DbVerNo=ip.DbVerNo) left outer join [dbo].[InterfaceSourceTypeConfig] istc2 with (nolock) on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and db.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule' where ic.ConfigurationName='profDatabaseAddRule' --EHPMEBSCOADMIN-1344: When a product is added to product offering, the non-searchable database (product) should be "enabled" by default on the impacted profiles -- This update would override ALL other existing business rules around "enabling" the databases (including NewContent Auto-add feature) on the profile. Update #WRK_ProfDatabase set [Enable]=1 from #WRK_ProfDatabase wp JOIN [dbo].[DbList] d with (nolock) ON wp.DbVerNo=d.DbVerNo AND d.NonSearchableDb=1 -- EhpmEbscoAdmin-1447 -- EAIF_GetHiddenProfDbList_133 returns all Databases that have been configured to not show on the Profile Database List -- For each of these Databases we need to configure them to be enabled and Selected by default for all Profiles UPDATE #WRK_ProfDatabase set [Enable]=1, [SelDefault]=1 from #WRK_ProfDatabase wpdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON wpdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS not null /* Log the ProfNo & DbVerNo inserted in ProfDatabase. */ INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Add Database to Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, NULL, NULL, NULL FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[Profile] AS prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON a.DbVerNo=dbl.DbVerNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID -- consider Enddate greater than current date only INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter],[dbo].[ProfDatabase].[CtrlCustID], [dbo].[ProfDatabase].[Mode],[dbo].[ProfDatabase].[AccessEndDate]) SELECT #WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo], max(#WRK_ProfDatabase.[SeqNo]), min(convert(int,#WRK_ProfDatabase.[Enable])), #WRK_ProfDatabase.[SelDefault], 0, null, max(#WRK_ProfDatabase.[Mode]),#WRK_ProfDatabase.[AccessEndDate] FROM #WRK_ProfDatabase Where #WRK_ProfDatabase.[AccessEndDate] is null or datediff (hh,#WRK_ProfDatabase.[AccessEndDate],getdate()) < 0 GROUP BY #WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo],#WRK_ProfDatabase.[AccessEndDate], #WRK_ProfDatabase.[SelDefault] Update [dbo].[ProfDatabase] SET [CtrlCustID] = dbo.EAIF_AppendCtrlCustID_70(b.CtrlCustID,a.CtrlCustID) FROM #WRK_ProfDatabase AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo UPDATE pd SET pd.AccessEndDate = w.AccessEndDate FROM dbo.ProfDatabase pd INNER JOIN #WRK_ProfDatabaseUpdate w ON pd.ProfNo = w.ProfNo AND pd.DbVerNo = w.DbVerNo WHERE pd.AccessEndDate < w.AccessEndDate; --add hidden limiters defined for the Product Offering to the ProfDLimiters2 DECLARE @WRK_ProfDbLimiter2 TABLE (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int, SeqNo int) DECLARE @ProfNo int DECLARE @LimiterList varchar(100) DECLARE @IntfScreenNo int DECLARE C1_C CURSOR FOR SELECT wt.ProfNo, wt.DbVerNo, wt.Limiters, ins.IntfScreenNo FROM #WRK_ProfDatabase AS wt INNER JOIN [dbo].[Profile] AS p ON p.ProfNo=wt.ProfNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID = ins.InterfaceID AND p.Version=ins.Version WHERE wt.Limiters <> '' GROUP BY wt.ProfNo, wt.DbVerNo,wt.Limiters, ins.IntfScreenNo OPEN C1_C FETCH NEXT FROM C1_C INTO @ProfNo,@DbVerNo,@LimiterList,@IntfScreenNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @WRK_ProfDbLimiter2(ProfNo,DbVerNo,IntfScreenNo,LimiterNo,SeqNo) SELECT @ProfNo,@DbVerNo,@IntfScreenNo, ll.LimiterNo,-1 FROM dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a INNER JOIN [dbo].[LimiterList] AS ll ON a.Item = ll.LimiterId WHERE ll.DbLabel='live' IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C ROLLBACK TRANSACTION RETURN END END FETCH NEXT FROM C1_C INTO @ProfNo,@DbVerNO,@LimiterList,@IntfScreenNo END CLOSE C1_C DEALLOCATE C1_C UPDATE @WRK_ProfDbLimiter2 SET [SeqNo] = dbl.SeqNo FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[DbLimiter] AS dbl ON a.DbVerNo=dbl.DbVerNo AND dbl.LimiterNo=a.LimiterNo INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue],[dbo].[ProfDbLimiter2].[SeqNo]) SELECT ProfNo,DbVerNo,IntfScreenNo,LimiterNo,0,'On',SeqNo FROM @WRK_ProfDbLimiter2 INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Add ProductOffering Limiters for a Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, ins.Description,ll.LimiterId, '' FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[Profile] AS prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON prf.InterfaceID = ins.InterfaceID AND prf.Version=ins.Version INNER JOIN [dbo].[LimiterList] AS ll ON ll.LimiterNo = a.LimiterNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID COMMIT TRANSACTION END TRY BEGIN CATCH -- Get the error info before any statements are executed SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- If there is an active transaction, roll it back IF (XACT_STATE()) <> 0 BEGIN ROLLBACK TRANSACTION; END; -- Raise the error to the caller RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE procedure [dbo].[EAUI_GetLimiterListForActivityList_70] (@DbLabel varchar(10)) as BEGIN IF (@DbLabel = 'live' OR @DbLabel='liveQC' OR @DbLabel='rebuild' OR @DbLabel='rebuildQC' ) SELECT ll.LimiterId, ll.LimiterId + ':' + ll.Description + '(' + lc.ControlName + ')' AS DisplayName FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) AND ll.DbLabel = @DbLabel ELSE SELECT ll.LimiterId, ll.LimiterId + ':' + ll.Description + '(' + lc.ControlName + ')' AS DisplayName FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) AND ll.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC' ) END
CREATE PROCEDURE [dbo].[EATL_UpdateDbScalarParam_82](@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ParamName varchar(100), @ParamValue nvarchar(max))AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel =[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION UPDATE [dbo].[DbParamScalarValues] SET [dbo].[DbParamScalarValues].[ParamValue]=@ParamValue WHERE [dbo].[DbParamScalarValues].[ParamNo]=dbo.EAIF_GetDbParamNumber_70(@ParamName) AND [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, 'Updated(translated) database parameter', @DbName, @DbLabel, @ParamName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDbGroups_80] (@DbShortName varchar(10), @Label varchar(10))AS BEGIN SELECT gl.GroupID, dbo.EAIF_GetGroupCaptions_80(gl.GroupNo) as Captions, dbo.EAIF_GetGroupMouseOverTexts_80(gl.GroupNo) as MouseOverTexts FROM [dbo].[DbGroup] dg INNER JOIN [dbo].[GroupList] gl ON dg.GroupNo = gl.GroupNo INNER JOIN [dbo].[DbList] dl ON dg.DbVerNo = dl.DbVerNo WHERE dl.DbName=@DbShortName AND dl.DbLabel = @Label END
--sql content merged from file: \StoredProcedures\EAUI_GetGeoGroupList.sql CREATE PROCEDURE [dbo].[EAUI_GetGeoGroupList] ( @p_CustID varchar(10) ) as begin select UG.GroupID, UG.GroupName + '(' + UG.GroupID + ')' as GroupName from dbo.UserGroup UG where UG.CustID = @p_CustID group by UG.GroupID, UG.GroupName end
-- UPDATE the Enable, ILSIntegration, Config and Translation data for the given database CREATE PROCEDURE [dbo].[EAIP_UpdateDbRTACInfo_141] (@DbVerNo int, @ILSIntegration NVARCHAR(255), @Enable bit, @Config nvarchar(max), @Translation nvarchar(max)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- temp variables for checking for NULL values or empty strings DECLARE @tempConfig NVARCHAR(MAX) DECLARE @tempTranslation NVARCHAR(MAX) SET @tempConfig = @Config SET @tempTranslation = @Translation -- if the strings are empty, set them to NULL (to make the checks below easier) SET @tempConfig = NULLIF(@tempConfig, '') SET @tempTranslation = NULLIF(@tempTranslation, '') -- if the string was empty and set to null, set the param to null too IF @tempConfig IS NULL BEGIN SET @Config = NULL -- if there is no config, enable can't be true SET @Enable = 0 END IF @tempTranslation IS NULL BEGIN SET @Translation = NULL END -- check if the record is already there IF EXISTS (SELECT 1 FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo) BEGIN UPDATE [dbo].[DbRTACInfo] SET [dbo].[DbRTACInfo].[Enable] = @Enable, [dbo].[DbRTACInfo].[Config] = @Config, [dbo].[DbRTACInfo].[Translation] = @Translation, [dbo].[DbRTACInfo].[ILSIntegration]=@ILSIntegration WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo END ELSE -- it's a new record, so insert it BEGIN INSERT INTO [dbo].[DbRTACInfo] ([dbo].[DbRTACInfo].[DbVerNo] ,[dbo].[DbRTACInfo].[Enable] ,[dbo].[DbRTACInfo].[Config] ,[dbo].[DbRTACInfo].[Translation] ,[dbo].[DbRTACInfo].[ILSIntegration]) VALUES (@DbVerNo, @Enable, @Config, @Translation, @ILSIntegration) END END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileLocalAuth_70] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @SelectedCollList varchar(8000)) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @DbName varchar(10) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles', 'Update Locals Collections used as Authorities',@ProfLogName DELETE FROM [dbo].[ProfLocalAuthority] WHERE [dbo].[ProfLocalAuthority].[ProfNo] =@ProfNo INSERT INTO [dbo].[ProfLocalAuthority] ([dbo].[ProfLocalAuthority].[ProfNo], [dbo].[ProfLocalAuthority].[ColNo]) SELECT @ProfNo, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@SelectedCollList, '+') COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbSearchOption(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS SearchOptionNo, [dbo].[DbSearchOption].[OptionType], [dbo].[DbSearchOption].[SearchString], [dbo].[DbSearchOption].[TargetDb], [dbo].[DbSearchOption].[SourceType], [dbo].[DbSearchOption].[TabImage], [dbo].[DbSearchOption].[AuthoritySubset], [dbo].[DbSearchOption].[AuthorityView], [dbo].[SearchOptionList].[SearchOptionId] AS SearchOptionId , dbo.EACOPY_AUTO_GetXmlDbSearchOption_DbInterfaceSearchOption([dbo].[DbSearchOption].[DbVerNo], [dbo].[DbSearchOption].[SearchOptionNo]) DbInterfaceSearchOption , dbo.EACOPY_AUTO_GetXmlDbSearchOption_DbSearchOptionCaption([dbo].[DbSearchOption].[DbVerNo], [dbo].[DbSearchOption].[SearchOptionNo]) DbSearchOptionCaption FROM [dbo].[DbSearchOption] LEFT JOIN [dbo].[SearchOptionList] ON [dbo].[SearchOptionList].[SearchOptionNo] = [dbo].[DbSearchOption].[SearchOptionNo] WHERE [dbo].[DbSearchOption].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, SearchOptionNo, [dbo].[DbSearchOption].[OptionType], [dbo].[DbSearchOption].[SearchString], [dbo].[DbSearchOption].[TargetDb], [dbo].[DbSearchOption].[SourceType], [dbo].[DbSearchOption].[TabImage], [dbo].[DbSearchOption].[AuthoritySubset], [dbo].[DbSearchOption].[AuthorityView] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseCategoryList_79] AS BEGIN SELECT [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description] FROM [dbo].[StringValueMap] WHERE [dbo].[StringValueMap].[FieldName] = 'DbCategory' END
CREATE PROCEDURE [dbo].[EAIP_RemoveInterfaceParameter_161]( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo INT SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName) OR NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceParamList] Where [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceParamList].[Version]=@Version AND [dbo].[InterfaceParamList].[ParamNo]=@ParamNo) BEGIN RAISERROR('The parameter %s cannot be deleted as it is either invalid or not mapped to this interface and its version', 16,-1, @ParamName) RETURN END EXEC [dbo].[EAUI_RemoveInterfaceParameter_70] @UserID, @UserIP, @InterfaceID, @Version, @ParamNo END
Create Procedure [dbo].[EAIP_GetParentSitesByChildID_100] (@CustID varchar(10)) as select c.CustNo, c.CustID, c.CustName, c.CustType, c.MarketID, c.Status, c.Consortium from [dbo].[Customer] c join [dbo].[CustomerGroup] cg on c.CustID=cg.ParentID where cg.ChildID=@CustID
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerEmailListAddress_153]( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @ListName varchar(100), @EmailAddress nvarchar(600), @EmailHash VARBINARY(600), @NewEmailAddress NVARCHAR(600), @NewEmailHash VARBINARY(600)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Email List', @CustID, @ListName EXEC dbo.EAIP_UpdateCustomerEmailListAddress_153 @CustID = @CustID, -- varchar(10) @ListName = @ListName, -- varchar(100) @EmailAddress = @EmailAddress, -- nvarchar(255) @EmailHash = @EmailHash, -- varbinary(600) @NewEmailAddress = @NewEmailAddress, -- nvarchar(255) @NewEmailHash = @NewEmailHash -- varbinary(600) END
CREATE FUNCTION [dbo].[EAIF_GetDbFieldElements_70](@DbVerNo int, @FieldGroupNo int, @FieldSep varchar(10)) RETURNS varchar(8000) AS BEGIN DECLARE @ElementList varchar(8000) --SET @ElementList=null SELECT @ElementList = COALESCE(@ElementList+@FieldSep,'') + fle.FieldElementName FROM [dbo].[DbFieldElement] dbe INNER JOIN [dbo].[FieldElementList] fle ON dbe.FieldElementNo=fle.FieldElementNo AND dbe.DbVerNo=@DbVerNo AND dbe.FieldGroupNo=@FieldGroupNo ORDER BY fle.FieldElementName RETURN @ElementList END
CREATE PROCEDURE [dbo].[EAUI_DeleteProfOtherServiceLink_86](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LinkNo int) AS BEGIN DELETE FROM [dbo].[ProfOtherServiceLinks] WHERE [dbo].[ProfOtherServiceLinks].[ProfNo]=@ProfNo AND [dbo].[ProfOtherServiceLinks].[LinkNo]=@LinkNo DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Delete Profile Other Service Link', @ProfLogName, @LinkNo, '','','' END
CREATE PROCEDURE [dbo].[EAIP_GetApplicationParamValue_102](@ApplicationID varchar(20), @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo SMALLINT; DECLARE @ParamType CHAR(1); DECLARE @ApplicationNo INT; SELECT @ApplicationNo = a.ApplicationNo, @ParamNo = p.ParamNo, @ParamType = p.ParamType FROM [dbo].[ConfigParamList] p INNER JOIN [dbo].[ConfigApplication] a ON a.ApplicationNo = p.ApplicationNo WHERE a.ApplicationID = @ApplicationID AND p.ParamName = @ParamName IF (@ParamType <> 'X') SELECT [dbo].[ConfigParamScalarValues].[ParamValue] FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[ParamLevel]='A' AND [dbo].[ConfigParamScalarValues].[TargetNo] = @ApplicationNo AND [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo ELSE SELECT [dbo].[ConfigParamXmlValues].[ParamValue] FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamLevel]='A' AND [dbo].[ConfigParamXmlValues].[TargetNo] = @ApplicationNo AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAUI_GetScreenListForSearchOptions_76](@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[LibSearchOption]=1 ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
-- Update the catalog caption on all the profiles of the customer. CREATE PROCEDURE [dbo].[EAUI_AddUpdateProfCatalogHoldingTblCaptionForAllProfilesOfCustomer_104] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @DbVerNo int, @LangCode varchar(10), @CaptionID varchar(10), @NewCaptionDesc nvarchar (2000) ) AS BEGIN TRY BEGIN TRANSACTION SET @NewCaptionDesc = LTRIM(RTRIM(@NewCaptionDesc)) --Use a temp table, instead of cursor Declare @ParamNo int Declare @CustID varchar(10) Select @CustID = [dbo].[Profile].[CustID] from [dbo].[Profile] where [dbo].[Profile].[ProfNo] = @ProfNo Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='catalogHoldingTblHeadings' Declare @WRK_DbTable Table (RowID int identity (1,1) primary key, ProfNo int) Declare @i int Declare @max int Declare @selProfNo int Insert into @WRK_DbTable (ProfNo) Select pd.ProfNo from [dbo].[ProfDatabase] pd WITH (NOLOCK) inner Join [dbo].[DbList] d WITH (NOLOCK) on (d.DbVerNo = pd.DbVerNo) inner Join [dbo].[Profile] p WITH (NOLOCK) on (p.ProfNo = pd.ProfNo) Where d.DbVerNo=@DbVerNo and p.InterfaceID in (Select [dbo].[InterfaceParamList].[InterfaceID] from [dbo].[InterfaceParamList] WITH (NOLOCK) where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo) and p.CustID =@CustID and pd.Enable = 1 and (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) select @i =min(RowID) from @WRK_DbTable select @max = max(RowID) from @WRK_DbTable -- If the Caption desc is same as global default, remove it from the profile table (if exists) Declare @defaultCaption nvarchar(2000) set @defaultCaption = NULL Select @defaultCaption = [dbo].[GlobalCatalogHoldingTblCaptions].[Caption] from [dbo].[GlobalCatalogHoldingTblCaptions] where [dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID]=@CaptionID and [dbo].[GlobalCatalogHoldingTblCaptions].[LangCode]=@LangCode IF (@NewCaptionDesc = @defaultCaption) BEGIN Delete pc from [dbo].[ProfCatalogHoldingTblCaptions] pc inner join @WRK_DbTable w on (w.ProfNo = pc.ProfNo) where pc.DbVerNo=@DbVerNo and LangCode=@LangCode and CaptionID=@CaptionID while @i <= @max begin select @selProfNo=ProfNo from @WRK_DbTable where RowID = @i EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table caption','Delete default caption value - update all profiles of customer', @selProfNo,@DbVerNo,@LangCode,@CaptionID set @i = @i + 1 end END -- /* Add/Update the ProfCatalogHoldingTblCaptions */ -- ELSE BEGIN MERGE [dbo].[ProfCatalogHoldingTblCaptions] AS target USING (Select w.ProfNo as ProfNo, @DbVerNo as DbVerNo, @LangCode as LangCode, @CaptionID as CaptionID, @NewCaptionDesc as Caption From @WRK_DbTable w) AS source ON (target.ProfNo = source.ProfNo AND target.DbVerNo=source.DbVerNo AND target.LangCode=source.LangCode AND target.CaptionID=source.CaptionID) WHEN MATCHED THEN UPDATE SET [target].[Caption] = @NewCaptionDesc WHEN NOT MATCHED THEN INSERT ([ProfNo], [DbVerNo], [LangCode], [CaptionID], [Caption]) VALUES (source.ProfNo, source.DbVerNo, source.LangCode, source.CaptionID, source.Caption); while @i <= @max begin select @selProfNo=ProfNo from @WRK_DbTable where RowID = @i EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table captions','Add/Update catalog caption value on customer profiles',@selProfNo,@DbVerNo,@LangCode,@CaptionID set @i = @i + 1 end END COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EW33_GetAnyProfile]( @CustID varchar(10), @GroupID varchar(10), @ShortDb varchar(10)) AS BEGIN DECLARE @ProfNo int DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDb AND [dbo].[DbList].[DbLabel]='live' SELECT @ProfNo=a.ProfNo FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.InterfaceID='ehost' AND b.Enable=1 AND b.DbVerNo=@DbVerNo ORDER BY a.SeqNo IF @ProfNo is NULL SELECT @ProfNo=a.ProfNo FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.InterfaceID NOT IN ( 'unix', 'win','z3950') AND b.Enable=1 AND b.DbVerNo=@DbVerNo SELECT [dbo].[Profile].[ProfID], [dbo].[Profile].[ProfPwd] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo END
CREATE PROCEDURE dbo.EAIP_AddDerivedLinkUpdateRequests_171 ( @ParentLinkID VARCHAR(255), @SystemLinkUpdateStatusID INT ) AS BEGIN -- Operation to add all the derived custom links into a table used as a queue -- The derived links are parameters for customerCustomLink that are "like" the system link (@ParentLinkID) -- @ParentLinkID - Parent/System ID -- @SystemLinkUpdateStatusID is a reference to the system link update status in SystemLinkUpdateStatus IF NOT EXISTS(SELECT 1 FROM dbo.SystemLinkUpdateStatus WHERE [dbo].[SystemLinkUpdateStatus].[SystemLinkUpdateStatusID] = @SystemLinkUpdateStatusID) BEGIN RAISERROR(N'@SystemLinkUpdateStatusID %d does not exist in table SystemLinkUpdateStatus.', 16, -1,@SystemLinkUpdateStatusID); RETURN; END; INSERT INTO dbo.DerivedLinkUpdateStatus ( [tgt].[SystemLinkUpdateStatusID], [tgt].[DerivedLinkID], [tgt].[CustID], [tgt].[RequestTime], [tgt].[UpdateStatus]) SELECT @SystemLinkUpdateStatusID AS SystemLinkUpdateStatusID, v.ItemName AS DerivedLinkID, c.CustID, GETDATE() AS RequestTime, 'S' AS UpdateStatus FROM dbo.CustomParamXmlValues v INNER JOIN dbo.CustomParamList l ON v.ParamNo = l.ParamNo INNER JOIN dbo.Customer c ON v.TargetNo = c.CustNo LEFT JOIN dbo.DerivedLinkUpdateStatus tgt -- prevent duplicates ON v.ItemName = tgt.DerivedLinkID AND tgt.SystemLinkUpdateStatusID = @SystemLinkUpdateStatusID WHERE l.ParamName='customerCustomLink' AND l.ParamLevel='C' AND tgt.DerivedLinkUpdateStatusID IS NULL AND v.ItemName LIKE @ParentLinkID+':%'; END;
CREATE PROCEDURE [dbo].[EAUI_GetLimiterNo_132](@LimiterID varchar(20), @DbLabel varchar(10)) AS BEGIN SELECT ISNULL( dbo.EAIF_GetLimiterNo_70 (@LimiterID, @DbLabel), -1) END
CREATE PROCEDURE EATL_UpdateDbScalarParam_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo INT ,ParamName VARCHAR(100) ,ParamValue NVARCHAR(max) ) INSERT INTO #Objects ( DbVerNo ,ParamName ,ParamValue ) SELECT m.c.value('(./DbVerNo)[1]', 'int') ,m.c.value('(./ParamName)[1]', 'varchar(100)') ,m.c.value('(./ParamValue)[1]', 'nvarchar(max)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo INT ,@ParamName VARCHAR(100) ,@ParamValue NVARCHAR(max) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@ParamName = ParamName ,@ParamValue = ParamValue FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateDbScalarParam_82] @UserID ,@UserIP ,@DbVerNo ,@ParamName ,@ParamValue SET @i = @i + 1 END DROP TABLE #Objects END
Create PROCEDURE [dbo].[EPCS_GetDbInfo_102] ( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN DECLARE @XsltLoc varchar(255) SET @XsltLoc=null -- EpfFile would hold the Db xsltLocation -- The value would be same for all segments/volume for a given Db SELECT Top 1 @XsltLoc=[i].[EpfFile] FROM [dbo].[DbSegFileInfo] i INNER JOIN [dbo].[DbVolume] v ON i.DbVerNo=v.DbVerNo AND i.Volume = v.Volume INNER JOIN [dbo].[DbList] d ON i.DbVerNo=d.DbVerNo Where d.DbName=@ShortDBName and d.DbLabel=@Label If (@XsltLoc is null or CharIndex ('.xslt',@XsltLoc) <= 0) BEGIN SET @XsltLoc=null END SELECT [d].[DbName], [d].[DbLabel], [d].[DisplayName], [d].[EnforceSimUsage], t.DbType as DbTypeNo, t.Description as DbType, c.Description as ConType, c.ImageFileName as ConImageFileName, c.ContentType, [d].[InterfaceID], dbo.EAIF_GetContentLinkTexts_82(c.ContentType) AS LinkTexts, d.EDABuild, ISNULL( [st].[TargetType], '') TargetType, [d].[SourceType], ISNULL (dblesm.ExternalDbID,'') as ExternalDbID, ISNULL (dblesi.ExternalDbID,'') as ExternalDbID_I, CASE WHEN d.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') ELSE ISNULL(dex.VendorName,'') END As VendorName, ISNULL (dex.ConnectorType,'') as ConnectorType, ISNULL (psv.ParamValue,'') as ResourceType, @XsltLoc as XsltLocation FROM [dbo].[DbList] d INNER JOIN [dbo].[DbTypeList] t ON t.DbType = d.DbType INNER JOIN [dbo].[DbContentList] c ON c.ContentType = d.ContentType LEFT OUTER JOIN [dbo].[DbSourceTarget] st ON st.TargetDbNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSource] dex ON dex.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] dblesm ON dblesm.DbVerNo = dex.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] dblesi ON dblesi.DbVerNo = dex.DbVerNo LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON (psv.DbVerNo = d.DbVerNo AND psv.ParamNo=dbo.EAIF_GetDbParamNumber_70('ResourceType')) WHERE [d].[DbName] = @ShortDBName AND [d].[DbLabel] = @Label END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalClusterDetail_102] (@ID varchar(20), @LangCode varchar(10))AS BEGIN SELECT gc.ID, gc.XPath, gc.XPathEnh, gc.Notes, gc.Tag, cp.Caption, gc.MinDisplay, gc.MaxDisplay, gc.Show, gc.MaxPercentageResults, gc.CaseConversion, gc.AutoAdd2Interfaces FROM [dbo].[GlobalCluster] gc LEFT OUTER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID=cp.ID AND cp.LangCode=@LangCode WHERE gc.ID=@ID END
CREATE PROCEDURE [dbo].[EAIP_UpdateDerivedLinkRequestStatus_171](@derivedLinkUpdateStatusId int, @Status char(1), @ErrorMessage nvarchar(255)) AS BEGIN SET @Status=UPPER(@Status) UPDATE [dbo].[DerivedLinkUpdateStatus] SET [dbo].[DerivedLinkUpdateStatus].[UpdateStatus]=@Status, [dbo].[DerivedLinkUpdateStatus].[ErrorMessage]=@ErrorMessage, [dbo].[DerivedLinkUpdateStatus].[ProcessedTime] = (CASE WHEN @Status='C' THEN getdate() WHEN @Status='F' THEN getdate() WHEN @Status='I' THEN getdate() ELSE null END) WHERE [dbo].[DerivedLinkUpdateStatus].[DerivedLinkUpdateStatusID]=@derivedLinkUpdateStatusId END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileLocalLimiter_76] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ScreenNo int, @ColNo int, @ColName nvarchar(255), --^^^ MBCS: ProfLocalLimiterCaption2 - Caption is defined as 255 length; while Collection has a size of 100 @IsHidden int, @SeqNo int, @DefValue varchar(255), @Show int, @LangCode varchar(10) ) AS BEGIN IF EXISTS (SELECT 1 from dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 1) RETURN DECLARE @ProfLogName varchar(40), @ColID nvarchar(50) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @ColID = [dbo].[Collection].[ColID] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo] = @ColNo BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[ProfLocalLimiter2] WHERE [dbo].[ProfLocalLimiter2].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiter2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfLocalLimiter2].[ColNo] = @ColNo ) UPDATE [dbo].[ProfLocalLimiter2] SET [dbo].[ProfLocalLimiter2].[Show]=@Show,[dbo].[ProfLocalLimiter2].[DefValue]=@DefValue,[dbo].[ProfLocalLimiter2].[SeqNo]=@SeqNo WHERE [dbo].[ProfLocalLimiter2].[ProfNo] =@ProfNo AND [dbo].[ProfLocalLimiter2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfLocalLimiter2].[ColNo] = @ColNo ELSE INSERT INTO [dbo].[ProfLocalLimiter2] ([dbo].[ProfLocalLimiter2].[ProfNo],[dbo].[ProfLocalLimiter2].[IntfScreenNo], [dbo].[ProfLocalLimiter2].[ColNo],[dbo].[ProfLocalLimiter2].[IsHidden], [dbo].[ProfLocalLimiter2].[Show],[dbo].[ProfLocalLimiter2].[DefValue],[dbo].[ProfLocalLimiter2].[SeqNo]) VALUES (@ProfNo, @ScreenNo, @ColNo, @IsHidden, @Show, @DefValue,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END ------------- --Caption ------------- DECLARE @defCaption nvarchar(100) SELECT @defCaption = [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[CustID] = @UserID IF @defCaption=@ColName DELETE FROM [dbo].[ProfLocalLimiterCaption2] WHERE [dbo].[ProfLocalLimiterCaption2].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfLocalLimiterCaption2].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption2].[LangCode] = @LangCode ELSE IF EXISTS (SELECT 1 FROM [dbo].[ProfLocalLimiterCaption2] WHERE [dbo].[ProfLocalLimiterCaption2].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfLocalLimiterCaption2].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption2].[LangCode] = @LangCode) UPDATE [dbo].[ProfLocalLimiterCaption2] SET [dbo].[ProfLocalLimiterCaption2].[Caption] = @ColName WHERE [dbo].[ProfLocalLimiterCaption2].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfLocalLimiterCaption2].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption2].[LangCode] = @LangCode ELSE INSERT INTO [dbo].[ProfLocalLimiterCaption2] VALUES (@ProfNo,@ScreenNo,@ColNo,@LangCode,@ColName) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- Added by Aboo on 8/18/03 EXEC [dbo].[EAIP_UpdateCollectionAutoRecreateFlag_70] @ColNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify Local Limiters for a Profile', @ProfLogName, @ColID, @DefValue, @Show, @ColName COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbSegment(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbSegment].[SegName], [dbo].[DbSegment].[SegDescription], [dbo].[DbSegment].[SeqNo], [dbo].[DbSegment].[ProductionDate] , dbo.EACOPY_AUTO_GetXmlDbSegment_DbBibMap([dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName]) DbBibMap , dbo.EACOPY_AUTO_GetXmlDbSegment_DbFieldTag([dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName]) DbFieldTag , dbo.EACOPY_AUTO_GetXmlDbSegment_DbSegFileInfo([dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName]) DbSegFileInfo , dbo.EACOPY_AUTO_GetXmlDbSegment_DbThesaurus([dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName]) DbThesaurus FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbSegment].[SegName], [dbo].[DbSegment].[SegDescription], [dbo].[DbSegment].[SeqNo], [dbo].[DbSegment].[ProductionDate] FOR XML RAW('r') ) END
CREATE procedure [dbo].[EAUI_GetDatabaseContentTypeList_70] as BEGIN SELECT [dbo].[DbContentList].[ContentType], [dbo].[DbContentList].[Description] FROM [dbo].[DbContentList] Order by [dbo].[DbContentList].[ContentType] END
CREATE PROCEDURE dbo.EAIP_RemoveInterfaceToolbarItemDatabase_161 ( @UserID nvarchar(20), @UserIP varchar(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @IntfToolbarItemName VARCHAR(50), @DbVerNo int) AS BEGIN DECLARE @IntfToolbarItem INT DECLARE @ConvertDbVerNo VARCHAR(10) IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @IntfToolbarItemName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version) BEGIN RAISERROR('The ToolbarItem:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @IntfToolbarItemName, @InterfaceID, @Version) RETURN END SELECT @IntfToolbarItem=[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @IntfToolbarItemName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbarDb] WHERE [dbo].[InterfaceToolbarDb].[IntfToolbarItem]=@IntfToolbarItem AND [dbo].[InterfaceToolbarDb].[DbVerNo]=@DbVerNo) BEGIN SET @ConvertDbVerNo=CAST(@DbVerNo AS VARCHAR(10)) RAISERROR('The DbVersionNo %s cannot be deleted as it is either invalid or not attached to this interface, version and toolbar item.', 16,-1, @ConvertDbVerNo, @InterfaceID, @Version) RETURN END EXEC [dbo].[EAUI_RemoveInterfaceToolbarItemDatabase_77] @UserID, @UserIP, @IntfToolbarItem, @DbVerNo END
CREATE Procedure [dbo].[EAIP_GetPersistentLinkProfile_142] (@CustID varchar(10), @ShortDbsList varchar(8000)) as begin Declare @ProfDetailsTable table (ProfNo int,SeqNo int, Priority smallint, GroupPriority smallint, Version varchar(10)) Declare @ProfNoTable table (ProfNo int) Declare @DbNameTable Table (DbName varchar(10)) DECLARE @Version varchar(10),@ClientType varchar (10) SET @Version = 'live' SET @ClientType = 'web' Declare @PersLinkParamNo int select @PersLinkParamNo = dbo.EAIF_GetCustomParamNumber_70 ('persistentLinkProfile', 'P') /* Get all profiles for given CustID/GroupID that are configured for PLinks - and are associated with an Interface of the matching ClientType and Version or the ProfID matches the requested ProfID and that Profile is associated with an Interface of the correct ClientType. Note: this is the most inclusive result set.*/ INSERT @ProfDetailsTable(ProfNo, SeqNo,Priority,GroupPriority,Version) SELECT distinct p.ProfNo,p.SeqNo, CASE WHEN iv.IsMobile=1 AND p.Version=@Version THEN 2 WHEN iv.IsMobile=1 THEN 3 WHEN iv.IsMobile<>1 and p.Version=@Version THEN 4 WHEN iv.IsMobile<>1 THEN 5 END priority, CASE WHEN p.GroupID= 'main' Then 1 WHEN p.GroupID= 'remote' Then 2 WHEN p.GroupID= 'trial' Then 9999 Else 3 End as GroupPriority, IV.Version FROM [dbo].[Profile] p INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@PersLinkParamNo AND p.InterfaceID = cpd.InterfaceID AND p.Version = cpd.Version AND p.MarketID = cpd.MarketID AND p.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = p.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @PersLinkParamNo INNER Join [dbo].[Interface] i on p.InterfaceID=i.InterfaceID INNER join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID WHERE p.CustID = @CustID AND ISNULL(cpsv.ParamValue,cpd.DefValue) = '1' AND i.ClientType = @clientType --AND iv.Version = @Version /* @Version filter is removed from previous query because it's a low-cardinality column, but execution plan starts from it sporadically */ DELETE FROM @ProfDetailsTable WHERE Version <> @Version; /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo from @ProfDetailsTable return End /* Filter result set based on given DbList - do not remove Profile where the ProfID matches the requested ProfID even if that Profile does not have access to given DbList. */ if @ShortDbsList<>'' Begin Insert @DbNameTable(DbName) select * from dbo.EAIF_GetItemTable_70(@ShortDbsList, ',') Delete @ProfNoTable if dbo.EAIF_IsAnyAuthorityDatabase_86(@ShortDbsList, 'live')=1 Begin insert @ProfNoTable(ProfNo) Select t.ProfNo from @ProfDetailsTable t INNER JOIN [dbo].[ProfDatabase] pdb on t.ProfNo = pdb.ProfNo INNER JOIN [dbo].[DbAuthority] dba ON pdb.DbVerNo=dba.MainDbVerNo INNER JOIN [dbo].[DbList] dbl ON dbl.DbVerNo=dba.AuthDbVerNo INNER JOIN @DbNameTable dblt ON dbl.DbName=dblt.DbName where pdb.Enable = 1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) End else Begin insert @ProfNoTable(ProfNo) Select t.ProfNo from @ProfDetailsTable t INNER JOIN [dbo].[ProfDatabase] pdb on t.ProfNo = pdb.ProfNo INNER JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo INNER JOIN @DbNameTable dblt ON dbl.DbName=dblt.DbName where pdb.Enable = 1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) End Delete @ProfDetailsTable FROM @ProfDetailsTable p where not exists (Select [n].[ProfNo] from @ProfNoTable n where n.ProfNo = p.ProfNo) end --return the profile number with the top priority SELECT TOP 1 ProfNo FROM @ProfDetailsTable ORDER BY GroupPriority,Priority,SeqNo end
--sql content merged from file: \StoredProcedures\EAUI_UpdateCustomerNotesAllSites_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerNotesAllSites_70] (@UserID nvarchar(20), @UserIP varchar(20), @ParentID varchar(10),@Notes nvarchar(4000)) AS BEGIN DECLARE @ParamNo smallint BEGIN TRANSACTION SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerNotes','C') DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Customer] b ON a.ChildID = b.CustID INNER JOIN [dbo].[CustomParamScalarValues] c ON b.CustNo = c.TargetNo WHERE a.ParentID = @ParentID AND c.ParamLevel='C' AND c.ParamNo=@ParamNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[CustomParamScalarValues] SELECT b.CustNo,'C',@ParamNo,@Notes FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Customer] b ON a.ChildID = b.CustID WHERE a.ParentID = @ParentID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetDbFieldGroupCaption_70](@DbVerNo int, @FieldGroupNo int, @LangCode varchar(10)) RETURNS nvarchar(255) AS BEGIN DECLARE @Caption nvarchar(255) SELECT @Caption=[dbo].[DbFieldGroupCaption].[Caption] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupCaption].[LangCode]=@LangCode IF @Caption IS NULL SELECT @Caption=[dbo].[DbFieldGroupCaption].[Caption] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupCaption].[LangCode]='en' RETURN @Caption END
CREATE PROCEDURE [dbo].[EAUI_DeleteSearchTheme_84](@UserID nvarchar(20), @UserIP varchar(15), @ThemeID varchar(20))AS BEGIN BEGIN TRANSACTION DELETE [dbo].[SearchTheme] WHERE [dbo].[SearchTheme].[ThemeID] IN (SELECT [dbo].[EAIF_GetSearchThemeHierarchyTable_83].[ThemeID] FROM dbo.EAIF_GetSearchThemeHierarchyTable_83(@ThemeID)) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'SearchTheme','Delete Search Theme', @ThemeID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetCfgAppParamList_151] @AppId varchar(20) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId SELECT p.ParamNo, [p].[ParamName], ParamType=m.Description, Description=ISNULL([d].[PromptText], ''),DefaultValue=ISNULL(CONVERT(NVARCHAR(2000),e.ParamValue),N'') FROM ([dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON p.ParamNo = d.ParamNo) LEFT OUTER JOIN (SELECT * FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName] = 'ParamType') m ON [p].[ParamType] = [m].[FieldCode] LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] e ON e.TargetNo=@AppNo AND e.ParamLevel='A' AND p.ParamNo=e.ParamNo WHERE [p].[ApplicationNo] = @AppNo AND [p].[ParamName]>='' ORDER BY P.ParamNo END
CREATE PROCEDURE [dbo].[EAUI_GetSearchConceptList_131] AS BEGIN SELECT [dbo].[SearchConceptList].[SearchConcept] AS Concept, [dbo].[SearchConceptList].[DefaultSearchTag], [dbo].[SearchConceptList].[SeqNo] FROM [dbo].[SearchConceptList] ORDER BY [dbo].[SearchConceptList].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_AddUpdateProfCatalogHoldingTblCaptions_104] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @DbVerNo int, @LangCode varchar(10), @CaptionID varchar(10), @NewCaptionDesc nvarchar (2000) ) AS BEGIN TRY BEGIN TRANSACTION SET @NewCaptionDesc = LTRIM(RTRIM(@NewCaptionDesc)) -- If the new caption desc is same as global default, remove it from the profile catalog caption table (if exists) Declare @defaultCaption nvarchar(2000) set @defaultCaption = NULL Select @defaultCaption = [dbo].[GlobalCatalogHoldingTblCaptions].[Caption] from [dbo].[GlobalCatalogHoldingTblCaptions] where [dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID]=@CaptionID and [dbo].[GlobalCatalogHoldingTblCaptions].[LangCode]=@LangCode IF (@NewCaptionDesc = @defaultCaption) BEGIN Delete from [dbo].[ProfCatalogHoldingTblCaptions] where [dbo].[ProfCatalogHoldingTblCaptions].[ProfNo]=@ProfNo and [dbo].[ProfCatalogHoldingTblCaptions].[DbVerNo]=@DbVerNo and [dbo].[ProfCatalogHoldingTblCaptions].[LangCode]=@LangCode and [dbo].[ProfCatalogHoldingTblCaptions].[CaptionID]=@CaptionID EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table captions','Delete default caption value',@ProfNo,@DbVerNo,@LangCode,@CaptionID END -- /* Add/Update the ProfCatalogHoldingTblCaptions */ -- ELSE BEGIN MERGE [dbo].[ProfCatalogHoldingTblCaptions] AS target USING (Select @ProfNo as ProfNo, @DbVerNo as DbVerNo, @LangCode as LangCode, @CaptionID as CaptionID, @NewCaptionDesc as Caption) AS source ON (target.ProfNo = source.ProfNo AND target.DbVerNo=source.DbVerNo AND target.LangCode=source.LangCode AND target.CaptionID=source.CaptionID) WHEN MATCHED THEN UPDATE SET [target].[Caption] = @NewCaptionDesc WHEN NOT MATCHED THEN INSERT ([ProfNo], [DbVerNo], [LangCode], [CaptionID], [Caption]) VALUES (source.ProfNo, source.DbVerNo, source.LangCode, source.CaptionID, source.Caption); EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table captions','Add/Update catalog caption value',@ProfNo,@DbVerNo,@LangCode,@CaptionID END COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EW33_GetFirstProfile](@CustID varchar(10), @GroupID varchar(10)) as BEGIN SELECT TOP 1 [a].[ProfID], [a].[ProfPwd] FROM [dbo].[Profile] a INNER JOIN [dbo].[Interface] b ON a.InterfaceID = b.InterfaceID WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.ClientType ='web' ORDER by a.SeqNo END
--sql content merged from file: \StoredProcedures\EAIP_AddExternalDatabasesToProfiles_92.sql CREATE Procedure [dbo].[EAIP_AddExternalDatabasesToProfiles_92] (@CustID varchar(10), --@GroupID varchar(10), --@InterfaceID varchar(10), --@Version varchar(10), @SourceType char(1), @SourceList xml) as Begin DECLARE @docHandle int Declare @SourceTable table (ExternalDbID varchar(255), DbName varchar(10), DisplayName nvarchar(255), [Description] nvarchar(max)) Declare @MaxSeqNoTable table (ProfNo int, MaxSeqNo int) Declare @Work table (ProfNo int, DbVerNo int, MaxDate datetime) EXEC [dbo].[sp_xml_preparedocument] @docHandle OUTPUT, @SourceList Insert @SourceTable Select * from OpenXML(@docHandle, '/ExternalDbs/ExternalDb', 1) with (ExternalDbID varchar(255), DbName varchar(10), DisplayName nvarchar(255), [Description] nvarchar(max)) Declare @WorkProfDatabase table (ProfNo int, DbVerNo int, SeqNo int, [Enable] bit, SelDefault bit, CustomerLimiter bit, CtrlCustID varchar(255), StartPage varchar(20), SugSubject varchar(20), Mode char(1), AccessEndDate datetime) --Declare @WorkProfDatabase2 table -- (ProfNo int, -- DbVerNo int, -- SeqNo int, -- [Enable] bit, -- SelDefault bit, -- CustomerLimiter bit, -- CtrlCustID varchar(255), -- StartPage varchar(20), -- SugSubject varchar(20), -- Mode char(1), -- AccessEndDate datetime) Insert Into @WorkProfDatabase Select [a].[ProfNo], [b].[DbVerNo], [b].[SeqNo], [b].[Enable], [b].[SelDefault], [b].[CustomLimiter], [c].[CtrlCustID], [b].[StartPage], Null, [c].[Mode], [c].[AccessEndDate] from (Select Top 1 [cs].[CtrlCustID], [cs].[Mode], dbo.fn_GetEPAccessEndDate_90([cs].[EndDate], Null, Null, Null) AccessEndDate from EASUPPORT.dbo.CustSubscription cs join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo where [cs].[CustID]=@CustID and [po].[SourceType]=@SourceType order by dbo.fn_GetEPAccessEndDate_90([cs].[EndDate], Null, Null, Null) desc) c cross join (Select distinct p.ProfNo from [dbo].[Profile] p join EASUPPORT.dbo.ProductInterface pi on p.InterfaceID=pi.InterfaceID and p.Version=pi.Version join EASUPPORT.dbo.Product pr on pi.ProductID=pr.ProductID and pr.ProductType=@SourceType join EASUPPORT.dbo.ProductPackage pp on pr.ProductID=pp.ProductID join EASUPPORT.dbo.ProductOffering po on pp.PrdOffNo=po.PrdOffNo join EASUPPORT.dbo.CustSubscription cs on po.PrdOffNo=cs.PrdOffNo and cs.CustID=@CustID join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version where (p.CustID=@CustID and iv.DefProfID<>p.ProfID)) a cross join (select [dbo].[DbList].[DbVerNo], 1 as SeqNo, 0 as [Enable], 0 as SelDefault, 0 as CustomLimiter, '' as StartPage from [dbo].[DbList] where [dbo].[DbList].[DbName] in (Select DbName from @SourceTable)) b Insert Into @WorkProfDatabase Select [a].[ProfNo], [b].[DbVerNo], [b].[SeqNo], [b].[Enable], [b].[SelDefault], [b].[CustomLimiter], [c].[CtrlCustID], [b].[StartPage], Null, [c].[Mode], [c].[AccessEndDate] from (Select Top 1 [cs].[CtrlCustID], [cs].[Mode], dbo.fn_GetEPAccessEndDate_90([cs].[EndDate], Null, Null, Null) AccessEndDate from EASUPPORT.dbo.CustSubscription cs join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo where [cs].[CustID]=@CustID and [po].[SourceType]=@SourceType order by dbo.fn_GetEPAccessEndDate_90([cs].[EndDate], Null, Null, Null) desc) c cross join (Select distinct p.ProfNo from [dbo].[Profile] p join EASUPPORT.dbo.ProductInterface pi on p.InterfaceID=pi.InterfaceID and p.Version=pi.Version join EASUPPORT.dbo.Product pr on pi.ProductID=pr.ProductID and pr.ProductType=@SourceType join EASUPPORT.dbo.ProductPackage pp on pr.ProductID=pp.ProductID join EASUPPORT.dbo.ProductOffering po on pp.PrdOffNo=po.PrdOffNo join EASUPPORT.dbo.CustSubscription cs on po.PrdOffNo=cs.PrdOffNo and cs.CustID=@CustID join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version where (p.CustID=@CustID and iv.DefProfID=p.ProfID)) a cross join (select [dbo].[DbList].[DbVerNo], 1 as SeqNo, 0 as [Enable], 0 as SelDefault, 0 as CustomLimiter, '' as StartPage from [dbo].[DbList] where [dbo].[DbList].[DbName] in (Select DbName from @SourceTable)) b Insert @Work Select ProfNo, DbVerNo, Max(AccessEndDate) MaxDate from @WorkProfDatabase Group by ProfNo, DbVerNo, SeqNo, Enable, SelDefault, CustomerLimiter, CtrlCustID, StartPage, SugSubject, Mode Create Table #WorkProfDatabase2 (ProfNo int, DbVerNo int, SeqNo int, [Enable] bit, SelDefault bit, CustomerLimiter bit, CtrlCustID varchar(255), StartPage varchar(20), SugSubject varchar(20), Mode char(1), AccessEndDate datetime) Create Index ProfNoDbVerNo on #WorkProfDatabase2 (ProfNo, DbVerNo) Insert #WorkProfDatabase2 Select distinct a.* from (Select ProfNo, DbVerNo, SeqNo, Enable, SelDefault, CustomerLimiter, CtrlCustID, StartPage, SugSubject, Mode, AccessEndDate from @WorkProfDatabase) a join @Work b on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo where a.AccessEndDate>=b.MaxDate delete #WorkProfDatabase2 from #WorkProfDatabase2 w join [dbo].[ProfDatabase] p on w.ProfNo=p.ProfNo and w.DbVerNo=p.DbVerNo Declare @ProfNo int Declare @Seed int Insert @MaxSeqNoTable select p.ProfNo, isnull(max(pdb.SeqNo),0) as MaxSeqNo from [dbo].[ProfDatabase] pdb right outer join [dbo].[Profile] p on pdb.ProfNo=p.ProfNo where [p].[CustID]=@CustID --and GroupID=@GroupID-- and InterfaceID=@InterfaceID and Version=@Version group by p.ProfNo --Update @WorkProfDatabase2 set SeqNo=Pos+MaxSeqNo --From @WorkProfDatabase2 wp --join --(Select a.ProfNo, DbVerNo, Pos, MaxSeqNo from (Select ProfNo, DbVerNo, Row_Number() Over (Partition by ProfNo Order by DbVerNo) as Pos from @WorkProfDatabase2) a -- join @MaxSeqNoTable b -- on a.ProfNo=b.ProfNo) a --on wp.ProfNo=a.ProfNo and wp.DbVerNo=a.DbVerno Declare @PosTable table (ProfNo int, DbVerNo int, Pos int) insert @PosTable Select #WorkProfDatabase2.[ProfNo], #WorkProfDatabase2.[DbVerNo], Row_Number() Over (Partition by #WorkProfDatabase2.[ProfNo] Order by #WorkProfDatabase2.[DbVerNo]) as Pos from #WorkProfDatabase2 Declare @MaxSeqNoTable2 table (ProfNo int, DbVerNo int, Pos int, MaxSeqNo int) Insert @MaxSeqNoTable2 Select a.ProfNo, DbVerNo, Pos, MaxSeqNo from @PosTable a join @MaxSeqNoTable b on a.ProfNo=b.ProfNo Update #WorkProfDatabase2 set [SeqNo]=Pos+MaxSeqNo from #WorkProfDatabase2 wp join @MaxSeqNoTable2 a on wp.ProfNo=a.ProfNo and wp.DbVerNo=a.DbVerNo --Update @WorkProfDatabase2 set SeqNo=Pos+MaxSeqNo --From @WorkProfDatabase2 wp --join --(Select a.ProfNo, DbVerNo, Pos, MaxSeqNo from (Select ProfNo, DbVerNo, Row_Number() Over (Partition by ProfNo Order by DbVerNo) as Pos from @WorkProfDatabase2) a -- join @MaxSeqNoTable b -- on a.ProfNo=b.ProfNo) a --on wp.ProfNo=a.ProfNo and wp.DbVerNo=a.DbVerno -------------------------------------------------- -- set enabled based on Interface and SourceType properties -------------------------------------------------- Update #WorkProfDatabase2 set [Enable]=[newEnable], [SelDefault]=[newSelDefault] from #WorkProfDatabase2 wpdb join (select p.ProfNo, dbl.DbVerNo, newEnable=case when isnull(istc.StringValue, 'Standard') = 'Standard' then wpdb.Enable when isnull(istc.StringValue, 'Standard') = 'Disable' then 0 when isnull(istc.StringValue, 'Standard') = 'Enable' then 1 end, newSelDefault=case when isnull(istc2.StringValue, 'Standard')= 'Standard' then wpdb.SelDefault when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from [dbo].[Profile] p join #WorkProfDatabase2 wpdb on p.ProfNo=wpdb.ProfNo join [dbo].[DbList] dbl on wpdb.DbVerNo=dbl.DbVerNo left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseAddRule' left outer join [dbo].[InterfaceSourceTypeConfig] istc2 on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and dbl.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule') a on wpdb.ProfNo=a.ProfNo and wpdb.DbVerNo=a.DbVerNo Insert [dbo].[ProfDatabase] select #WorkProfDatabase2.[ProfNo], #WorkProfDatabase2.[DbVerNo], #WorkProfDatabase2.[SeqNo], #WorkProfDatabase2.[Enable], #WorkProfDatabase2.[SelDefault], #WorkProfDatabase2.[CustomerLimiter], #WorkProfDatabase2.[CtrlCustID], #WorkProfDatabase2.[StartPage], #WorkProfDatabase2.[SugSubject], #WorkProfDatabase2.[Mode], Max(#WorkProfDatabase2.[AccessEndDate]) from #WorkProfDatabase2 Group by #WorkProfDatabase2.[ProfNo], #WorkProfDatabase2.[DbVerNo], #WorkProfDatabase2.[SeqNo], #WorkProfDatabase2.[Enable], #WorkProfDatabase2.[SelDefault], #WorkProfDatabase2.[CustomerLimiter], #WorkProfDatabase2.[CtrlCustID], #WorkProfDatabase2.[StartPage], #WorkProfDatabase2.[SugSubject], #WorkProfDatabase2.[Mode] EXEC [dbo].[sp_xml_removedocument] @docHandle END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterNotes_70] (@LimiterNo int) AS BEGIN SELECT ISNULL([dbo].[LimiterList].[Notes], '') AS Notes FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo END
CREATE PROCEDURE [dbo].[EATL_UpdateExpanderCaption_70]( @UserId nvarchar(20), @UserIp varchar(15), @ControlName varchar(50), @LangCode varchar(10), @DefCaption nvarchar(100) ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[GlobalExpanderCaption] WHERE [dbo].[GlobalExpanderCaption].[ControlName]=@ControlName) BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Expander', 'Translate Expander Caption', @ControlName, @LangCode EXEC [dbo].[EAIP_UpdateExpanderCaption_70] @ControlName, @LangCode, @DefCaption END END
CREATE PROCEDURE [dbo].[EPCS_GetDbInfo_103] ( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN DECLARE @XsltLoc varchar(255) SET @XsltLoc=null -- EpfFile would hold the Db xsltLocation -- The value would be same for all segments/volume for a given Db SELECT Top 1 @XsltLoc=[i].[EpfFile] FROM [dbo].[DbSegFileInfo] i INNER JOIN [dbo].[DbVolume] v ON i.DbVerNo=v.DbVerNo AND i.Volume = v.Volume INNER JOIN [dbo].[DbList] d ON i.DbVerNo=d.DbVerNo Where d.DbName=@ShortDBName AND d.DbLabel=@Label If (@XsltLoc is null or CharIndex ('.xslt',@XsltLoc) <= 0) BEGIN SET @XsltLoc=null END SELECT d.DbName, d.DbLabel, d.DisplayName, d.EnforceSimUsage, isnull(phdt.DbType, t.DbType) as DbTypeNo, -- take DbType, ContentType from parent PhysicalDb if database is subsetDB isnull(phdt.Description, t.Description) as DbType, -- isnull(phdc.Description, c.Description) as ConType, -- c.ImageFileName as ConImageFileName, isnull(phdc.ContentType, c.ContentType) as ContentType, -- d.InterfaceID, dbo.EAIF_GetContentLinkTexts_82(c.ContentType) AS LinkTexts, d.EDABuild, CASE WHEN (EXISTS ( SELECT 1 FROM [dbo].[DbSourceTarget] st WHERE st.TargetDbNo = d.DbVerNo AND st.TargetType = 'quickview' ) ) THEN 1 ELSE 0 END AS QuickViewTarget, d.SourceType, ISNULL (dblesm.ExternalDbID,'') as ExternalDbID, ISNULL (dblesi.ExternalDbID,'') as ExternalDbID_I, CASE WHEN d.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') ELSE ISNULL(dex.VendorName,'') END As VendorName, ISNULL (dex.ConnectorType,'') as ConnectorType, ISNULL (psv.ParamValue,'') as ResourceType, @XsltLoc as XsltLocation, CASE WHEN (sub.SubsetDbVerNo IS NULL) THEN 0 ELSE 1 END AS IsSubsetDb, phdb.DbName PhysicalDbName, sub.MergeSearches, CASE WHEN (sub.DBDefSearchExprType = 'E' OR sub.DBDefSearchExprType = 'I') THEN 'LO system.sub-' + d.DbName ELSE '' END AS SystemSearchExpr, sub.DBDefSearchExprType, CASE WHEN (sub.DBDefSearchExprType = 'I') THEN sub.DBDefSearchExpression WHEN (sub.DBDefSearchExprType = 'E') THEN CONVERT(NVARCHAR(255),'LO system.sub-' + d.DbName) ELSE N'' END AS DBDefSearchExpression, d.NonSearchableDb, d.ArchiveProfSettings FROM [dbo].[DbList] d INNER JOIN [dbo].[DbTypeList] t ON t.DbType = d.DbType INNER JOIN [dbo].[DbContentList] c ON c.ContentType = d.ContentType LEFT OUTER JOIN [dbo].[DbListExternalSource] dex ON dex.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] dblesm ON dblesm.DbVerNo = dex.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] dblesi ON dblesi.DbVerNo = dex.DbVerNo LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON (psv.DbVerNo = d.DbVerNo AND psv.ParamNo=dbo.EAIF_GetDbParamNumber_70('ResourceType')) LEFT OUTER JOIN [dbo].[DbSubset] sub ON sub.SubsetDbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbList] phdb ON phdb.DbVerNo = sub.PhysDbVerNo LEFT OUTER JOIN [dbo].[DbTypeList] phdt ON phdt.DbType = phdb.DbType LEFT OUTER JOIN [dbo].[DbContentList] phdc ON phdc.ContentType = phdb.ContentType WHERE d.DbName = @ShortDBName AND d.DbLabel = @Label END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalClusterDetail_80] (@ID varchar(20), @LangCode varchar(10))AS BEGIN SELECT cl.ID, cl.XPath, cl.XPathEnh, cl.Notes, cl.Tag, cp.Caption FROM [dbo].[GlobalCluster] cl LEFT OUTER JOIN [dbo].[GlobalClusterCaption] cp ON cl.ID=cp.ID AND cp.LangCode=@LangCode WHERE cl.ID=@ID END
CREATE PROCEDURE [dbo].[EAIP_UpdateExpanderCaption_70] (@ControlName varchar(50),@LangCode varchar(10), @DefCaption nvarchar(100) ) AS BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[GlobalExpanderCaption] WHERE [dbo].[GlobalExpanderCaption].[ControlName] = @ControlName AND [dbo].[GlobalExpanderCaption].[LangCode] = @LangCode ) BEGIN UPDATE [dbo].[GlobalExpanderCaption] SET [dbo].[GlobalExpanderCaption].[DefCaption] = @DefCaption WHERE [dbo].[GlobalExpanderCaption].[ControlName] = @ControlName AND [dbo].[GlobalExpanderCaption].[LangCode] = @LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN INSERT INTO [dbo].[GlobalExpanderCaption] ([dbo].[GlobalExpanderCaption].[ControlName], [dbo].[GlobalExpanderCaption].[LangCode], [dbo].[GlobalExpanderCaption].[DefCaption]) VALUES (@ControlName, @LangCode, @DefCaption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileOtherServiceLinkDetails_86](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LinkURL nvarchar(512), @LinkIcon nvarchar(255), @LinkCaption nvarchar(50), @TargetProfNo int, @LinkNo int, @ContextSearchURL nvarchar(255))AS BEGIN UPDATE [dbo].[ProfOtherServiceLinks] SET [dbo].[ProfOtherServiceLinks].[LinkURL] = @LinkURL, [dbo].[ProfOtherServiceLinks].[LinkIcon] = @LinkIcon, [dbo].[ProfOtherServiceLinks].[LinkCaption] = @LinkCaption, [dbo].[ProfOtherServiceLinks].[ContextSearchURL] = @ContextSearchURL, [dbo].[ProfOtherServiceLinks].[TargetProfNo] = @TargetProfNo WHERE [dbo].[ProfOtherServiceLinks].[LinkNo] = @LinkNo DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Profile Other Service Link', @ProfLogName, @LinkNo, @LinkCaption,'','' END
CREATE FUNCTION [dbo].[EAIF_Encrypt_70](@StrPass varchar(50)) RETURNS varchar(100) AS BEGIN DECLARE @EncPass varchar(100) DECLARE @RetVal varchar(100) DECLARE @StrLength int DECLARE @StrPos int DECLARE @Buf varchar(2) DECLARE @iBuf int SET @StrPass = LTrim(RTrim(@StrPass)) SET @RetVal='' IF @StrPass <> '' BEGIN SELECT @StrLength =DATALENGTH(@StrPass) SET @EncPass='' SET @StrPos =1 WHILE(@StrPos <= @StrLength) BEGIN SELECT @iBuf =ascii(substring(@StrPass,@StrPos,1)) SET @Buf = dbo.EAIF_IntToBin_70(@iBuf) SET @EncPass =@EncPass+@Buf SET @StrPos =@StrPos+1 END SET @StrPos =1 SET @StrLength = 2 * @StrLength WHILE(@StrPos < @StrLength) BEGIN SET @RetVal =@RetVal+substring(@EncPass,@StrPos,1) SET @RetVal =@RetVal+substring(@EncPass,@StrLength,1) SET @StrPos =@StrPos+1 SET @StrLength = @StrLength -1 END END RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseDisplayName_70](@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SELECT dbo.EAIF_GetDbDisplayName_70(@DbName, @DbLabel) END
CREATE PROCEDURE [dbo].[EAIP_SetAdminParamValue_70](@ParamName varchar(100), @ParamValue varchar(255), @Buildnotes varchar(100) = NULL) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName]=@ParamName) UPDATE [dbo].[AdminState] SET [dbo].[AdminState].[ParamValue]=@ParamValue WHERE [dbo].[AdminState].[ParamName]=@ParamName ELSE INSERT INTO [dbo].[AdminState] Values (@ParamName, @ParamValue) IF @Paramname='eaDbVersion' EXEC [dbo].[EAIP_UpdateAdminBuildLog_912] @ParamName , @ParamValue,@Buildnotes END
--sql content merged from file: \StoredProcedures\EAIP_GetPersLinkProfileNoDb_86.sql CREATE PROCEDURE [dbo].[EAIP_GetPersLinkProfileNoDb_86]( @CustID varchar(10), @GroupID varchar(10), @InterfaceID varchar(25), @UseSsl bit, @Version varchar(10), @ParamNo int, @HttpsParamNo int, @IsMobileRequest bit=0) AS BEGIN IF @UseSsl=1 SELECT top 1 a.ProfNo, a.ProfID, a.ProfPwd, iv.PersistentLinkURL, a.InterfaceID, CASE when @IsMobileRequest=0 Then Case WHEN iv.IsMobile=0 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 1 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=1 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 3 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=0 THEN 5 WHEN iv.IsMobile=1 THEN 6 ELSE 7 END else case WHEN iv.IsMobile=1 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 1 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=0 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 3 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=1 THEN 5 WHEN iv.IsMobile=0 THEN 6 ELSE 7 END end AS priority FROM [dbo].[Profile] a JOIN [dbo].[CustomParamDefaults] c WITH (INDEX(PK_CustomParamDefaults)) ON c.ParamNo=@ParamNo AND a.InterfaceID = c.InterfaceID AND a.Version = c.Version AND a.MarketID = c.MarketID AND a.STMode = c.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = a.ProfNo AND d.ParamLevel='P' AND d.ParamNo = @ParamNo JOIN [dbo].[InterfaceVersion] iv ON a.InterfaceID = iv.InterfaceID AND a.Version = iv.Version JOIN [dbo].[CustomParamScalarValues] f ON f.TargetNo = a.ProfNo AND f.ParamLevel='P' AND f.ParamNo = @HttpsParamNo AND f.ParamValue='1' WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND (@InterfaceID = '' OR (a.InterfaceID=@InterfaceID AND a.Version=@Version) OR iv.SiteID=@InterfaceID) AND ISNULL(d.ParamValue,c.DefValue) = '1' ORDER by priority, a.SeqNo IF @@ROWCOUNT = 0 OR @UseSsl=0 SELECT top 1 a.ProfNo, a.ProfID, a.ProfPwd, iv.PersistentLinkURL, a.InterfaceID, CASE when @IsMobileRequest=0 Then case WHEN iv.IsMobile=0 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 1 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=1 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 3 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=0 THEN 5 WHEN iv.IsMobile=1 THEN 6 ELSE 7 END else case WHEN iv.IsMobile=1 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 1 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=0 and a.InterfaceID=@InterfaceID AND a.Version=@Version THEN 3 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=1 THEN 5 WHEN iv.IsMobile=0 THEN 6 ELSE 7 END end AS priority FROM [dbo].[Profile] a JOIN [dbo].[CustomParamDefaults] c WITH (INDEX (PK_CustomParamDefaults)) ON c.ParamNo=@ParamNo AND a.InterfaceID = c.InterfaceID AND a.Version = c.Version AND a.MarketID = c.MarketID AND a.STMode = c.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = a.ProfNo AND d.ParamLevel='P' AND d.ParamNo = @ParamNo JOIN [dbo].[InterfaceVersion] iv ON a.InterfaceID = iv.InterfaceID AND a.Version = iv.Version WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND (@InterfaceID = '' OR (a.InterfaceID=@InterfaceID AND a.Version=@Version) OR iv.SiteID=@InterfaceID) AND ISNULL(d.ParamValue,c.DefValue) = '1' ORDER by priority, a.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerProductConfigurationDetails_99] (@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @Product varchar(10), @CurrentSite bit, @ChildSites bit, @AuthType varchar(10), @LibraryLogoUrl nvarchar(500), @DisplayName nvarchar(100), @ProxyID varchar(255), @LoginText nvarchar(500) ) AS BEGIN DECLARE @LogMessage varchar(200), @TimeStamp datetime IF @AuthType <> 'ip' OR LEN(@ProxyID)=0 SET @ProxyID=null IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID AND [dbo].[Customer].[CustName]=@DisplayName) SET @DisplayName=null SET @TimeStamp = GetDate() SELECT @LogMessage = 'Modify Customer Product Settings' UPDATE [dbo].[CustomParamProductConfiguration] SET [dbo].[CustomParamProductConfiguration].[ProductAllowed] = @CurrentSite, [dbo].[CustomParamProductConfiguration].[ProductForChildrenAllowed] = @ChildSites, [dbo].[CustomParamProductConfiguration].[AuthType] = @AuthType, [dbo].[CustomParamProductConfiguration].[DisplayName]= @DisplayName, [dbo].[CustomParamProductConfiguration].[ProxyID]=@ProxyID, [dbo].[CustomParamProductConfiguration].[LoginText] = @LoginText, [dbo].[CustomParamProductConfiguration].[LibraryLogoUrl] = @LibraryLogoUrl, [dbo].[CustomParamProductConfiguration].[TimeStamp]=@TimeStamp WHERE [dbo].[CustomParamProductConfiguration].[CustID] = @CustID AND [dbo].[CustomParamProductConfiguration].[Product] = @Product IF @@ROWCOUNT = 0 BEGIN SELECT @LogMessage = 'Add Customer Product Settings' INSERT INTO [dbo].[CustomParamProductConfiguration]( [dbo].[CustomParamProductConfiguration].[CustID], [dbo].[CustomParamProductConfiguration].[Product], [dbo].[CustomParamProductConfiguration].[ProductAllowed], [dbo].[CustomParamProductConfiguration].[ProductForChildrenAllowed], [dbo].[CustomParamProductConfiguration].[AuthType], [dbo].[CustomParamProductConfiguration].[DisplayName], [dbo].[CustomParamProductConfiguration].[ProxyID], [dbo].[CustomParamProductConfiguration].[LoginText], [dbo].[CustomParamProductConfiguration].[LibraryLogoUrl], [dbo].[CustomParamProductConfiguration].[TimeStamp] ) VALUES ( @CustID, @Product, @CurrentSite, @ChildSites, @AuthType, @DisplayName, @ProxyID, @LoginText, @LibraryLogoUrl, @TimeStamp ) END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,@LogMessage,@CustID UPDATE [dbo].[CustomParamProductConfiguration] SET [ProductAllowed] = @ChildSites, [TimeStamp]=@TimeStamp FROM [dbo].[CustomParamProductConfiguration] pc JOIN [dbo].[CustomerGroup] cg ON pc.CustID = cg.ChildID WHERE pc.[Product] = @Product AND cg.ParentID = @CustID AND cg.ParentID <> cg.ChildID INSERT INTO [dbo].[CustomParamProductConfiguration] ([pc].[CustID], [pc].[Product], [pc].[ProductAllowed], [pc].[TimeStamp]) SELECT [cg].[ChildID], @Product, @ChildSites, @TimeStamp FROM [dbo].[CustomerGroup] cg LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc ON cg.ChildID=pc.CustID AND pc.[Product] = @Product WHERE cg.ParentID = @CustID AND cg.ParentID <> cg.ChildID AND pc.CustID IS NULL END
CREATE FUNCTION [dbo].[EAIF_GetDbFieldGroupCaptions_70](@DbVerNo int, @FieldGroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + '' + [dbo].[DbFieldGroupCaption].[Caption] + ' ' FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_DeleteSiteParamScalarValue_100](@UserID nvarchar(20), @UserIP varchar(15),@CustID varchar(10), @ParamNo int) AS BEGIN DECLARE @CustLogName nvarchar(50) DECLARE @ParamName varchar(100) Declare @CustNo int; Select @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) Select @CustNo=[dbo].[Customer].[CustNo],@CustLogName=[dbo].[Customer].[CustName] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'SiteGroup','Delete Site Scalar Parameter',@CustLogName,@ParamName EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @CustNo,'C',@ParamNo EXEC [dbo].[EAIP_LogUpdatesCustomParam_100] @CustNo,@ParamNo, 'C' END
CREATE PROCEDURE [dbo].[EAIP_GetCfgAppServer_151](@AppId varchar(20),@SrvName varchar(255)) AS BEGIN DECLARE @AppNo INT, @SrvNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo) BEGIN RAISERROR('The Server/Label (%s) does not exist.', 16,-1, @SrvName) RETURN END SELECT @SrvNo=[dbo].[ConfigServer].[ServerNo] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo SELECT [dbo].[ConfigServer].[ServerURI], [dbo].[ConfigServer].[Description], [dbo].[ConfigServer].[ServerStatus], [dbo].[ConfigServer].[ServerType] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerNo]=@SrvNo END
CREATE PROCEDURE [dbo].[EAUI_GetSearchConceptsByContext_181] ( @SearchContext varchar (10)) AS BEGIN SELECT [dbo].[SearchConceptContext].[SearchConcept] AS Concept FROM [dbo].[SearchConceptContext] Where [dbo].[SearchConceptContext].[SearchContext]=@SearchContext ORDER BY Concept END
CREATE PROCEDURE [dbo].[EAUI_AddUserGroup_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @GroupID nvarchar(10), @GroupName nvarchar(100), @Email nvarchar(100) ) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Add User Group', @CustID, @GroupID, @GroupName, @Email EXEC [dbo].[EAIP_AddUserGroup_70] @CustID, @GroupID, 'N', @GroupName, @Email COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EW33_GetGroupDatabases](@CustID varchar(10), @GroupID varchar(10)) as BEGIN SELECT distinct [m].[DbName] as ShortDbName,[m].[DisplayName] as LongDbName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] m ON m.DbVerNo = d.DbVerNo WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable = 1 AND dbo.EAIF_GetDbParamScalarValue_70( m.DbVerNo, 'fullTextAllowed' ) = 1 END
--sql content merged from file: \StoredProcedures\EAIP_AddInterface_70.sql CREATE PROCEDURE [dbo].[EAIP_AddInterface_70] ( @InterfaceID varchar(10), @InterfaceGroup varchar(20), @InterfaceType char(1)='N', @ClientType varchar(10)='web') AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@InterfaceID) INSERT INTO [dbo].[Interface] ([dbo].[Interface].[InterfaceID], [dbo].[Interface].[InterfaceType], [dbo].[Interface].[ClientType], [dbo].[Interface].[InterfaceGroup]) Values (@InterfaceID, @InterfaceType, @ClientType, @InterfaceGroup) END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterTemplate_70] (@LimiterNo int) AS BEGIN SELECT [dbo].[LimiterDetail].[ControlTemplate] FROM [dbo].[LimiterDetail] WHERE [dbo].[LimiterDetail].[LimiterNo] = @LimiterNo AND [dbo].[LimiterDetail].[LangCode] = 'en' END
CREATE PROCEDURE EATL_UpdateExpanderCaption_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@LangCode VARCHAR(10) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,ControlName VARCHAR(50) ,Caption NVARCHAR(100) ) INSERT INTO #Objects ( ControlName ,Caption ) SELECT m.c.value('(./ControlName)[1]', ' varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(100)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@ControlName VARCHAR(10) ,@Caption NVARCHAR(100) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @ControlName = ControlName ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateExpanderCaption_70] @UserID ,@UserIP ,@ControlName ,@LangCode ,@Caption SET @i = @i + 1 END DROP TABLE #Objects END
-- EPCS_GetDbInfo_70 CREATE PROCEDURE [dbo].[EPCS_GetDbInfo_70] ( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN DECLARE @XsltLoc varchar(255) SET @XsltLoc=null -- EpfFile would hold the Db xsltLocation -- The value would be same for all segments/volume for a given Db SELECT Top 1 @XsltLoc=[i].[EpfFile] FROM [dbo].[DbSegFileInfo] i INNER JOIN [dbo].[DbVolume] v ON i.DbVerNo=v.DbVerNo AND i.Volume = v.Volume INNER JOIN [dbo].[DbList] d ON i.DbVerNo=d.DbVerNo Where d.DbName=@ShortDBName AND d.DbLabel=@Label If (@XsltLoc is null or CharIndex ('.xslt',@XsltLoc) <= 0) BEGIN SET @XsltLoc=null END SELECT [d].[DbName], [d].[DbLabel], [d].[DisplayName], [d].[EnforceSimUsage], t.DbType as DbTypeNo, t.Description as DbType, c.Description as ConType, c.ImageFileName as ConImageFileName, c.ContentType, [d].[InterfaceID], dbo.EAIF_GetContentLinkTexts_82(c.ContentType) AS LinkTexts, d.EDABuild, ISNULL( [st].[TargetType], '') TargetType, [d].[SourceType], ISNULL (dex.ExternalDbID,'') as ExternalDbID, CASE WHEN d.SourceType in ('D', 'C') THEN ISNULL(svm.Description,'') ELSE ISNULL(dex.VendorName,'') END As VendorName, ISNULL (dex.ConnectorType,'') as ConnectorType, ISNULL (psv.ParamValue,'') as ResourceType, @XsltLoc as XsltLocation FROM [dbo].[DbList] d INNER JOIN [dbo].[DbTypeList] t ON t.DbType = d.DbType INNER JOIN [dbo].[DbContentList] c ON c.ContentType = d.ContentType LEFT OUTER JOIN [dbo].[DbSourceTarget] st ON st.TargetDbNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSource] dex ON dex.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON (psv.DbVerNo = d.DbVerNo AND psv.ParamNo=dbo.EAIF_GetDbParamNumber_70('ResourceType')) WHERE [d].[DbName] = @ShortDBName AND [d].[DbLabel] = @Label END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalClusters_102] AS BEGIN SELECT gc.ID, gc.XPath, gc.Tag, cp.Caption, gc.XPathEnh, gc.Notes, gc.MaxDisplay, gc.MinDisplay, Show = CASE [gc].[Show] WHEN 1 THEN 'On' ELSE 'Off' END, gc.MaxPercentageResults, CaseConversion = CASE [gc].[CaseConversion] WHEN 0 THEN '0-no conversion' WHEN 1 THEN '1-Title Case' WHEN 3 THEN '3-Sentence case' END, AutoAdd2Interfaces = CASE [gc].[AutoAdd2Interfaces] WHEN 1 THEN 'Yes' ELSE 'No' END FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID=cp.ID WHERE cp.LangCode='en' END
CREATE PROCEDURE [dbo].[EAIP_UpdateGlobalClusterCaption_89](@ClustId Varchar(20), @LangCode Varchar(10), @Caption NVarchar(255)) AS BEGIN IF EXISTS(SELECT 1 FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID] = @ClustId AND [dbo].[GlobalClusterCaption].[LangCode] = @LangCode) UPDATE [dbo].[GlobalClusterCaption] SET [dbo].[GlobalClusterCaption].[Caption] = @Caption WHERE [dbo].[GlobalClusterCaption].[ID] = @ClustId AND [dbo].[GlobalClusterCaption].[LangCode] = @LangCode ELSE INSERT INTO [dbo].[GlobalClusterCaption] ([dbo].[GlobalClusterCaption].[ID], [dbo].[GlobalClusterCaption].[LangCode], [dbo].[GlobalClusterCaption].[Caption]) VALUES (@ClustId, @LangCode, @Caption) END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileOtherServiceLinksOrder_86] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LinkKeysList varchar(8000), @LinksOrderList varchar(8000)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Other Service Links Order Or Default Selection for a Profile',@ProfLogName UPDATE [dbo].[ProfOtherServiceLinks] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[ProfOtherServiceLinks] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@LinkKeysList, @LinksOrderList,'+') b ON a.LinkNo=convert(int,b.Item) WHERE [a].[ProfNo]=@ProfNo END
CREATE FUNCTION dbo.EAIF_FindTitle_70(@Title nvarchar(430),@ISSN varchar(20) ) RETURNS int AS BEGIN DECLARE @TitleNo int IF @ISSN IS NOT NULL AND @ISSN <> '' BEGIN SELECT @TitleNo =[dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[ISSN]=@ISSN END ELSE IF @Title is NOT NULL AND @Title <> N'' BEGIN SELECT @TitleNo =[dbo].[MatchTitle].[TitleNo] FROM [dbo].[MatchTitle] WHERE [dbo].[MatchTitle].[MatchTitle]=dbo.EAIF_GetMatchTitle_70(@Title,@ISSN) IF @TitleNo is NULL SELECT @TitleNo=min([dbo].[MasterTitle].[TitleNo]) FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[Title]=@Title END RETURN @TitleNo END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseDocTypeDetails_77](@DBVerNo int, @DocTypeNo int) AS BEGIN SELECT dtl.DocTypeID, sm.Description As Category, dtc.Caption, ISNULL(ddt.SearchString, dtl.SearchString) AS SearchString, ddt.TargetDb, CASE WHEN dtl.DefValue=1 THEN 'On' ELSE 'Off' END AS DefValue FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DocTypeList] dtl ON ddt.DocTypeNo=dtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE ddt.DbVerNo=@DBVerNo AND ddt.DocTypeNo=@DocTypeNo AND dtc.LangCode='en' AND sm.FieldName='DocTypeCategory' END
CREATE PROCEDURE [dbo].[EAIP_UpdateCfgApplication_151](@UserID nvarchar(20), @UserIP varchar(15), @AppId varchar(20), @NewAppId varchar(20), @Description varchar(255), @ApplicationType char(1), @NotifyProtocol varchar(10), @NotifyPage varchar(255), @ServerDbMode char(1), @NotifyList varchar(8000)='' ) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId EXEC [dbo].[EAUI_UpdateCfgApplication_75] @UserID, @UserIP, @AppNo, @NewAppId, @Description, @ApplicationType, @NotifyProtocol, @NotifyPage, '', @ServerDbMode, @NotifyList END
Create Procedure [dbo].[EAIP_GetPersonalizationEnabledGroupCount_100](@ConsortiumCustomerIds varchar(max)) as Begin DECLARE @ParamNo int declare @DefValue varchar(4000) Declare @Count int SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' Select @Count = COUNT (distinct ug.GroupID) FROM dbo.EAIF_GetItemTable_70(@ConsortiumCustomerIds, ',') s join [dbo].[Customer] c on s.Item=c.CustID join [dbo].[UserGroup] ug on c.CustID=ug.CustID join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70([c].[CustType]) WHERE isnull(isnull([val].[ParamValue], [dval].[DefValue]),@DefValue)=1 and c.CustID<>'' select @Count End
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerProxy_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255), @ParamValue nvarchar(max) ) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int SELECT @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue, [dbo].[CustomParamXmlValues].[ItemName]=@ItemName -- EADM-5952 - want ItemName to be exactly the same as input (case sensitive) WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) values (@TargetNo,'C', @ParamNo,@ItemName,@ParamValue) END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Site/Group','Update a Proxy Item',@CustID,@ItemName END
CREATE FUNCTION [dbo].[EAIF_GetDbFieldGroupDefaults_70](@DbVerNo int, @FieldGroupNo int) RETURNS varchar(8000) AS BEGIN DECLARE @MarketDefaults varchar(8000) SET @MarketDefaults='' SELECT @MarketDefaults = @MarketDefaults + ' ' END' FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo RETURN @MarketDefaults + '
CREATE PROCEDURE [dbo].[EAUI_DeleteSLDbSource_78] ( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @DbSourceVerNo int, @DbTargetVerNo int) AS BEGIN DELETE FROM [dbo].[DbSourceTarget] WHERE [dbo].[DbSourceTarget].[TargetDbNo] = @DbTargetVerNo AND [dbo].[DbSourceTarget].[SourceDbNo] = @DbSourceVerNo -- Log activity EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel,'Delete SmartLink Source' END
CREATE PROCEDURE [dbo].[EAIP_GetCfgServerParamDetails_151](@AppName varchar(20), @SrvName varchar(255),@ParamName varchar(100)) AS BEGIN DECLARE @SrvNo INT,@AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppName) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppName) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppName IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo) BEGIN RAISERROR('The Server/Label (%s) does not exist.', 16,-1, @SrvName) RETURN END SELECT @SrvNo=[dbo].[ConfigServer].[ServerNo] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo SELECT p.ParamName, ParamValue=ISNULL(ISNULL(convert(nvarchar(2000),s.ParamValue), convert(nvarchar(2000),a.ParamValue)), N''), p.ParamType FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] s ON s.ParamNo = p.ParamNo AND [ParamLevel] = 'S' AND [TargetNo] = @SrvNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo AND [d].[EditControl]<>'Link' AND p.ParamName=@ParamName UNION SELECT p.ParamName, ParamValue=ISNULL(ISNULL(convert(nvarchar(max),s.ParamValue), convert(nvarchar(max),a.ParamValue)), N''), p.ParamType FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[ConfigParamXmlValues] s ON s.ParamNo = p.ParamNo AND s.ParamLevel = 'S' AND [TargetNo] = @SrvNo LEFT OUTER JOIN [dbo].[ConfigParamXmlValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo AND [d].[EditControl]='Link' AND p.ParamName= @ParamName END
CREATE PROCEDURE [dbo].[EAUI_GetSearchContextList_131] AS BEGIN SELECT [dbo].[SearchContextList].[SearchContext] AS Context FROM [dbo].[SearchContextList] ORDER BY [dbo].[SearchContextList].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_AddZ3950Form_70](@UserId nvarchar(20), @UserIP varchar(15), @VendorID int, @FormID int, @FormText varchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[Z3950Forms] WHERE [dbo].[Z3950Forms].[FormID]=@FormID) BEGIN RAISERROR('The FormID ID (%d) already exists.', 16,-1, @FormID ) RETURN END INSERT INTO [dbo].[Z3950Forms] ([dbo].[Z3950Forms].[VendorID], [dbo].[Z3950Forms].[FormID], [dbo].[Z3950Forms].[FormText]) VALUES(@VendorID , @FormID , @FormText) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Z39.50 Vendors', 'Add Form', @VendorID, @FormID, @FormText END
CREATE PROCEDURE [dbo].[EW33_GetLongDbName](@ShortDb varchar(10), @DbLabel varchar(10)='live') AS BEGIN SELECT [dbo].[DbList].[DisplayName] As LongDbName FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDb AND [dbo].[DbList].[DbLabel]=@DbLabel END
CREATE PROCEDURE [dbo].[EAIP_AddInterfaceVersion_144] ( @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @ClientType varchar(10)='web', @PersLinkURL varchar(255)='', @SupportDbTitles bit=0, @DefProfID varchar(10)='', @DefLangCode varchar(10)='en', @NewWin bit=0, @AutoAddAuth bit = 1, @AutoAddExp bit = 1, @IsMobile bit = 0, @AllowPersonalization bit=1, @AllowPrimaryDatabases bit = 0, @InterfaceType tinyint=0, @PlinkAuthFailureRedirect BIT, @PlinkAuthFailureRedirectURL nvarchar(255)=NULL) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_AddInterface_70] @InterfaceID, @InterfaceID, 'N', @ClientType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[PersistentLinkURL], [dbo].[InterfaceVersion].[SupportDbTitleLists],[dbo].[InterfaceVersion].[DefProfID], [dbo].[InterfaceVersion].[DefLangCode],[dbo].[InterfaceVersion].[NewWin],[dbo].[InterfaceVersion].[AutoAddAuthority], [dbo].[InterfaceVersion].[AutoAddExpanders], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType], [dbo].[InterfaceVersion].[PlinkAuthFailureRedirect], [dbo].[InterfaceVersion].[PlinkAuthFailureRedirectURL]) VALUES (@InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode,@NewWin,@AutoAddAuth,@AutoAddExp,@IsMobile,@AllowPersonalization, @AllowPrimaryDatabases, @InterfaceType, @PlinkAuthFailureRedirect, @PlinkAuthFailureRedirectURL) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) VALUES(@InterfaceID, @Version, 'en', @InterfaceName) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceUserLangList] ([dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version],[dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName],[dbo].[InterfaceUserLangList].[SeqNo]) SELECT @InterfaceID, @Version, [dbo].[LangList].[LangCode], [dbo].[LangList].[Description], [dbo].[LangList].[SeqNo] From [dbo].[LangList] IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLimiterTemplate_76] (@LimiterNo int, @DbVerNo int) AS BEGIN SELECT [dbo].[DbLimiterDetail].[ControlTemplate] FROM [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiterDetail].[DbVerNo]=@DbVerNo END
CREATE PROCEDURE [dbo].[EATL_UpdateGlobalCatalogHoldingTblCaptions_104] (@UserID nvarchar(20), @UserIP varchar(15), @LangCode varchar(10), @CaptionID varchar(10), @caption nvarchar(2000)) AS BEGIN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[GlobalCatalogHoldingTblCaptions] WHERE [dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID]= @CaptionID AND [dbo].[GlobalCatalogHoldingTblCaptions].[LangCode]=@LangCode ) BEGIN UPDATE [dbo].[GlobalCatalogHoldingTblCaptions] SET [dbo].[GlobalCatalogHoldingTblCaptions].[Caption]=@caption WHERE [dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID]= @CaptionID AND [dbo].[GlobalCatalogHoldingTblCaptions].[LangCode]=@LangCode SET @LogFlag ='Translate(Update) Global Catalog holding tabl captions' END ELSE BEGIN INSERT INTO [dbo].[GlobalCatalogHoldingTblCaptions] ([dbo].[GlobalCatalogHoldingTblCaptions].[LangCode],[dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID],[dbo].[GlobalCatalogHoldingTblCaptions].[Caption] ) VALUES (@LangCode,@CaptionID,@caption) SET @LogFlag ='Translate (Insert) GlobalCatalogHoldingTblCaptions' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @CaptionID, 'Lang:', @LangCode,@LogFlag,'CaptionText:', @caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDbInterfaceDocTypes_77](@InterfaceID varchar(10), @Version varchar(10),@DbName varchar(10),@DbLabel varchar(10))AS BEGIN SELECT ddt.TargetDb, dtl.DocTypeID, ISNULL(ddt.SearchString, dtl.SearchString) AS SearchString, ISNULL(idt.ResultImage, dtl.ResultImage) AS ResultImage, dbo.EAIF_GetDbDocTypeMouseOverTexts_77(idt.IntfDocTypeNo) AS MouseOverText, dbo.EAIF_DbDocTypeCaptions_77(idt.IntfDocTypeNo) AS Caption FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DocTypeList] dtl ON dtl.DocTypeNo = ddt.DocTypeNo INNER JOIN [dbo].[DbList] db ON db.DbVerNo = ddt.DbVerNo INNER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo = idt.DocTypeNo WHERE db.DbName = @DbName AND db.DbLabel=@DbLabel AND idt.InterfaceID = @InterfaceID AND idt.Version = @Version ORDER BY idt.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalClusters_80] AS BEGIN SELECT cl.ID, cl.XPath, cl.Tag, cp.Caption, cl.XPathEnh, cl.Notes FROM [dbo].[GlobalCluster] cl INNER JOIN [dbo].[GlobalClusterCaption] cp ON cl.ID=cp.ID WHERE cp.LangCode='en' ORDER BY cl.ID END
Create Procedure [dbo].[EAIP_UpdateGlobalInterfaceDisciplines_161] @UserID NVarChar(20), @UserIP VarChar(15), @DisciplineCodeList NVarChar(Max), @ShowList NVarChar(Max), @DefaultList NVarChar(Max) AS BEGIN Begin Try Begin Transaction Declare @DisciplineList TABLE (DisciplineCode VarChar(Max), SelDefault Bit, Show Bit); Insert Into @DisciplineList Select * From dbo.EAIF_GetDisciplinesTable_161(@DisciplineCodeList, @DefaultList, @ShowList, '+'); Declare @DisciplineCode Varchar(Max); Select Top 1 @DisciplineCode = A.DisciplineCode From @DisciplineList A Left Outer Join [dbo].[DisciplineList] DL On (A.DisciplineCode = DL.DisciplineCode) Where DL.DisciplineCode Is Null; IF (@DisciplineCode Is Not Null) BEGIN Raiserror('DisciplineCode: ''%s'', does not exist.', 16,-1, @DisciplineCode); RollBack Transaction; Return END Update DL Set DL.SelDefault = A.SelDefault, DL.Show = A.Show From [dbo].[DisciplineList] DL Join @DisciplineList A On (A.DisciplineCode = DL.DisciplineCode) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Discipline','Update Disciplines'; Commit Transaction End Try Begin Catch RollBack Transaction Declare @ErrorMessage NVARCHAR(4000), @ErrorSeverity INT, @ErrorState INT; Select @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RaisError (@ErrorMessage, @ErrorSeverity, @ErrorState); End Catch END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileParamScalarValue_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileParamScalarValue_70](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Scalar Profile Parameter',@ProfLogName,@ParamName,@ParamValue IF @ParamName = 'durableLinkPrimaryProxy' BEGIN DECLARE @OldValue NVARCHAR(4000) SELECT @OldValue=[dbo].[CustomParamScalarValues].[ParamValue] FROM dbo.CustomParamScalarValues WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @ParamNo, @ParamValue EXEC [dbo].[EAUI_handleProxyReferences_99] @UserID,@UserIP,@ProfNo,@ParamNo,@ParamValue,@OldValue END ELSE EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @ParamNo, @ParamValue END
CREATE FUNCTION [dbo].[EAIF_GetConfigApplicationParamScalarValue_70](@ApplicationID varchar(20),@ParamName varchar(100)) RETURNS nvarchar(2000) AS BEGIN DECLARE @ApplicationNo int DECLARE @ParamNo int SET @ApplicationNo = dbo.EAIF_GetConfigApplicationNo_70(@ApplicationID) SET @ParamNo = dbo.EAIF_GetConfigParamNumber_70(@ApplicationNo,@ParamName) RETURN dbo.EAIF_GetConfigParamScalarValue_70(@ApplicationNo, 'A', @ParamNo) END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseDocTypeList_77](@DBVerNo int) AS BEGIN SELECT dtl.DocTypeNo, dtl.DocTypeID, dtc.Caption, ISNULL(ddt.SearchString, dtl.SearchString) AS SearchString, ddt.TargetDb, pdtl.DocTypeID AS ParentID, CASE WHEN dtl.DefValue=1 THEN 'On' ELSE 'Off' END AS DefValue FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DocTypeList] dtl ON ddt.DocTypeNo=dtl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo WHERE ddt.DbVerNo=@DBVerNo AND dtc.LangCode='en' ORDER BY dtl.DocTypeID END
CREATE PROCEDURE [dbo].[EAIP_UpdateCfgAppParam_151]( @UserID nvarchar(20), @UserIP varchar(15), @AppId varchar(20), @ParamName varchar(100), @NewParamName varchar(100), @PromptText varchar(255), @EditControl varchar(50), @ValueTemplate nvarchar(1000), @ParamValue nvarchar(2000), @ItemName varchar(100), @ParamXMLValue nvarchar(max)) AS BEGIN DECLARE @ParamNo INT, @AppNo INT, @ParamType char IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END SELECT @ParamNo=p.ParamNo,@ParamType=p.ParamType FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName IF @ParamType ='X' AND @EditControl<>'Link' BEGIN RAISERROR('The parameter EditControl should be Link for the parameter type XML', 16,-1, @ParamName) RETURN END EXEC [dbo].[EAUI_UpdateCfgAppParam_70] @UserID, @UserIP, @ParamNo, @NewParamName, @ParamType, @PromptText, @EditControl, @ValueTemplate, @ParamValue, @ItemName, @ParamXMLValue END
CREATE Procedure [dbo].[EAIP_GetPersonalizationEnabledGroupList_100](@CustID varchar(10)) AS Begin DECLARE @ParamNo int declare @DefValue varchar(4000) declare @Val varchar(4000) declare @tempTable table (CustID varchar(10), GroupID varchar(10), PersonalizationEnabledProfileCount int) Insert @tempTable select ug.CustID, ug.GroupID, SUM(convert(int, isnull(iv.AllowPersonalization, 0))) from [dbo].[UserGroup] ug left outer join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 where ug.CustID=@CustID Group by ug.CustID, ug.GroupID SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' SELECT ug.GroupID, GroupName, isnull(isnull(ParamValue, DefValue),@DefValue) AllowPersonalization from [dbo].[Customer] c join [dbo].[UserGroup] ug on c.CustID=ug.CustID join @tempTable t on ug.CustID=t.CustID and ug.GroupID=t.GroupID left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70(CustType) WHERE c.CustID = @CustID and isnull(isnull(ParamValue, DefValue),@DefValue)=1 and t.PersonalizationEnabledProfileCount>0 ORDER BY GroupName End
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomParamProductConfigurationFindMyOrg_204] ( @UserID NVARCHAR(20), @UserIP VARCHAR(20), @CustID VARCHAR(10), @ProductAllowed BIT, @AuthType VARCHAR(10) ) AS BEGIN DECLARE @Product VARCHAR(10) = 'FindMyOrg'; DECLARE @LogMessage VARCHAR(200); DECLARE @action_type TABLE ( ActionType VARCHAR(50), MarketID VARCHAR(20), DefValue BIT ) /* If ProductAllowed does not equal to default value for the specific market (See the table CustomParamProductConfigurationDefault) This merge adds a new record to the table CustomParamProductConfiguration otherwise it removes the record from the CustomParamProductConfiguration and the default value from the table CustomParamProductConfigurationDefault will be use. */ MERGE CustomParamProductConfiguration AS target USING ( SELECT c.CustID,def.Product,def.ProductAllowed,def.MarketID FROM CustomParamProductConfigurationDefault def INNER JOIN Customer c ON def.MarketID = c.MarketID WHERE c.CustID = @CustID AND def.Product = @Product ) AS source (CustID,Product,ProductAllowed,MarketID) ON target.CustID = source.CustID AND target.Product = source.Product WHEN NOT MATCHED AND source.ProductAllowed <> @ProductAllowed THEN INSERT (CustID,Product,ProductAllowed,AuthType,TimeStamp) VALUES (@CustID,@Product,@ProductAllowed,@AuthType,GETDATE()) WHEN MATCHED AND source.ProductAllowed = @ProductAllowed THEN DELETE OUTPUT $action,source.MarketID,source.ProductAllowed INTO @action_type; DECLARE @ActionType VARCHAR(50) DECLARE @MarketID VARCHAR(20) DECLARE @DefValue BIT SELECT TOP 1 @ActionType = ActionType, @MarketID = MarketID, @DefValue = DefValue FROM @action_type IF @ActionType = 'INSERT' BEGIN SELECT @LogMessage = 'Add Customer Product Settings for FindMyOrg product to the table CustomParamProductConfiguration with ProductAllowed = ' + CONVERT(varchar,@ProductAllowed) END IF @ActionType = 'DELETE' BEGIN SELECT @LogMessage = 'Remove Customer Product Settings for FindMyOrg product from the table CustomParamProductConfiguration. Using the default value ProductAllowed =' + CONVERT(varchar,@ProductAllowed) + ' for market = ' + @MarketID + '. See the table CustomParamProductConfigurationDefault.' END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,@LogMessage,@CustID END
CREATE FUNCTION dbo.EAIF_GetDbLimiterCaption_70(@DbVerNo int, @LimiterNo int, @LangCode varchar(10)) RETURNS nvarchar(100) AS BEGIN DECLARE @Caption nvarchar(100) SELECT @Caption=[dbo].[DbLimiterCaption].[Caption] FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo]=@LimiterNo AND [dbo].[DbLimiterCaption].[LangCode]=@LangCode IF @Caption IS NULL SELECT @Caption=[dbo].[DbLimiterCaption].[Caption] FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo]=@LimiterNo AND [dbo].[DbLimiterCaption].[LangCode]='en' RETURN @Caption END
CREATE PROCEDURE [dbo].[EAUI_DeleteSLDbTarget_78] ( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @DbSourceVerNo int, @DbTargetVerNo int) AS BEGIN DELETE FROM [dbo].[DbSourceTarget] WHERE [dbo].[DbSourceTarget].[SourceDbNo] = @DbSourceVerNo AND [dbo].[DbSourceTarget].[TargetDbNo] = @DbTargetVerNo -- Log activity EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel,'Delete SmartLink Target' END
CREATE PROCEDURE [dbo].[EAIP_GetCfgServerParamList_151](@AppName varchar(20), @SrvName varchar(255)) AS BEGIN DECLARE @SrvNo INT,@AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppName) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppName) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppName IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo) BEGIN RAISERROR('The Server/Label (%s) does not exist.', 16,-1, @SrvName) RETURN END SELECT @SrvNo=[dbo].[ConfigServer].[ServerNo] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo SELECT p.ParamName, [d].[EditControl], ParamValue=ISNULL(ISNULL(convert(nvarchar(2000),s.ParamValue), convert(nvarchar(2000),a.ParamValue)), N''), p.ParamType FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] s ON s.ParamNo = p.ParamNo AND [ParamLevel] = 'S' AND [TargetNo] = @SrvNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo AND [d].[EditControl]<>'Link' UNION SELECT p.ParamName, [d].[EditControl], ParamValue=ISNULL(ISNULL(convert(nvarchar(max),s.ParamValue), convert(nvarchar(max),a.ParamValue)), N''), p.ParamType FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[ConfigParamXmlValues] s ON s.ParamNo = p.ParamNo AND s.ParamLevel = 'S' AND [TargetNo] = @SrvNo LEFT OUTER JOIN [dbo].[ConfigParamXmlValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo AND [d].[EditControl]='Link' END
CREATE PROCEDURE [dbo].[EAUI_GetSearchDatabaseList_70] ( @DbLabel varchar(10) ) AS BEGIN SELECT [a].[DbName], [a].[DbLabel], [a].[DisplayName] + N' (' + [a].[DbName] + N')' as longShortName FROM [dbo].[DbList] a WHERE a.DbLabel = @DbLabel AND a.DbType in (1,3,4) ORDER BY longShortName END
CREATE PROCEDURE [dbo].[EAUI_AddZ3950Vendor_70](@UserId nvarchar(20), @UserIP varchar(15), @VendorID int, @VendorName varchar(100), @CallType varchar(50), @SearchMask varchar(100), @XSLData VARCHAR(MAX)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=@VendorID) BEGIN RAISERROR('The Vendor ID (%d) already exists.', 16,-1, @VendorID ) RETURN END INSERT INTO [dbo].[Z3950Vendors]([dbo].[Z3950Vendors].[VendorID], [dbo].[Z3950Vendors].[VendorName] , [dbo].[Z3950Vendors].[CallType], [dbo].[Z3950Vendors].[SearchMask], [dbo].[Z3950Vendors].[XSL]) VALUES (@VendorID, @VendorName , @CallType, @SearchMask, @XSLData) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Z39.50 Vendors', 'Add Vendor', @VendorID, @VendorName , @CallType, @SearchMask END
CREATE PROCEDURE [dbo].[EW40_GetPrfParamValue](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @ParamName varchar(255)) AS BEGIN DECLARE @ProfNo int SELECT @ProfNo = dbo.EAIF_GetProfNo_70(@CustID,@GroupID,@ProfID) IF @ParamName='LangTransAllowed' SET @ParamName='languageTranslationPermitted' SELECT dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo, @ParamName) END
CREATE PROCEDURE [dbo].[EAIP_AddInterfaceVersion_171] ( @InterfaceID VARCHAR(10), @Version VARCHAR(10), @SiteID VARCHAR(10), @SiteURL VARCHAR(255), @PassingMode VARCHAR(10), @InterfaceName NVARCHAR(100), @ClientType VARCHAR(10)='web', @PersLinkURL VARCHAR(255)='', @SupportDbTitles BIT=0, @DefProfID VARCHAR(10)='', @DefLangCode VARCHAR(10)='en', @NewWin BIT=0, @AutoAddAuth BIT = 1, @AutoAddExp BIT = 1, @IsMobile BIT = 0, @AllowPersonalization BIT=1, @AllowPrimaryDatabases BIT = 0, @InterfaceType TINYINT=0, @PlinkAuthFailureRedirect BIT, @PlinkAuthFailureRedirectURL NVARCHAR(255)=NULL, @MD5TokenSalt VARCHAR(255) = NULL, @HideInterface BIT = 0) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_AddInterface_70] @InterfaceID, @InterfaceID, 'N', @ClientType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[PersistentLinkURL], [dbo].[InterfaceVersion].[SupportDbTitleLists], [dbo].[InterfaceVersion].[DefProfID], [dbo].[InterfaceVersion].[DefLangCode],[dbo].[InterfaceVersion].[NewWin],[dbo].[InterfaceVersion].[AutoAddAuthority], [dbo].[InterfaceVersion].[AutoAddExpanders], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType], [dbo].[InterfaceVersion].[PlinkAuthFailureRedirect], [dbo].[InterfaceVersion].[PlinkAuthFailureRedirectURL], [dbo].[InterfaceVersion].[MD5TokenSalt], [dbo].[InterfaceVersion].[HideInterface]) VALUES (@InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode, @NewWin,@AutoAddAuth,@AutoAddExp,@IsMobile,@AllowPersonalization, @AllowPrimaryDatabases, @InterfaceType, @PlinkAuthFailureRedirect, @PlinkAuthFailureRedirectURL, @MD5TokenSalt, @HideInterface) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) VALUES(@InterfaceID, @Version, 'en', @InterfaceName) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceUserLangList] ([dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version],[dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName],[dbo].[InterfaceUserLangList].[SeqNo]) SELECT @InterfaceID, @Version, [dbo].[LangList].[LangCode], [dbo].[LangList].[Description], [dbo].[LangList].[SeqNo] FROM [dbo].[LangList] IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLinkedTitleList_70]( @SrcTitleNo as int ) AS BEGIN SELECT m.TitleNo, m.Title, cm.Description FROM [dbo].[TitleLink] t INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = t.TgtTitleNo INNER JOIN [dbo].[CharValueMap] cm ON cm.FieldCode = t.LinkType WHERE t.SrcTitleNo = @SrcTitleNo AND cm.FieldName = 'TitleLinkType' END
CREATE PROCEDURE EATL_UpdateGlobalCatalogHoldingTblCaptions_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@LangCode VARCHAR(10) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,CaptionID VARCHAR(10) ,Caption NVARCHAR(2000) ) INSERT INTO #Objects ( CaptionID ,Caption ) SELECT m.c.value('(./CaptionId)[1]', ' varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(2000)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@CaptionID VARCHAR(10) ,@Caption NVARCHAR(2000) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @CaptionID = CaptionID ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalCatalogHoldingTblCaptions_104] @UserID ,@UserIP ,@LangCode ,@CaptionID ,@Caption SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbLastUpdateDate_101](@dbName varchar(10), @dblabel varchar(10)) AS BEGIN -- first get the DbVerNo for the given db name and db label DECLARE @DbVerNo AS INT SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] where [dbo].[DbList].[DbName] = @dbName AND [dbo].[DbList].[DbLabel] = @dblabel -- now get the last update date from the DbVolume table for that DbVerNo -- use TOP 1 from DbVolume because database can have multiple segments but all segments have the same LastUpdateDate value SELECT TOP(1) [dbo].[DbVolume].[LastUpdateDate] from [dbo].[DbVolume] where [dbo].[DbVolume].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalDbSearchTagDetails_82](@Tag varchar(10)) AS BEGIN SELECT [dbo].[GlobalSearchTags].[Tag], [dbo].[GlobalSearchTags].[Description], [dbo].[GlobalSearchTags].[AutoAdd] FROM [dbo].[GlobalSearchTags] WHERE [dbo].[GlobalSearchTags].[Tag]=@Tag END
CREATE PROCEDURE dbo.EAIP_UpdateGlobalLangListOrder_161 ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @LangCodeList VARCHAR(max), @LangOrderList VARCHAR(max) ) AS BEGIN DECLARE @InvalidLanguageCode VARCHAR(max)='' DECLARE @LangList TABLE (SeqNo NVARCHAR(255), LangCode NVARCHAR(10)) INSERT INTO @LangList SELECT CASE WHEN [dbo].[EAIF_GetItemValueTable_70].[Item] IS NULL THEN 1 WHEN [dbo].[EAIF_GetItemValueTable_70].[Item] = '' THEN 1 ELSE [dbo].[EAIF_GetItemValueTable_70].[Item] END AS Item,[dbo].[EAIF_GetItemValueTable_70].[Value] FROM dbo.EAIF_GetItemValueTable_70(@LangOrderList,@LangCodeList,'+') SELECT @InvalidLanguageCode=@InvalidLanguageCode + t.LangCode+',' FROM @LangList t LEFT JOIN [dbo].[LangList] ll ON t.LangCode=ll.LangCode WHERE ll.LangCode IS NULL IF @InvalidLanguageCode <> '' BEGIN set @InvalidLanguageCode = Stuff(@InvalidLanguageCode,LEN(@InvalidLanguageCode),LEN(@InvalidLanguageCode),'') RAISERROR('The Language Code(s):''%s'' does not exist.', 16,-1,@InvalidLanguageCode) RETURN END BEGIN TRY BEGIN TRANSACTION UPDATE [dbo].[LangList] SET [SeqNo] = convert(int, tbl.SeqNo) FROM [dbo].[LangList] lng INNER JOIN @LangList tbl ON lng.LangCode = tbl.LangCode EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Languages','Update Language Order' COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage,@ErrorSeverity,@ErrorState); END CATCH END
CREATE procedure [dbo].[EAUI_UpdateProfileParamScalarValue_912]( @UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamName varchar(100), @ParamValue nvarchar(4000)) AS BEGIN Declare @ParamNo int DECLARE @ProfLogName varchar(40) Set @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'P') SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) If @ParamNo > 0 EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @ParamNo, @ParamValue EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Scalar Profile Parameter',@ProfLogName,@ParamName,@ParamValue END
--sql content merged from file: \Functions\EAIF_GetCustomerParamScalarValue_70.sql CREATE FUNCTION [dbo].[EAIF_GetCustomerParamScalarValue_70]( @CustID varchar(10), @ParamName varchar(100) ) RETURNS nvarchar(4000) AS BEGIN DECLARE @CustNo int DECLARE @STMode char(1) DECLARE @MarketID varchar(20) SELECT @CustNo = [dbo].[Customer].[CustNo], @MarketID=[dbo].[Customer].[MarketID],@STMode= CASE [dbo].[Customer].[CustType] WHEN 'T' THEN 'T' ELSE 'S' END FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID return dbo.EAIF_GetCustomParamScalarValue_70(@ParamName,'all','all',@MarketID, @STMode,@CustNo,'C') END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseFieldTag_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseFieldTag_70](@DbVerNo int, @SegName varchar(10), @FieldTag varchar(2) ) AS BEGIN SELECT [dbo].[DbFieldTag].[Category], [dbo].[DbFieldTag].[Description2], [dbo].[DbFieldTag].[IndexType], [dbo].[DbFieldTag].[FieldNumbers], [dbo].[DbFieldTag].[ThesNumber] FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName AND [dbo].[DbFieldTag].[FieldTag]=@FieldTag END
CREATE PROCEDURE [dbo].[EAIP_UpdateCfgAppServer_151](@UserID nvarchar(20), @UserIP varchar(15), @AppId varchar(20), @ServerURI varchar(255), @NewServerURI varchar(255), @Description varchar(255), @ServerType char, @Status char ) AS BEGIN DECLARE @SrvNo INT, @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@ServerURI AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo) BEGIN RAISERROR('The Server/Label (%s) does not exist.', 16,-1, @ServerURI) RETURN END SELECT @SrvNo=[dbo].[ConfigServer].[ServerNo] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@ServerURI AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo EXEC [dbo].[EAUI_UpdateCfgAppServer_74] @UserID, @UserIP, @SrvNo, @NewServerURI, @Description, @ServerType, @Status END
Create Procedure [dbo].[EAIP_GetPersonalizationEnabledProfileCount_100] (@ConsortiumCustomerIds varchar(max)) As Begin DECLARE @ParamNo int declare @DefValue varchar(4000) Declare @Count int SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' Select @Count=Count(*) FROM dbo.EAIF_GetItemTable_70(@ConsortiumCustomerIds, ',') s join [dbo].[Customer] c on s.Item=c.CustID join [dbo].[UserGroup] ug on c.CustID=ug.CustID join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70([c].[CustType]) WHERE isnull(isnull([val].[ParamValue], [dval].[DefValue]),@DefValue)=1 and c.CustID<>'' select @Count End
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomParamProductConfigurationGeneric_204] @UserID NVARCHAR(20), @UserIP VARCHAR(20), @CustID VARCHAR(10), @Product VARCHAR(10), @CurrentSite BIT, @ChildSites BIT, @AuthType VARCHAR(10), @LibraryLogoUrl NVARCHAR(500), @DisplayName NVARCHAR(100), @ProxyID VARCHAR(255), @LoginText NVARCHAR(500), @UpdateChildSites BIT AS BEGIN DECLARE @LogMessage VARCHAR(200), @TimeStamp DATETIME; IF @AuthType <> 'ip' OR LEN(@ProxyID)=0 SET @ProxyID = NULL; IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID AND [dbo].[Customer].[CustName] = @DisplayName) SET @DisplayName = NULL; SET @TimeStamp = GetDate(); SELECT @LogMessage = 'Modify Customer Product Settings' UPDATE [dbo].[CustomParamProductConfiguration] SET [dbo].[CustomParamProductConfiguration].[ProductAllowed] = @CurrentSite, [dbo].[CustomParamProductConfiguration].[ProductForChildrenAllowed] = @ChildSites, [dbo].[CustomParamProductConfiguration].[AuthType] = @AuthType, [dbo].[CustomParamProductConfiguration].[DisplayName] = @DisplayName, [dbo].[CustomParamProductConfiguration].[ProxyID] = @ProxyID, [dbo].[CustomParamProductConfiguration].[LoginText] = @LoginText, [dbo].[CustomParamProductConfiguration].[LibraryLogoUrl] = @LibraryLogoUrl, [dbo].[CustomParamProductConfiguration].[TimeStamp] = @TimeStamp WHERE [dbo].[CustomParamProductConfiguration].[CustID] = @CustID AND [dbo].[CustomParamProductConfiguration].[Product] = @Product; IF @@ROWCOUNT = 0 BEGIN SELECT @LogMessage = 'Add Customer Product Settings' INSERT INTO [dbo].[CustomParamProductConfiguration]( [dbo].[CustomParamProductConfiguration].[CustID], [dbo].[CustomParamProductConfiguration].[Product], [dbo].[CustomParamProductConfiguration].[ProductAllowed], [dbo].[CustomParamProductConfiguration].[ProductForChildrenAllowed], [dbo].[CustomParamProductConfiguration].[AuthType], [dbo].[CustomParamProductConfiguration].[DisplayName], [dbo].[CustomParamProductConfiguration].[ProxyID], [dbo].[CustomParamProductConfiguration].[LoginText], [dbo].[CustomParamProductConfiguration].[LibraryLogoUrl], [dbo].[CustomParamProductConfiguration].[TimeStamp] ) VALUES ( @CustID, @Product, @CurrentSite, @ChildSites, @AuthType, @DisplayName, @ProxyID, @LoginText, @LibraryLogoUrl, @TimeStamp ) END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,@LogMessage,@CustID IF @UpdateChildSites = 1 Begin UPDATE [dbo].[CustomParamProductConfiguration] SET [ProductAllowed] = @ChildSites, [TimeStamp] = @TimeStamp FROM [dbo].[CustomParamProductConfiguration] pc JOIN [dbo].[CustomerGroup] cg ON pc.CustID = cg.ChildID WHERE pc.[Product] = @Product AND cg.ParentID = @CustID AND cg.ParentID <> cg.ChildID; INSERT INTO [dbo].[CustomParamProductConfiguration] ([pc].[CustID], [pc].[Product], [pc].[ProductAllowed], [pc].[TimeStamp]) SELECT [cg].[ChildID], @Product, @ChildSites, @TimeStamp FROM [dbo].[CustomerGroup] cg LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc ON cg.ChildID=pc.CustID AND pc.[Product] = @Product WHERE cg.ParentID = @CustID AND cg.ParentID <> cg.ChildID AND pc.CustID IS NULL; END END
/* The next set of procedure deal with Limiters and retrieving th eproper Limiter Info for a given Catalog. Prior to change Catalogs treated as Connectors. */ -- EAIF_GetDbLimiterCaptions_70 -- called from EPCS_GetDbLimiters_70 and EPCS_GetDbLimiters_76 CREATE FUNCTION [dbo].[EAIF_GetDbLimiterCaptions_70](@DbVerNo int, @LimiterNo int) RETURNS nvarchar(max) AS BEGIN Declare @SourceType char(1) select @SourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Captions nvarchar(max) SET @Captions=N'' if @SourceType in ('M') Begin SELECT @Captions = @Captions + N''+a.Caption +N' ' FROM [dbo].[MDbLimitersExternalSourceCaption] a WHERE [a].[LimiterNo]=@LimiterNo End else Begin SELECT @Captions = @Captions + N''+a.Caption +N' ' FROM [dbo].[DbLimiterCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[LimiterNo]=@LimiterNo End Return @Captions End
CREATE PROCEDURE [dbo].[EAUI_DeleteTopic_77] (@UserID nvarchar(20), @UserIP varchar(30),@TopicNo int) AS BEGIN DECLARE @TopicID varchar(10) DECLARE @TopicCaption nvarchar(255) SELECT @TopicID = tl.TopicID, @TopicCaption = tc.Caption FROM dbo.TopicList tl INNER JOIN dbo.TopicCaption tc ON tl.TopicNo = tc.TopicNo WHERE tl.TopicNo = @TopicNo AND tc.LangCode = 'en' BEGIN TRANSACTION delete dbo.TopicList WHERE [dbo].[TopicList].[ParentTopicNo]=@TopicNO IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END delete dbo.TopicList WHERE [dbo].[TopicList].[TopicNo]=@TopicNO IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID ,@UserIP,'Topics','Delete Topic',@TopicID,@TopicCaption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetChangedCustomersForFMO_253] @pageIndex INT = 0, @pageSize INT = 10, @dateModified DATETIME2 AS DECLARE @totalCustCount INT, @findMyOrgProd VARCHAR(10) = 'FindMyOrg', @defaultProfileParamNo INT; BEGIN SET @defaultProfileParamNo = dbo.eaif_getcustomparamnumber_70('defaultProfileForEbscoMobileApp','G'); CREATE TABLE #changedcustomers ( custid VARCHAR(10), [action] VARCHAR(1) DEFAULT 'U' ); CREATE TABLE #changedcustomersdata ( custid VARCHAR(10), [action] VARCHAR(1) DEFAULT NULL, custname NVARCHAR(100), custtype CHAR(1), marketid VARCHAR(20), address1 VARCHAR(80), address2 VARCHAR(80), address3 VARCHAR(80), city VARCHAR(80), subdivisionid NVARCHAR(100), postalcode VARCHAR(15), countryname NVARCHAR(100) ); CREATE TABLE #defaultprofiledata ( custid VARCHAR(10), profid VARCHAR(10) ); CREATE TABLE #findmyorgdata ( custid VARCHAR(10), isfindmyorg INT ); CREATE CLUSTERED INDEX [IX_TempChangedCustomes_CustID] ON #changedcustomers ( custid ); CREATE CLUSTERED INDEX [IX_TempChangedCustomerData_CustID] ON #changedcustomersdata ( custid ); CREATE CLUSTERED INDEX [IX_TempDefaultProfiledata_CustID] ON #defaultprofiledata ( custid ); CREATE CLUSTERED INDEX [IX_TempFindMyOrgdata_CustidID] ON #findmyorgdata ( custid ); IF @dateModified IS NOT NULL BEGIN INSERT INTO #changedcustomers SELECT custid, [action] FROM ( SELECT custid, [action], datemodified, Row_number() OVER ( partition BY custid ORDER BY datemodified DESC) rownum FROM dbo.changedcustomers WITH (nolock)) cc WHERE rownum = 1 AND cc.datemodified>=@dateModified ORDER BY cc.custid ASC offset @pageIndex * @pageSize rows FETCH next @pageSize rows only SET @totalCustCount = ( SELECT Count(DISTINCT(custid)) FROM dbo.changedcustomers cc WHERE cc.datemodified>=@dateModified) END ELSE BEGIN INSERT INTO #changedcustomers ( custid ) SELECT custid FROM dbo.customer c WITH (nolock) WHERE c.custid <> '' ORDER BY c.custid ASC offset @pageIndex * @pageSize rows FETCH next @pageSize rows only SET @totalCustCount = ( SELECT Count(*) FROM dbo.customer c WITH (nolock) WHERE c.custid <> '') END; INSERT INTO #changedcustomersdata SELECT cc.custid, cc.[action], c.custname, c.custtype, c.marketid, ca.address1, ca.address2, ca.address3, ca.city, ca.[state], ca.postalcode, ct.countryname FROM #changedcustomers cc LEFT OUTER JOIN dbo.customer c WITH (nolock) ON cc.custid = c.custid LEFT OUTER JOIN dbo.custaddress ca WITH (nolock) ON cc.custid = ca.custid LEFT OUTER JOIN dbo.country ct ON ct.countryid = ca.countryid; INSERT INTO #defaultprofiledata SELECT cc.custid AS custid, p.profid AS profid FROM #changedcustomers cc INNER JOIN [dbo].[usergroup] ug WITH (nolock) ON ug.custid = cc.custid INNER JOIN [dbo].customparamscalarvalues cp ON ug.groupno = cp.targetno INNER JOIN [dbo].[profile] p WITH (nolock) ON p.profno = COALESCE(cp.paramvalue, '0') WHERE ug.groupid = 'main' AND cp.paramno = @defaultProfileParamNo INSERT INTO #findmyorgdata SELECT ccd.custid, Isnull(pc.productallowed, pcd.productallowed) isfindmyorg FROM #changedcustomersdata ccd INNER JOIN [dbo].[customparamproductconfigurationdefault] pcd ON ccd.marketid = pcd.marketid LEFT OUTER JOIN [dbo].[customparamproductconfiguration] pc ON ccd.custid = pc.custid AND pcd.product = pc.product WHERE pcd.product = @findMyOrgProd SELECT ccd.custid , custname , marketid , custtype , isfindmyorg , countryname , subdivisionid , city , postalcode , address1 , address2 , address3 , [action] , dfd.profid AS defaultprofile, NULL totalcount FROM #changedcustomersdata ccd LEFT OUTER JOIN #findmyorgdata fmd ON ccd.custid = fmd.custid LEFT OUTER JOIN #defaultprofiledata dfd ON dfd.custid = ccd.custid UNION ALL SELECT NULL custid , NULL custname , NULL marketid , NULL custtype, NULL isfindmyorg , NULL countryname , NULL subdivisionid , NULL city , NULL postalcode , NULL address1 , NULL address2 , NULL address3 , NULL [action] , NULL defaultprofile, Isnull(@totalCustCount,0) AS totalcount END
CREATE PROCEDURE [dbo].[EAUI_GetSearchOptionTypes_76] AS BEGIN SELECT [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description] FROM [dbo].[StringValueMap] WHERE [dbo].[StringValueMap].[FieldName]='SearchOptionType' ORDER BY [dbo].[StringValueMap].[Description] END
CREATE PROCEDURE [dbo].[EAUI_ApplySourceLinkProfileToAllSites_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @SourceLinkProfile nvarchar(40)) AS BEGIN DECLARE @CustChildID varchar(10) DECLARE @GroupID varchar(10) DECLARE Group_Cursor CURSOR FOR SELECT a.CustID, a.GroupID FROM [dbo].[UserGroup] a INNER JOIN [dbo].[CustomerGroup] b ON a.CustID = b.ChildID WHERE b.ParentID = @CustID BEGIN TRANSACTION OPEN Group_Cursor FETCH NEXT FROM Group_Cursor WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM Group_Cursor INTO @CustChildID,@GroupID EXEC [dbo].[EAIP_UpdateGroupParamScalarValue_70] @CustChildID, @GroupID,'linkSourceProfile', @SourceLinkProfile END CLOSE Group_Cursor DEALLOCATE Group_Cursor EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Applied SourceLinkProfile To All Sites', @CustID, @SourceLinkProfile COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EW43_GetPrfDatabases](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) as BEGIN Declare @EnforceSimUsage bit SET @EnforceSimUsage = CONVERT(BIT, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID, 'EnforceSimUsage') ) SELECT [mdb].[DbName] as 'ShortDbName', [mdb].[DisplayName] as 'LongDBName', IsNull([pdb].[SelDefault],0) as SelDefault, mdb.EnforceSimUsage & @EnforceSimUsage as 'EnforceSimUsage', [pdb].[CtrlCustID], [mdb].[DbType] as 'DatabaseType', [mdb].[ContentType] FROM [dbo].[ProfDatabase] pdb INNER JOIN [dbo].[DbList] mdb ON pdb.DbVerNo=mdb.DbVerNo WHERE pdb.ProfNo=dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) AND pdb.Enable=1 ORDER by [pdb].[SeqNo] END
--sql content merged from file: \StoredProcedures\EAIP_AddInterfaceVersion_70.sql CREATE PROCEDURE [dbo].[EAIP_AddInterfaceVersion_70] ( @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @ClientType varchar(10)='web', @PersLinkURL varchar(255)='', @SupportDbTitles bit=0, @DefProfID varchar(10)='', @DefLangCode varchar(10)='en', @NewWin bit=0, @AutoAddAuth bit = 1, @AutoAddExp bit = 1, @IsMobile bit = 0, @AllowPersonalization bit=1, @AllowPrimaryDatabases bit = 0, @InterfaceType tinyint=0) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_AddInterface_70] @InterfaceID, @InterfaceID, 'N', @ClientType IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[PersistentLinkURL], [dbo].[InterfaceVersion].[SupportDbTitleLists],[dbo].[InterfaceVersion].[DefProfID], [dbo].[InterfaceVersion].[DefLangCode],[dbo].[InterfaceVersion].[NewWin],[dbo].[InterfaceVersion].[AutoAddAuthority], [dbo].[InterfaceVersion].[AutoAddExpanders], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType]) VALUES (@InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode,@NewWin,@AutoAddAuth,@AutoAddExp,@IsMobile,@AllowPersonalization, @AllowPrimaryDatabases, @InterfaceType) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) VALUES(@InterfaceID, @Version, 'en', @InterfaceName) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceUserLangList] ([dbo].[InterfaceUserLangList].[InterfaceID],[dbo].[InterfaceUserLangList].[Version],[dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName],[dbo].[InterfaceUserLangList].[SeqNo]) SELECT @InterfaceID, @Version, [dbo].[LangList].[LangCode], [dbo].[LangList].[Description], [dbo].[LangList].[SeqNo] From [dbo].[LangList] IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLinkSourceProfileList_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN IF (dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'hasLinkSource') = '1') BEGIN SELECT [a].[ProfName], [a].[ProfNo], [a].[CustID]+'.'+[a].[GroupID]+'.'+[a].[ProfID] AS ProfID FROM [dbo].[Profile] a INNER JOIN [dbo].[Interface] b ON a.InterfaceID = b.InterfaceID WHERE [a].[CustID] = @CustID AND [a].[GroupID] = @GroupID AND b.ClientType='web' ORDER BY [a].[ProfName] END SELECT [a].[ProfName], [a].[ProfNo], [a].[CustID]+'.'+[a].[GroupID]+'.'+[a].[ProfID] AS ProfID FROM [dbo].[CustomerGroup] g INNER JOIN [dbo].[Profile] a ON g.ParentID= a.CustID INNER JOIN [dbo].[Interface] b ON a.InterfaceID = b.InterfaceID WHERE g.ChildID=@CustID AND a.CustID <> @CustID AND a.GroupID = @GroupID AND b.ClientType='web' AND dbo.EAIF_GetCustomerParamScalarValue_70(g.ParentID,'hasLinkSource') = '1' ORDER BY g.ParentID, [a].[ProfName] END
CREATE PROCEDURE [dbo].[EATL_UpdateGlobalCluster_80](@UserID nvarchar(20), @UserIP varchar(10), @ClusterID varchar(20), @Caption nvarchar(255), @Lang varchar(10))AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID]=@ClusterID) RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID]=@ClusterID AND [dbo].[GlobalClusterCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[GlobalClusterCaption] SET [dbo].[GlobalClusterCaption].[Caption]=@Caption WHERE [dbo].[GlobalClusterCaption].[ID]=@ClusterID AND [dbo].[GlobalClusterCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Cluster Caption' END ELSE BEGIN INSERT INTO [dbo].[GlobalClusterCaption] ([dbo].[GlobalClusterCaption].[ID],[dbo].[GlobalClusterCaption].[LangCode],[dbo].[GlobalClusterCaption].[Caption]) VALUES (@ClusterID,@Lang,@Caption) SET @LogFlag ='Translate(Insert) Cluster Caption' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @ClusterID, @LogFlag, 'Lang:', @Lang, 'Caption:', @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDbLastUpdateDates_104](@dbName varchar(10), @dblabel varchar(10)) AS BEGIN -- LastDDSUpdateDate (DBVolume.LastUpdateDate) -- LastPromoteDate (DbList.LastUpdateDate) -- use TOP 1 from DbVolume because database can have multiple segments but all segments have the same LastUpdateDate value -- If the date column has NULL, send it as is. C# code would change the output to zero. SELECT TOP(1) v.LastUpdateDate, d.LastUpdateDate as LastPromoteDate from [dbo].[DbList] d LEFT OUTER JOIN [dbo].[DbVolume] v on d.DbVerNo = v.DbVerNo where d.DbName = @dbName AND [d].[DbLabel] = @dblabel END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalDbSearchTagForAttach_82](@InterfaceID varchar(10),@Version varchar(10)) AS BEGIN SELECT gt.Tag, gt.Tag+N' ('+gt.Description+N')' As Description FROM [dbo].[GlobalSearchTags] gt LEFT OUTER JOIN [dbo].[InterfaceSearchTags] it ON gt.Tag=it.Tag AND it.InterfaceID=@InterfaceID AND it.Version=@Version WHERE gt.AutoAdd=0 AND it.Tag is null ORDER BY gt.Tag END
--sql content merged from file: \StoredProcedures\EAIP_UpdateGroupParamScalarValue_70.sql CREATE PROCEDURE [dbo].[EAIP_UpdateGroupParamScalarValue_70](@CustID varchar(10), @GroupID varchar(10),@ParamName varchar(100), @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ParamNo int DECLARE @GroupNo int DECLARE @STMode char(1) DECLARE @MarketID varchar(20) SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID,@GroupID) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'G') SELECT @MarketID=[dbo].[Customer].[MarketID],@STMode=dbo.EAIF_CustTypeToSTMode_70([dbo].[Customer].[CustType]) FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID IF ( SELECT [b].[DefValue] FROM [dbo].[CustomParamDefaults] b WHERE [b].[ParamNo] = @ParamNo AND [b].[InterfaceID]='all' AND [b].[Version]='all' AND [b].[MarketID]=@MarketID and [b].[STMode]=@STMode ) = @ParamValue EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @GroupNo,'G',@ParamNo ELSE EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @GroupNo,'G',@ParamNo,@ParamValue END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileParamScalarValue_WithNoCheckForDefValue_131](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @ParamLevel char (1) DECLARE @ParamName varchar(100) DECLARE @ParamType char(1) DECLARE @DefValue nvarchar(2000) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo Begin Try BEGIN TRANSACTION -- Note: Part of EADM-3678 fix. -- What- Add the parameter to the profile interface, if the parameter is not attached to that interface yet. -- Why - Parameter "newContentAutoAddToProfile" should be attached to all interfaces.This paramter should always show on profile Database tab. -- When the parameter is not attached to the profile interface, it causes an error on submit. -- This parameter has been attached to all existing interfaces at the time of release 13.1. However, this logic -- is needed for the newly added interface.This logic would get executed only once for the new interface profile, -- when it is customized on database tab. IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceParamList].[Version]=@Version AND [dbo].[InterfaceParamList].[ParamNo]=@ParamNo) BEGIN SELECT @ParamLevel=[dbo].[CustomParamList].[ParamLevel],@ParamName=[dbo].[CustomParamList].[ParamName],@ParamType=[dbo].[CustomParamList].[ParamType],@DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_AddCustomParam_70] @ParamLevel,@ParamName,@ParamType,@InterfaceID,@Version,@DefValue,0,2 --Last two parameters: UpdateForNewParamOnly and Editlevel EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Parameter attached to Interface',@ParamName,@InterfaceId,@Version,@DefValue END -- EADM 3678 fix end EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @ProfNo,'P',@ParamNo,@ParamValue SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Modify Scalar Profile Parameter with no default value Delete',@ProfLogName,@ParamName,@ParamValue COMMIT TRANSACTION end try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch END
CREATE FUNCTION dbo.EAIF_GetDirectURL_70 (@JournalReq varchar(50)) RETURNS varchar(255) AS BEGIN DECLARE @SiteURL varchar(255) IF @JournalReq <> '' SET @SiteURL=dbo.EAIF_GetConfigApplicationParamScalarValue_70('webauth', 'directURLJN') IF @SiteURL IS NULL OR @SiteURL =' ' SET @SiteURL=dbo.EAIF_GetConfigApplicationParamScalarValue_70('webauth', 'directURL') return @SiteURL END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseFieldTagList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseFieldTagList_70]( @DbVerNo int, @SegName varchar(10), @Category int ) AS BEGIN SELECT [dbo].[DbFieldTag].[SeqNo], [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[Description2], [dbo].[DbFieldTag].[IndexType], [dbo].[DbFieldTag].[FieldNumbers], [dbo].[DbFieldTag].[ThesNumber] FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName AND [dbo].[DbFieldTag].[Category]=@Category ORDER BY [dbo].[DbFieldTag].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_UpdateCfgServerScalarParam_151](@UserId nvarchar(20), @UserIP varchar(15), @AppId varchar(20), @SrvId varchar(255), @ParamName varchar(100), @Value nvarchar(max), @ApplyToAll bit = 0) AS BEGIN DECLARE @AppNo INT, @SrvNo INT, @ParamNo INT, @ParamType CHAR(1) IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvId AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo) BEGIN RAISERROR('The Server/Label (%s) does not exist.', 16,-1, @SrvId) RETURN END SELECT @SrvNo=[dbo].[ConfigServer].[ServerNo] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvId AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName AND p.ApplicationNo= @AppNo ) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END SELECT @ParamNo=p.ParamNo,@ParamType=p.ParamType FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName AND p.ApplicationNo= @AppNo IF @ParamType='X' EXEC [dbo].[EAUI_UpdateCfgServerXMLParam_70] @UserId, @UserIP, @SrvNo, @ParamNo, '', @Value, @ApplyToAll ELSE IF LEN(@Value)>2000 BEGIN RAISERROR('The Parameter (%s) should not exceed 2000 characters.', 16,-1, @ParamName) RETURN END EXEC [dbo].[EAUI_UpdateCfgServerScalarParam_70] @UserId, @UserIP, @SrvNo, @ParamNo, @Value, @ApplyToAll END
CREATE PROCEDURE [dbo].[EAIP_GetPersonalizationEnabledProfileList_100](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SELECT [p].[ProfNo], [p].[ProfName], [p].[ProfID], p.InterfaceID+CASE WHEN p.Version='live' THEN ''ELSE '/'+p.Version END AS InterfaceID FROM [dbo].[Profile] p left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version WHERE [p].[CustID]=@CustID AND [p].[GroupID]=@GroupID and iv.AllowPersonalization=1 ORDER BY [p].[ProfName] END
--sql content merged from file: \StoredProcedures\EAUI_UpdateCustomParamScalarValues_89.sql CREATE Procedure [dbo].[EAUI_UpdateCustomParamScalarValues_89] (@UserID nvarchar(20), @UserIP varchar(20), @TargetNo int, @ParamLevel char(1), @ParamNo int, @ParamValue nvarchar(4000)) as EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @TargetNo, @ParamLevel, @ParamNo, @ParamValue EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'CustomParamScalarFields', 'Set Target Default Values', @TargetNo, @ParamLevel, @ParamNo, @ParamValue
CREATE FUNCTION [dbo].[EAIF_GetDbLimiterDefaults_70](@DbVerNo int) RETURNS varchar(8000) AS BEGIN DECLARE @LimitList varchar(8000) SELECT @LimitList = ISNULL( (@LimitList+','+SUBSTRING(b.SearchString,1,2)), SUBSTRING(b.SearchString,1,2) ) FROM [dbo].[DbList] a INNER JOIN [dbo].[DbLimiter] b ON a.DbVerNo=b.DbVerNo INNER JOIN [dbo].[LimiterDefaults] c ON b.LimiterNo=c.LimiterNo WHERE a.DbVerNo=@DbVerNo AND c.BitFlag1=1 AND c.InterfaceID='ehost' AND c.Version='live' AND c.MarketID='academic' RETURN @LimitList END
CREATE PROCEDURE [dbo].[EAUI_DeleteUserGroup_100](@UserID nvarchar(20), @UserIP varchar(15),@CustID varchar(10), @GroupID varchar(10)) AS BEGIN Begin Try DELETE FROM [dbo].[UserGroup] Where [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID] = @GroupID EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Delete Customer Group', @CustID, @GroupID End Try Begin catch DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\AUTH_GetAuthDebugCustGroupDetails_94.sql CREATE procedure [dbo].[AUTH_GetAuthDebugCustGroupDetails_94] ( @p_CustID varchar(10), @p_GroupID varchar(10), @p_DbGroupCode varchar(255)='', @p_InterfaceID varchar(25)='', @IsMobile bit=0 ) as begin set nocount on declare @InterfaceID varchar(10), @Version varchar(10) if charindex('-', @p_InterfaceID) >0 begin set @InterfaceID = substring(@p_InterfaceID, 1, charindex('-',@p_InterfaceID) - 1) set @Version = substring(@p_InterfaceID, charindex( '-',@p_InterfaceID )+1, len(@p_InterfaceID)) end else begin set @InterfaceID = '' set @Version = 'live' end declare @DbGroupCode table(DbGroupCode varchar(12), DefGrNo int) insert into @DbGroupCode select t.Item, g.GroupNo from dbo.EAIF_GetItemTable_70(@p_DbGroupCode,',')t left outer join [dbo].[GroupList] g on t.Item=g.GroupID declare @Prof table (ProfNo int, ProfID varchar(10), ProfPwd nvarchar(50), SiteURL varchar(255), InterfaceID varchar(10), ssl bit) insert into @Prof exec [dbo].[AUTH_GetPersLinkProfileForDbGroupSsl_94] @p_CustID,@p_GroupID,@p_DbGroupCode,@p_InterfaceID, @IsMobile declare @tbl_ProfDetail table ( SeqNo smallint, ProfNo int, ProfID varchar(10), AllowPlinks bit, ShowDefEPGroup bit, InterfaceID varchar(10), Version varchar(10), DbName varchar(10), AED datetime, [Enabled] bit, Mode char(1), EPDbGroupID varchar(12), ShowEPDbGrp bit, UserDbGroupNo int, ShowUserDbGrp bit, UseHttps int ) if exists(select 1 from @Prof) Begin Declare @ProfNo int Select @ProfNo=ProfNo from @Prof /*User-defined group*/ if exists(select 1 from @DbGroupCode where DefGrNo is null) insert into @tbl_ProfDetail select prof.SeqNo, prof.ProfNo, prof.ProfID, [AllowPlinks] = dbo.EAIF_GetCustomParamScalarValue_70('persistentLinkProfile', prof.InterfaceID, prof.Version, prof.MarketID, prof.STMode, prof.ProfNo, 'P'), [ShowDefEPGroup] = dbo.EAIF_GetCustomParamScalarValue_70('showDefaultEPDatabaseGroup', prof.InterfaceID, prof.Version, prof.MarketID, prof.STMode, prof.ProfNo, 'P'), prof.InterfaceID, prof.Version, dblt.DbName, pfdb.AccessEndDate, pfdb.Enable, pfdb.Mode, '', 0, pcgl.GroupNo, pcgl.Show, [UseHttps] = dbo.EAIF_GetCustomParamScalarValue_70('useHttpsAuthentication', prof.InterfaceID, prof.Version, prof.MarketID, prof.STMode, prof.ProfNo, 'P') from dbo.Profile AS prof INNER JOIN dbo.ProfDatabase AS pfdb ON prof.ProfNo = pfdb.ProfNo INNER JOIN dbo.DbList AS dblt ON pfdb.DbVerNo = dblt.DbVerNo INNER JOIN dbo.ProfCustGroupList AS pcgl ON pcgl.ProfNo = prof.ProfNo INNER JOIN dbo.ProfCustGroupDb AS pcgd ON pfdb.DbVerNo = pcgd.DbVerNo AND pfdb.ProfNo = pcgd.ProfNo INNER JOIN @DbGroupCode AS g ON cast(pcgl.GroupNo as varchar) = g.DbGroupCode AND g.DbGroupCode = pcgd.GroupNo where pcgl.Show = 1 and pfdb.Enable = 1 and (pfdb.Mode is null or pfdb.Mode = 'S' or pfdb.Mode = 'I') and (pfdb.AccessEndDate is null or datediff(hh, pfdb.AccessEndDate, getdate()) <= 0) and prof.ProfNo=@ProfNo and g.DefGrNo is null if exists(select 1 from @DbGroupCode where DefGrNo is not null) insert into @tbl_ProfDetail select distinct prof.SeqNo, prof.ProfNo, prof.ProfID, [AllowPlinks] = dbo.EAIF_GetCustomParamScalarValue_70('persistentLinkProfile', prof.InterfaceID, prof.Version, prof.MarketID, prof.STMode, prof.ProfNo, 'P'), [ShowDefEPGroup] = dbo.EAIF_GetCustomParamScalarValue_70('showDefaultEPDatabaseGroup', prof.InterfaceID, prof.Version, prof.MarketID, prof.STMode, prof.ProfNo, 'P'), prof.InterfaceID, prof.Version, dblt.DbName, pfdb.AccessEndDate, pfdb.Enable, pfdb.Mode, a.GroupID, 1, '', 0, [UseHttps] = dbo.EAIF_GetCustomParamScalarValue_70('useHttpsAuthentication', prof.InterfaceID, prof.Version, prof.MarketID, prof.STMode, prof.ProfNo, 'P') from dbo.Profile AS prof INNER JOIN dbo.ProfDatabase AS pfdb ON prof.ProfNo = pfdb.ProfNo INNER JOIN dbo.DbList AS dblt ON pfdb.DbVerNo = dblt.DbVerNo INNER JOIN dbo.DbGroup AS dbg ON dblt.DbVerNo = dbg.DbVerNo INNER JOIN ( select gl.GroupID, gl.GroupNo from dbo.GroupList gl join @DbGroupCode g on g.DefGrNo = gl.GroupNo and g.DbGroupCode = gl.GroupID left join dbo.ProfGroupList pgl on pgl.GroupNo = gl.GroupNo where pgl.Show <> 0 and g.DefGrNo is not null ) AS a ON a.GroupNo = dbg.GroupNo where pfdb.Enable = 1 and (pfdb.Mode is null or pfdb.Mode = 'S' or pfdb.Mode = 'I') and (pfdb.AccessEndDate is null or datediff(hh, pfdb.AccessEndDate, getdate()) <= 0) and prof.ProfNo=@ProfNo end select * from @tbl_ProfDetail set nocount off end
CREATE PROCEDURE [dbo].[EAIP_GetChangedNewEdsProfiles_214] @dateModified DATETIME2(7), @pageIndex INT = 1, @pageSize INT = 100 AS BEGIN DECLARE @UiStatus CHAR(8) = 'uiStatus'; DECLARE @UiStatusNo INT = [dbo].[EAIF_GetCustomParamNumber_70](@UiStatus, 'P'); DECLARE @UiStatusCustomParamListDefValue NVARCHAR(1) = (SELECT cpl.DefValue FROM dbo.CustomParamList cpl WHERE cpl.ParamNo = @UiStatusNo); CREATE TABLE #ChangedCustomParam ( DateModified DATETIME2(7) ,TargetNo INT ,ParamName VARCHAR(100) ,OldValue VARCHAR(10) ,NewValue VARCHAR(10) ); CREATE CLUSTERED INDEX [IX_TempChangedCustomParam_DateModified] ON #ChangedCustomParam (DateModified); INSERT INTO #ChangedCustomParam SELECT DateModified, TargetNo, ParamName, FirstOldValue AS OldValue, LastNewValue AS NewValue FROM ( SELECT DateModified ,TargetNo ,ParamName ,ROW_NUMBER() OVER (PARTITION BY TargetNo, ParamName ORDER BY SeqId DESC) AS RowNum ,FIRST_VALUE(OldValue) OVER(PARTITION BY TargetNo, ParamName ORDER BY SeqId ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS FirstOldValue ,LAST_VALUE(NewValue) OVER(PARTITION BY TargetNo, ParamName ORDER BY SeqId ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) AS LastNewValue FROM ( SELECT * FROM dbo.ChangedCustomParamScalarValues cpv WHERE cpv.DateModified > @dateModified ) cpv ) cp WHERE RowNum = 1 AND ISNULL(FirstOldValue, '') <> ISNULL(LastNewValue, ''); CREATE TABLE #ChangedProfile ( DateModified DATETIME2(7) NOT NULL ,ProfNo INT NOT NULL ,CustID VARCHAR(10) NOT NULL ,GroupID VARCHAR(10) NOT NULL ,ProfID VARCHAR(10) NOT NULL ,InterfaceID VARCHAR (10) NULL ,Version VARCHAR (10) NULL ,MarketID VARCHAR (20) NULL ,STMode CHAR (1) NULL ,DbLabel VARCHAR (10) NULL ,ProfName NVARCHAR (255) NULL ,DefLangCode VARCHAR (10) NULL ,SeqNo SMALLINT NULL ,URL NVARCHAR (255) NULL ,IsDeleted INT NOT NULL ,UiStatus NVARCHAR(1) NULL ,CONSTRAINT [PK_TmpChangedProfile] PRIMARY KEY CLUSTERED ([ProfNo] ASC) WITH (FILLFACTOR = 90) ) INSERT INTO #ChangedProfile SELECT DateModified ,ProfNo ,CustID ,GroupID ,ProfID ,InterfaceID ,Version ,MarketID ,STMode ,DbLabel ,ProfName ,DefLangCode ,SeqNo ,URL ,IsDeleted ,NULL AS UiStatus FROM ( SELECT * ,ROW_NUMBER() OVER (PARTITION BY CustID, GroupID, ProfID ORDER BY SeqId DESC) RowNum FROM dbo.ChangedProfile WHERE DateModified > @dateModified ) cp WHERE RowNum = 1 CREATE TABLE #AggregatedProfile ( DateModified DATETIME2(7) ,ProfNo INT ,CustID VARCHAR(10) ,GroupID VARCHAR(10) ,ProfID VARCHAR(10) ,InterfaceID VARCHAR(10) ,Version VARCHAR(10) ,MarketID VARCHAR(20) ,STMode CHAR(10) ,DbLabel VARCHAR(10) ,ProfName NVARCHAR(255) ,DefLangCode VARCHAR(10) ,SeqNo SMALLINT ,URL NVARCHAR(255) ,UiStatus NVARCHAR(1) ,IsDeleted INT ); CREATE CLUSTERED INDEX [IX_TempChangedProfile_DateModified] ON #AggregatedProfile (DateModified); INSERT INTO #AggregatedProfile SELECT DateModified ,ProfNo ,CustID ,GroupID ,ProfID ,cp.InterfaceID ,cp.Version ,cp.MarketID ,cp.STMode ,DbLabel ,ProfName ,DefLangCode ,SeqNo ,URL ,COALESCE(cp.UiStatus, UiStatusCustomParamDefaults.DefValue, @UiStatusCustomParamListDefValue) AS UiStatus ,IsDeleted FROM ( SELECT aggr.DateModified ,ISNULL(cp.ProfNo, p.ProfNo) AS ProfNo ,ISNULL(cp.CustID, p.CustID) AS CustID ,ISNULL(cp.GroupID, p.GroupID) AS GroupID ,ISNULL(cp.ProfID, p.ProfID) AS ProfID ,ISNULL(cp.InterfaceID, p.InterfaceID) AS InterfaceID ,ISNULL(cp.Version, p.Version) AS Version ,ISNULL(cp.MarketID, p.MarketID) AS MarketID ,ISNULL(cp.STMode, p.STMode) AS STMode ,ISNULL(cp.DbLabel, p.DbLabel) AS DbLabel ,ISNULL(cp.ProfName, p.ProfName) AS ProfName ,ISNULL(cp.DefLangCode, p.DefLangCode) AS DefLangCode ,ISNULL(cp.SeqNo, p.SeqNo) AS SeqNo ,ISNULL(cp.URL, p.URL) AS URL ,CASE WHEN aggr.IsDeleted = 1 THEN aggr.UiStatusOLD ELSE ISNULL(aggr.UiStatusNEW, cpsv3.ParamValue) END AS UiStatus ,aggr.IsDeleted FROM ( SELECT MAX(DateModified) AS DateModified ,ProfNo ,MAX(UiStatusOLD) AS UiStatusOLD ,MAX(UiStatusNEW) AS UiStatusNEW ,MAX(IsDeleted) AS IsDeleted FROM ( SELECT DateModified ,ProfNo ,NULL AS UiStatusOLD ,NULL AS UiStatusNEW ,IsDeleted FROM #ChangedProfile UNION ALL SELECT ccp.DateModified ,ccp.TargetNo AS ProfNo ,ccp.OldValue AS UiStatusOLD ,ccp.NewValue AS UiStatusNEW ,0 AS IsDeleted FROM #ChangedCustomParam ccp WHERE ccp.ParamName = @UiStatus ) cp GROUP BY ProfNo ) aggr LEFT OUTER JOIN #ChangedProfile cp ON aggr.ProfNo = cp.ProfNo LEFT OUTER JOIN dbo.Profile p ON cp.InterfaceID IS NULL AND aggr.ProfNo = p.ProfNo LEFT OUTER JOIN dbo.DeletedUserGroup dug ON aggr.IsDeleted = 1 AND ISNULL(cp.CustID, p.CustID) = dug.CustID AND ISNULL(cp.GroupID, p.GroupID) = dug.GroupID LEFT OUTER JOIN dbo.UserGroup ug ON dug.GroupNo IS NULL AND ISNULL(cp.CustID, p.CustID) = ug.CustID AND ISNULL(cp.GroupID, p.GroupID) = ug.GroupID LEFT OUTER JOIN CustomParamScalarValues cpsv3 ON aggr.UiStatusNEW IS NULL AND aggr.ProfNo = cpsv3.TargetNo AND cpsv3.ParamLevel = 'P' AND cpsv3.ParamNo = @UiStatusNo ) cp LEFT OUTER JOIN dbo.CustomParamDefaults UiStatusCustomParamDefaults ON cp.UiStatus IS NULL AND UiStatusCustomParamDefaults.ParamNo = @UiStatusNo AND UiStatusCustomParamDefaults.InterfaceID = cp.InterfaceID AND UiStatusCustomParamDefaults.Version = cp.Version AND UiStatusCustomParamDefaults.MarketID = cp.MarketID AND UiStatusCustomParamDefaults.STMode = cp.STMode WHERE ProfNo IS NOT NULL AND UiStatus > '1' ;WITH ChangedProfileCTE AS ( SELECT * FROM #AggregatedProfile ), CountCTE AS ( SELECT COUNT(*) AS TotalCount FROM ChangedProfileCTE ), PagedCte AS ( SELECT * FROM ChangedProfileCTE ORDER BY [DateModified] ASC, [ProfNo] ASC OFFSET (@pageIndex - 1) * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT DateModified ,ProfNo ,CustID ,GroupID ,ProfID ,InterfaceID ,Version ,MarketID ,STMode ,DbLabel ,ProfName ,DefLangCode ,SeqNo ,URL ,UiStatus ,IsDeleted ,NULL TotalCount FROM PagedCte UNION ALL SELECT NULL AS [DateModified], NULL AS ProfNo, NULL AS CustID, NULL AS GroupID, NULL AS ProfID, NULL AS InterfaceID, NULL AS Version, NULL AS MarketID, NULL AS STMode, NULL AS DbLabel, NULL AS ProfName, NULL AS DefLangCode, NULL AS SeqNo, NULL AS URL, NULL AS UiStatus, NULL AS IsDeleted, CountCte.TotalCount FROM CountCte; END
--sql content merged from file: \StoredProcedures\EAUI_GetSearchOtherDbProfiles_76.sql CREATE PROCEDURE [dbo].[EAUI_GetSearchOtherDbProfiles_76] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID AND [dbo].[Profile].[InterfaceID]='eds' ) BEGIN DECLARE @ParamNo int SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='searchScreen' SELECT [p].[ProfID] AS Value, [p].[ProfName]+'('+[p].[ProfID]+')-'+ p.InterfaceID AS ProfDisplayName FROM [dbo].[Profile] p LEFT OUTER JOIN [dbo].[CustomParamScalarValues] v ON p.ProfNo=v.TargetNo AND v.ParamLevel='P' AND v.ParamNo=@ParamNo INNER JOIN [dbo].[CustomParamDefaults] d ON p.InterfaceID=d.InterfaceID AND p.Version=d.Version AND p.MarketID=d.MarketID AND p.STMode=d.STMode WHERE p.CustID = @CustID AND p.GroupID=@GroupID AND p.ProfID<>@ProfID AND p.InterfaceID ='ehost' AND d.ParamNo=@ParamNo AND ISNULL(v.ParamValue, d.DefValue)='2' ORDER BY [p].[ProfName] END ELSE SELECT [dbo].[Profile].[ProfID] AS Value, [dbo].[Profile].[ProfName]+'('+[dbo].[Profile].[ProfID]+')-'+ [dbo].[Profile].[InterfaceID] AS ProfDisplayName FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]<>@ProfID AND [dbo].[Profile].[InterfaceID] ='ehost' ORDER BY [dbo].[Profile].[ProfName] END
CREATE PROCEDURE [dbo].[EAUI_AttachCluster2Db_89](@UserID varchar(10), @UserIP varchar(30), @DbVerNo int, @ClusterList varchar(8000)) AS BEGIN SET NOCOUNT ON DECLARE @NewClusters TABLE (ID int) INSERT INTO @NewClusters (ID) SELECT Cast(a.Item as Int) ID FROM dbo.EAIF_GetItemTable_70(@ClusterList,'+') a BEGIN TRANSACTION DELETE FROM [dbo].[DbCluster] FROM [dbo].[DbCluster] INNER JOIN @NewClusters nc ON dbo.DbCluster.ClustNo = nc.ID WHERE DbCluster.DbVerNo = @DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- insert records for non-autoadd clusters INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable]) SELECT @DbVerNo, nc.ID, 1 FROM @NewClusters nc INNER JOIN [dbo].[ClusterList] gc ON nc.ID = gc.ClustNo WHERE gc.AutoAdd2Db = 0 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EW43_GetPrfParamValues](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ProfNo int SELECT @ProfNo = dbo.EAIF_GetProfNo_70(@CustID,@GroupID,@ProfID) EXEC [dbo].[EAIP_GetProfileParamByCategory_70] 'basicProfile', @ProfNo END
CREATE PROCEDURE [dbo].[EAIP_AddLinkedMasterTitle]( @SrcTitleNo int, @TgtTitleNo int, @LinkType char(1)) AS BEGIN DECLARE @RevLinkType char(1) IF EXISTS (SELECT 1 FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@SrcTitleNo AND [dbo].[TitleLink].[TgtTitleNo]=@TgtTitleNo) BEGIN RAISERROR('The title %d is already linked to the title %d',16,-1,@SrcTitleNo,@TgtTitleNo) RETURN END IF @LinkType = 's' SET @RevLinkType = 'p' ELSE IF @LinkType = 'p' SET @RevLinkType = 's' ELSE -- o (other) SET @RevLinkType = @LinkType BEGIN TRANSACTION INSERT INTO [dbo].[TitleLink] Values (@SrcTitleNo, @TgtTitleNo, @LinkType) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[TitleLink] Values (@TgtTitleNo, @SrcTitleNo,@RevLinkType) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[LinkCount] = [dbo].[MasterTitle].[LinkCount] + 1 WHERE [dbo].[MasterTitle].[TitleNo] = @SrcTitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[LinkCount] = [dbo].[MasterTitle].[LinkCount] + 1 WHERE [dbo].[MasterTitle].[TitleNo] = @TgtTitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetListLimiters_70] (@DbLabel varchar(10)) AS BEGIN IF @DbLabel <> 'custom' SELECT ll.LimiterNo, ll.LimiterId + ':' + ll.Description + '(' + lc.ControlName + ')' AS Value FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) WHERE (ll.ControlType = 5 OR ll.ControlType = 4) AND ll.DbLabel = @DbLabel ELSE SELECT ll.LimiterNo, ll.LimiterId + ':' + ll.Description + '(' + lc.ControlName + ')' AS Value FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) WHERE (ll.ControlType = 5 OR ll.ControlType = 4) AND ll.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') END
CREATE PROCEDURE EATL_UpdateGlobalCluster_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,ClusterID VARCHAR(20) ,Caption NVARCHAR(255) ) INSERT INTO #Objects ( ClusterID ,Caption ) SELECT m.c.value('(./ClusterId)[1]', 'varchar(20)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@ClusterID VARCHAR(20) ,@Caption NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @ClusterID = ClusterID ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalCluster_80] @UserID ,@UserIP ,@ClusterID ,@Caption ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbLimiters_102]( @ShortDBName varchar(10), @Label varchar(10) ) AS BEGIN DECLARE @DbVerNo as int Declare @SourceType char(1) SELECT @DbVerNo = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) Select @SourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo if @SourceType in ('M') Begin Select ll.LimiterId , [mdbles].[ExternalSearchString_M] SearchString -- to match db limiters, setting it to ExternalSearchString_M for backward compatibility , [mdbles].[ExternalSearchString_I] , [mdbles].[ExternalSearchString_M] , @SourceType SourceType , [ll].[ControlSize] , [lct].[ControlTag] as ControlType , [lct].[ControlFormat] , ll.LogicalOpCode , [mdbll].[ControlTemplate] , dbo.EAIF_GetDbLimiterCaptions_70( @DbVerNo, mdbles.LimiterNo ) as Captions , mdbles.DefValue , ll.EnableQueryMask , ll.QueryMaskId ,ll.BitFlag1 As IsHidden ,ll.IsListContentsGrouped As IsListContentsGrouped , ll.ListItemUniqueId as ListItemUniqueId ,ll.HelpUrl From [dbo].[LimiterList] ll join [dbo].[MDbLimitersExternalSource] mdbles on ll.LimiterId=mdbles.LimiterID join [dbo].[LimiterControlType] lct on ll.ControlType=lct.ControlType join [dbo].[MDbLimiterList] mdbll on ll.LimiterId=mdbll.LimiterID and mdbll.DbLabel='live' where ll.DbLabel='live' ORDER by mdbles.SeqNo End else Begin SELECT b.LimiterId, a.SearchString, '' AS ExternalSearchString_I, -- to match external limiters '' AS ExternalSearchString_M, -- to match external limiters @SourceType SourceType, -- to match external limiters b.ControlSize, c.ControlTag as ControlType, c.ControlFormat, b.LogicalOpCode, d.ControlTemplate, dbo.EAIF_GetDbLimiterCaptions_70( @DbVerNo, a.LimiterNo ) as Captions, a.DefValue, b.EnableQueryMask, b.QueryMaskId, b.BitFlag1 As IsHidden, b.IsListContentsGrouped as IsListContentsGrouped, b.ListItemUniqueId as ListItemUniqueId, b.HelpUrl FROM [dbo].[DbLimiter] a LEFT JOIN [dbo].[DbLimiterDetail] d ON a.DbVerNo=d.DbVerNo AND a.LimiterNo=d.LimiterNo INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo INNER JOIN [dbo].[LimiterControlType] c ON b.ControlType = c.ControlType WHERE a.DbVerNo = @DbVerNo ORDER by a.SeqNo End End
CREATE PROCEDURE [dbo].[EAUI_GetGlobalDbSearchTags_82] AS BEGIN SELECT [dbo].[GlobalSearchTags].[Tag], [dbo].[GlobalSearchTags].[Description], AutoAdd = CASE [dbo].[GlobalSearchTags].[AutoAdd] WHEN 1 THEN 'Yes' ELSE 'No' END FROM [dbo].[GlobalSearchTags] Order By [dbo].[GlobalSearchTags].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_UpdateGroupParamXmlValue_70](@CustID varchar(10), @GroupID varchar(10), @ParamNo int, @ItemName varchar(255),@ParamValue nvarchar(max)) AS BEGIN DECLARE @GroupNo int SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID, @GroupID) EXEC [dbo].[EAIP_UpdateCustomParamXmlValue_70] @GroupNo,'G',@ParamNo,@ItemName,@ParamValue END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileProductLabel_97.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileProductLabel_97](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @NewValue nvarchar(4000), @OldValue nvarchar(4000)) AS BEGIN DECLARE @CustName nvarchar(100) SELECT @CustName= a.CustName From [dbo].[Customer] a INNER JOIN [dbo].[Profile] b ON a.CustID = b.CustID Where b.ProfNo = @ProfNo DECLARE @CurrValue nvarchar(4000) SELECT @CurrValue = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo , 'custProductLabel') IF @NewValue = @OldValue RETURN IF @CurrValue ='' AND @NewValue= 'Discovery Service for' + ' ' + @CustName RETURN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivityOld_70] @UserID ,@UserIP,'Modify Product Label for a Profile',@ProfLogName,@ParamName,@NewValue IF @NewValue='' OR @NewValue='Discovery Service for' + ' ' + @CustName DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo ELSE EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @ParamNo, @NewValue COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetProfDbStartPageOptions_70](@DbVerNo int, @IndexBrowseParamNo int, @RefSearchParamNo int) RETURNS nvarchar(max) BEGIN DECLARE @StartPageXML nvarchar(max) SET @StartPageXML = '' END - ' -- SELECT @StartPageXML = @StartPageXML + -- '
- ' -- FROM DbParamScalarValues -- WHERE DbVerNo=@DbVerNo AND ParamNo=@IndexBrowseParamNo SELECT @StartPageXML = @StartPageXML + '
- ' FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo]=@RefSearchParamNo -- Authority databases SELECT @StartPageXML = @StartPageXML + dbo.EAIF_GetStartPageName_70(@DbVerNo) -- 10.0 Add the start page of the toolbar landing page items (regular Db) SELECT @StartPageXML = @StartPageXML + dbo.EAIF_GetStartPageForToolbarItems_100 (@DbVerNo) RETURN @StartPageXML + '
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseForm_70](@DbVerNo int, @FormNumber int ) AS BEGIN SELECT [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding], [dbo].[DbForm].[Category] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo AND [dbo].[DbForm].[FormNumber]=@FormNumber END
CREATE PROCEDURE [dbo].[EAIP_UpdateConfigApplicationParamScalarValue_70](@ApplicationID varchar(20),@ParamName varchar(100), @ParamValue nvarchar(200)) AS BEGIN DECLARE @ApplicationNo int DECLARE @ParamNo int SET @ApplicationNo = dbo.EAIF_GetConfigApplicationNo_70(@ApplicationID) SET @ParamNo = dbo.EAIF_GetConfigParamNumber_70(@ApplicationNo,@ParamName) EXEC [dbo].[EAIP_UpdateConfigParamScalarValue_70] @ApplicationNo,'A', @ParamNo, @ParamValue END
CREATE PROCEDURE [dbo].[EAIP_GetProfileByProfileId_153](@CustID varchar(10), @GroupID varchar(10), @ProfileID varchar(10)) AS BEGIN /* Start of Validations */ /* Validate: Profile does not exist */ IF NOT EXISTS(SELECT * FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[Profile].[ProfID] = @ProfileID) BEGIN RAISERROR('The %s.%s.%s Profile does not exist.', 16,-1, @CustID,@GroupID,@ProfileID) RETURN END /* End of Validations */ SELECT a.ProfNo ,a.ProfID ,a.ProfName ,a.ProfPwd ,b.InterfaceID ,b.InterfaceName ,b.Version As InterfaceVersion ,a.DbLabel ,d.MarketID ,d.Description AS MarketDesc ,c.LangCode ,c.LangDisplayName AS LangDesc ,ISNULL(a.URL, iv.SiteURL) As URL FROM [dbo].[Profile] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version INNER JOIN [dbo].[InterfaceVersion] iv ON a.InterfaceID = iv.InterfaceID AND a.Version = iv.Version LEFT OUTER JOIN EASUPPORT.dbo.MarketList d ON a.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[InterfaceUserLangList] c ON a.InterfaceID = c.InterfaceID AND a.Version = c.Version AND a.DefLangCode = c.LangCode WHERE a.CustID = @CustID AND a.GroupID = @GroupID AND a.ProfID = @ProfileID AND b.LangCode = 'en' END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomParamTblGlobalValues_90] ( @UserID nvarchar(20), @UserIP varchar(30), @ParamNo int, @LangCode varchar(10), @Fields XML) AS BEGIN /*@Fields expected to be in a format:Prasing XML value: select p.field.value('name[1]','varchar(20)') AS ParamName, p.field.value('itemID[1]','varchar(50)') AS ItemID, p.field.value('val[1]','varchar(255)') AS ParamValue from @Fields.nodes('/fields/field') AS p(field) */ DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo DECLARE @FieldsTable TABLE (FieldName varchar(20), ItemID VARCHAR(10), ParamValue nvarchar(255)) INSERT INTO @FieldsTable select * from dbo.EAIF_ParseTblParamFieldsXML_90(@Fields) BEGIN TRY BEGIN TRANSACTION UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [Value]=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo INNER JOIN @FieldsTable fld ON v.ItemID=fld.ItemID AND f.FieldName =fld.FieldName AND v.Value<>fld.ParamValue WHERE f.ParamNo=@ParamNO UPDATE [dbo].[CustomParamTblGlobalDefaultSMValues] SET CustomParamTblGlobalDefaultSMValues.Value=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo INNER JOIN @FieldsTable fld ON v.ItemID=fld.ItemID AND f.FieldName =fld.FieldName AND v.Value<>fld.ParamValue WHERE f.ParamNo=@ParamNO AND f.FieldType='SM' AND v.LangCode = @LangCode INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMValues] ([v].[ParamNo],[v].[ItemID],[v].[FieldNo],[v].[LangCode],[v].[Value]) SELECT a.ParamNo, a.ItemID, a.FieldNo, a.LangCode, a.value FROM ( select @ParamNo AS ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, @LangCode AS LangCode, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo=i.ParamNo INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName AND i.ItemID=fld.ItemID where f.ParamNo=@ParamNO AND f.FieldType='SM' ) a LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON a.ParamNo=v.ParamNo AND a.ItemID=v.ItemID AND a.FieldNo=v.FieldNo AND a.LangCode=v.LangCode WHERE v.Value is null EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Global Parameters', 'Updated parameter fields',@ParamName COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END Show RImg 1
CREATE FUNCTION dbo.EAIF_GetDbLimiterSearchString_70(@DbVerNo int, @LimiterNo int) RETURNS varchar(4000) AS BEGIN RETURN ( SELECT [dbo].[DbLimiter].[SearchString] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiter].[LimiterNo]=@LimiterNo ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteXMLSchemaDefinition_101] @SchemaId VARCHAR(20) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- delete the schema DELETE FROM [dbo].[XmlSchema] WHERE [dbo].[XmlSchema].[SchemaID] = @SchemaId END
CREATE PROCEDURE [dbo].[AUTH_GetCustomerService_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN DECLARE @GroupSSText varchar(100) SELECT @GroupSSText=dbo.EAIF_GetGroupParamScalarValue_70(@CustID, @GroupID, 'groupSSText') IF @GroupSSText = '' SELECT '' ELSE BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(SUBSTRING(@GroupSSText, 0, CHARINDEX(':', @GroupSSText))) EXEC [dbo].[EAIP_GetCustomParamXmlValue_70] @CustNo,'C','customerSSText', @GroupSSText END END
CREATE PROCEDURE [dbo].[EAIP_GetChangedProfileDataForFMO_251] @pageIndex INT = 0, @pageSize INT = 10, @dateModified DATETIME2 AS DECLARE @totalCustCount INT, @currentDate DATETIME2 = GETDATE(); BEGIN -- Create temporary tables CREATE TABLE #ChangedCustomerData ( CustID VARCHAR(10) ); CREATE TABLE #CustomerIDWithPageSize ( CustID VARCHAR(10) ); CREATE TABLE #ActiveProfileData ( ProfNo INT, InterfaceID VARCHAR(10), CustID VARCHAR(10), DbVerNo INT, AccessEndDate DATETIME2 ); --Create indexes on temp tables CREATE CLUSTERED INDEX [IX_TempChangedCustomerData_CustID] ON #ChangedCustomerData (CustID); CREATE CLUSTERED INDEX [IX_TempCustomerIDWithPageSize_CustID] ON #CustomerIDWithPageSize (CustID); CREATE CLUSTERED INDEX [IX_TempActiveProfileData_ProfNo] ON #ActiveProfileData (ProfNo, CustID); IF @dateModified IS NOT NULL --Gets the Customer IDs from tracker table BEGIN INSERT INTO #ChangedCustomerData SELECT DISTINCT(cp.CustID) AS CustID FROM [dbo].[ChangedProfile] cp WHERE cp.DateModified>=@dateModified UNION SELECT DISTINCT(p.CustID) AS CustID FROM [dbo].[Profile] p WITH(NOLOCK) INNER JOIN [dbo].[ChangedProfDatabase] cp WITH(NOLOCK) ON cp.ProfNo= p.ProfNo WHERE cp.DateModified>=@dateModified SET @totalCustCount = (SELECT COUNT(*) FROM #ChangedCustomerData) INSERT INTO #CustomerIDWithPageSize SELECT c.CustID FROM #ChangedCustomerData c ORDER BY c.CustID OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY END ELSE --Get Customer IDs from Customer table BEGIN INSERT INTO #CustomerIDWithPageSize SELECT CustID AS CustID FROM Customer c WITH(NOLOCK) WHERE c.CustID <>'' ORDER BY c.CustID OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY SET @totalCustCount = (SELECT COUNT(*) FROM Customer c WITH(NOLOCK) WHERE c.CustID <>''); END -- Get Active Profile's ProfNo, IntefacesID, DbVerNo and AccessEndDate INSERT INTO #ActiveProfileData SELECT p.ProfNo, p.InterfaceID, p.CustID, pd.DbVerNo, pd.AccessEndDate FROM [dbo].[Profile] p WITH(NOLOCK) INNER JOIN #CustomerIDWithPageSize c ON p.CustID = c.CustID INNER JOIN [dbo].[ProfDatabase] pd WITH(NOLOCK) ON pd.ProfNo = p.ProfNo WHERE pd.Enable = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= @currentDate) -- Get Comma separated Interfaces and Databases SELECT c.CustID, STUFF((SELECT DISTINCT ',' + p.InterfaceID FROM #ActiveProfileData p WHERE p.CustID = c.CustID FOR XML PATH('')),1,1,'') Interfaces, STUFF(( SELECT DISTINCT ',' + dbl.DbName + '@' + COALESCE(CONVERT(VARCHAR, MAX(pd.AccessEndDate), 120), '') FROM [dbo].[DbList] dbl WITH(NOLOCK) INNER JOIN #ActiveProfileData pd WITH(NOLOCK) ON dbl.DbVerNo = pd.DbVerNo WHERE pd.CustID = c.CustID GROUP BY dbl.DbName FOR XML PATH('')),1,1,'' ) [Databases], NULL AS TotalCount FROM #CustomerIDWithPageSize c UNION SELECT NULL AS CustID, NULL AS Interfaces, NULL AS [Databases], @totalCustCount AS TotalCount END
-- Created 2012.01.05 by jjalbert for "Search Tag Fallback Support" project CREATE PROCEDURE [dbo].[EAUI_GetSearchTags_102] ( @DbVerNo INT ) AS BEGIN SELECT td.SearchTagNo ,td.SearchTag ,td.Description ,ISNULL(ctd.FallBackBehavior, td.FallBackBehavior) FallBackBehavior ,ISNULL(ctd.FallBackBehavior,'') as ConnectorFallBackBehavior, @DbVerNo AS DbVerNo, -- following fields are included to allow a single routine to read output of this and EAUI_GetCustomerSearchTags_102 -- they are not used otherwise. -1 as CustNo, '' as CustConnectorFallBackBehavior ,svm.Description as FallBackDescription FROM [dbo].[SearchTagFallbackDefaults] td LEFT OUTER JOIN [dbo].[ConnectorSearchTagsFallBack] ctd ON td.[SearchTagNo] = ctd.[SearchTagNo] AND ctd.DbVerNo = @DbVerNo JOIN [dbo].[StringValueMap] svm on svm.FieldCode = ISNULL(ctd.FallBackBehavior, td.FallBackBehavior) AND svm.FieldName = 'FallbackBehavior' order by td.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AttachCluster2Interface_102](@UserID varchar(10), @UserIP varchar(30), @InterfaceId varchar(20), @Version varchar(10), @ClusterList varchar(8000)) AS BEGIN SET NOCOUNT ON DECLARE @NewClusters TABLE (ID VARCHAR(20)) INSERT INTO @NewClusters (ID) SELECT a.Item ID FROM dbo.EAIF_GetItemTable_70(@ClusterList,'+') a BEGIN TRANSACTION --DELETE FROM DbCluster -- FROM DbCluster INNER JOIN @NewClusters nc ON DbCluster.ClustNo = nc.ID -- WHERE DbCluster.DbVerNo = @DbVerNo --IF @@ERROR <> 0 --BEGIN -- ROLLBACK TRANSACTION -- RETURN --END -- insert records for non-autoadd clusters INSERT INTO [dbo].[GlobalClusterInterface] ([dbo].[GlobalClusterInterface].[InterfaceId], [dbo].[GlobalClusterInterface].[Version], [dbo].[GlobalClusterInterface].[ClustId]) SELECT @InterfaceId, @Version, nc.ID FROM @NewClusters nc INNER JOIN [dbo].[GlobalCluster] gc ON nc.ID = gc.ID WHERE gc.AutoAdd2Interfaces = 0 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EW44_GetPrfILSlinks](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN EXEC [dbo].[BLL_GetPrfILSlinks] @CustID,@GroupID,@ProfID END
CREATE PROCEDURE [dbo].[EAIP_AddModCustAddress_152](@CustID varchar(10) , @CompanyName varchar(80) , @Address1 varchar(80) , @Address2 varchar(80) , @Address3 varchar(80) , @City varchar(80) , @State nvarchar(100) , @PostalCode varchar(15) , @CountryID varchar(3) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustAddress] WHERE [dbo].[CustAddress].[CustID]=@CustID) BEGIN INSERT INTO [dbo].[CustAddress] ([dbo].[CustAddress].[CustID], [dbo].[CustAddress].[CompanyName], [dbo].[CustAddress].[Address1], [dbo].[CustAddress].[Address2], [dbo].[CustAddress].[Address3], [dbo].[CustAddress].[City], [dbo].[CustAddress].[State], [dbo].[CustAddress].[PostalCode], [dbo].[CustAddress].[CountryID]) VALUES(@CustID, @CompanyName, @Address1, @Address2, @Address3, @City, @State, @PostalCode, @CountryID) END ELSE BEGIN UPDATE [dbo].[CustAddress] SET [dbo].[CustAddress].[CompanyName] = @CompanyName , [dbo].[CustAddress].[Address1] = @Address1 , [dbo].[CustAddress].[Address2] = @Address2 , [dbo].[CustAddress].[Address3] = @Address3 , [dbo].[CustAddress].[City] = @City , [dbo].[CustAddress].[State] = @State , [dbo].[CustAddress].[PostalCode] = @PostalCode , [dbo].[CustAddress].[CountryID] = @CountryID WHERE [dbo].[CustAddress].[CustID]=@CustID END END
CREATE PROCEDURE [dbo].[EAUI_GetListLimiters_76](@Dblabel varchar(10)) AS BEGIN SELECT convert(varchar(10),ll.LimiterNo )+ ':' +convert(varchar(10), dl.DbVerNo ) AS DbLimiter, ll.LimiterId + N':' + db.DbName+ N':' +ll.Description AS Value FROM [dbo].[LimiterList] ll INNER JOIN [dbo].[LimiterControlType] lc ON ll.ControlType = lc.ControlType INNER JOIN [dbo].[DbLimiter] dl ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[DbList] db ON dl.DbVerNo = db.DbVerNo WHERE lc.ControlClass = 'list' AND ll.DbLabel = @Dblabel Order By ll.Description END
CREATE Procedure [dbo].[EATL_UpdateGlobalCustomParams_90] @UserID nvarchar(20), @UserIP varchar(50), @ParamName varchar(50), @FieldName varchar(50), @ItemID varchar(50), @Value nvarchar(255), @LangCode varchar(50) As Declare @ParamNo int Declare @FieldNo int Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName if (@ParamNo is Not Null) Begin select @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] from [dbo].[CustomParamXmlFields] where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlFields].[FieldName]=@FieldName if (@FieldNo is Not Null) Begin if (not exists (Select 1 from [dbo].[CustomParamTblGlobalDefaultSMValues] where [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo]=@FieldNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID]=@ItemID and [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode)) Begin Insert [dbo].[CustomParamTblGlobalDefaultSMValues] ([dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID], [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode], [dbo].[CustomParamTblGlobalDefaultSMValues].[Value]) values (@ParamNo, @ItemID, @FieldNo, @LangCode, @Value) End Else Begin Update [dbo].[CustomParamTblGlobalDefaultSMValues] set [dbo].[CustomParamTblGlobalDefaultSMValues].[Value]=@Value where [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo]=@FieldNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode and [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID]=@ItemID End End End
CREATE PROCEDURE [dbo].[EPCS_GetDbLimiters_70]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN DECLARE @DbVerNo as int SET @DbVerNo = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) SELECT b.LimiterId, a.SearchString, b.ControlSize, c.ControlTag as ControlType, c.ControlFormat,b.LogicalOpCode, dbo.EAIF_GetLimiterTemplates_70( a.LimiterNo ) as Templates, -- to be fixed when we introduce multi-language templates as it will not fit in a varchar dbo.EAIF_GetDbLimiterCaptions_70( @DbVerNo, a.LimiterNo ) as Captions FROM [dbo].[DbLimiter] a INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo INNER JOIN [dbo].[LimiterControlType] c ON b.ControlType = c.ControlType WHERE a.DbVerNo = @DbVerNo ORDER by a.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetGlobalParamList_90] AS BEGIN SELECT b.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, d.PromptText, ISNULL(b.DefValue, '') AS DefValue, DisplayLink=case When (([b].[ParamType]='X' or [b].[ParamType]='T') and exists (Select 1 from [dbo].[CustomParamXmlFields] f where b.ParamNo=f.ParamNo)) then 1 Else 0 End FROM [dbo].[CustomParamList] b LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo WHERE b.ParamLevel = 'P' ORDER BY d.PromptText END
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceKnownSearchItem_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(30), @InterfaceID varchar(10), @Version varchar(10), @KnownSearchItemNo INT, @SearchString NVARCHAR(255), @Label NVARCHAR(255), @GhostText NVARCHAR(255), @IsSelected BIT, @LangCode VARCHAR(10), @SeqNo VARCHAR(6)) AS BEGIN BEGIN TRANSACTION BEGIN TRY IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END UPDATE [dbo].[InterfaceKnownSearchItems] SET [dbo].[InterfaceKnownSearchItems].[SearchString]=@SearchString, [dbo].[InterfaceKnownSearchItems].[SeqNo] = CASE WHEN @SeqNo IS NULL THEN 1 WHEN @SeqNo = '' THEN 1 ELSE CAST(@SeqNo AS SMALLINT) END, [dbo].[InterfaceKnownSearchItems].[IsSelected] = @IsSelected WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo] = @KnownSearchItemNo -- check if ghost text is 'empty' IF @GhostText = N'' BEGIN SET @GhostText = NULL END -- if removing label for non-English language, delete it from the table IF (@Label = N'' AND @GhostText IS NULL AND @LangCode != 'en') BEGIN DELETE FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo]=@KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode]=@LangCode END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo] = @KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode] = @LangCode) BEGIN UPDATE [dbo].[InterfaceKnownSearchItemCaption] SET [dbo].[InterfaceKnownSearchItemCaption].[Label]=@Label, [dbo].[InterfaceKnownSearchItemCaption].[GhostText]=@GhostText WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo]=@KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode]=@LangCode END ELSE BEGIN INSERT INTO [dbo].[InterfaceKnownSearchItemCaption] ([dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo], [dbo].[InterfaceKnownSearchItemCaption].[LangCode], [dbo].[InterfaceKnownSearchItemCaption].[Label], [dbo].[InterfaceKnownSearchItemCaption].[GhostText]) VALUES (@KnownSearchItemNo, @LangCode, @Label, @GhostText) END -- logging info DECLARE @Param1 VARCHAR(1024) SET @Param1 = @InterfaceID + '-' + @Version + ', KnownSearchItemNo ' + CONVERT(VARCHAR(20), @KnownSearchItemNo) DECLARE @Param2 NVARCHAR(1024) SET @Param2 = @Label + N', ' + @LangCode + N', ' + @SearchString + N', ' + CAST(@IsSelected as nvarchar(1)) + N', ' + ISNULL(@GhostText, N'') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceKnownSearchItems','Update Interface Known Search Item', @Param1, @Param2 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileSearchOption_76](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @DbVerNo int, @ScreenNo int, @OptionNo int, @Show int, @SeqNo int) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbName varchar(30) SELECT @DbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @ScreenDescr nvarchar(255) SELECT @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[SearchOptionList].[SearchOptionId] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionNo]=@OptionNo BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[ProfDbSearchOption] WHERE [dbo].[ProfDbSearchOption].[ProfNo]=@ProfNo AND [dbo].[ProfDbSearchOption].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbSearchOption].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbSearchOption].[SearchOptionNo]=@OptionNo) UPDATE [dbo].[ProfDbSearchOption] SET [dbo].[ProfDbSearchOption].[Show]=@Show, [dbo].[ProfDbSearchOption].[SeqNo]=@SeqNo WHERE [dbo].[ProfDbSearchOption].[ProfNo]=@ProfNo AND [dbo].[ProfDbSearchOption].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbSearchOption].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfDbSearchOption].[SearchOptionNo]=@OptionNo ELSE INSERT INTO [dbo].[ProfDbSearchOption] ([dbo].[ProfDbSearchOption].[ProfNo],[dbo].[ProfDbSearchOption].[DbVerNo],[dbo].[ProfDbSearchOption].[IntfScreenNo],[dbo].[ProfDbSearchOption].[SearchOptionNo],[dbo].[ProfDbSearchOption].[Show],[dbo].[ProfDbSearchOption].[SeqNo]) VALUES (@ProfNo,@DbVerNo,@ScreenNo,@OptionNo,@Show,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'SearchOptions','Modify Profile Search Option', @ProfLogName, @DbName ,@ScreenDescr, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_ParseXmlListBoxValueText_70](@xmlText varchar(8000), @SortValue bit) RETURNS VARCHAR(8000) AS BEGIN /* List Box, List Button */ /**/ /* */ DECLARE @ValueText varchar(8000) IF @SortValue=0 BEGIN SELECT @ValueText=dbo.EAIF_XmlDecode_70(SUBSTRING(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@xmlText, 'Caption goes here */ /*', '_'),'', ''), '(None)_(None)', '(None)'), 3, 8000)) SET @ValueText = REVERSE(SUBSTRING(REVERSE(@ValueText),2,8000)) END ELSE BEGIN SELECT @ValueText=dbo.EAIF_XmlDecode_70(SUBSTRING(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@xmlText, ' ', '_'),'', ''), '(None)_(None)', '(None)'), 3, 8000)) SET @ValueText = REVERSE(SUBSTRING(REVERSE(@ValueText),2,8000)) DECLARE @DotPos int DECLARE @Item varchar(1024) DECLARE @ItemTable TABLE(Item varchar(1024)) SELECT @DotPos=charindex('~', @ValueText) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item = left(@ValueText, @DotPos-1) INSERT INTO @ItemTable VALUES(@Item) SELECT @ValueText=substring(@ValueText, @DotPos+1, 8000) SELECT @DotPos=charindex('~', @ValueText) END INSERT INTO @ItemTable VALUES(@ValueText) SET @ValueText=NULL SELECT @ValueText = ISNULL(@ValueText+'~'+Item, Item) FROM @ItemTable ORDER BY Item END RETURN @ValueText END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseFormList_70]( @DbVerNo int, @Category char(1)) AS BEGIN SELECT [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding], [dbo].[DbForm].[Category] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo AND [dbo].[DbForm].[Category]=@Category ORDER BY [dbo].[DbForm].[FormNumber] END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomerGroupDetails_161] ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @GroupName VARCHAR(100), @GroupEmail VARCHAR(100), @UserIP VARCHAR(15), @UserID VARCHAR(20), @ParamNames VARCHAR(8000), @ParamValues NVARCHAR(4000), @ProfAppliesToAllSites VARCHAR(1) ) AS BEGIN DECLARE @TransactionNameGroupDetails VARCHAR(20)='Group Details Transaction',@groupServiceName VARCHAR(255)='groupSSText', @profileSource VARCHAR(100)='linkSourceProfile'; IF NOT EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID) BEGIN RAISERROR('The Customer ''%s'' does not exist.', 16, -1, @CustID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustID AND [dbo].[UserGroup].[GroupID] = @GroupID) BEGIN RAISERROR('The Group "%s" does not exist.', 16,-1, @GroupID) RETURN END DECLARE @ParamNameValuePair TABLE( idx INT IDENTITY, ParamName VARCHAR(8000), ParamValue NVARCHAR(4000) ); DECLARE @sourceProfile TABLE ( profName VARCHAR(50), profNo INT, profId VARCHAR(30) ); INSERT INTO @ParamNameValuePair( ParamName ,ParamValue) SELECT n.SplitData , v.SplitData FROM [dbo].[Util_SplitToTable]('+',@ParamNames) n LEFT OUTER JOIN [dbo].[Util_SplitToTable]('+',@ParamValues) v ON v.Idx =n.Idx DECLARE @TargetNo INT, @ParamLevel CHAR(1)='G',@ParamNo INT,@GroupNo INT, @ParamValue NVARCHAR(4000),@STMode CHAR(1),@ParamName VARCHAR(8000),@MarketID VARCHAR(20),@CustNo INT=dbo.EAIF_GetCustNo_70(@CustID) DECLARE @groupSSText VARCHAR(8000)=(SELECT ParamValue FROM @ParamNameValuePair WHERE ParamName =@groupServiceName) DECLARE @ssItemName VARCHAR(255)= (SELECT DISTINCT( ItemName) FROM dbo.EAIF_GetCustomerSelectServiceValue_161(@CustID) WHERE [dbo].[EAIF_GetCustomerSelectServiceValue_161].[ServiceValue]= @groupSSText) IF (@ssItemName IS NULL AND @groupSSText !='') BEGIN RAISERROR('The SelectServiceVersion ''%s'' does not exist.', 16, -1, @groupSSText) RETURN END DECLARE @sourceText VARCHAR(8000)=(SELECT ParamValue FROM @ParamNameValuePair WHERE ParamName ='linkSourceProfile') INSERT INTO @sourceProfile(profName,profNo,profId) EXEC [dbo].[EAUI_GetLinkSourceProfileList_70] @CustID,@GroupID DECLARE @existSource VARCHAR(8000) =(SELECT DISTINCT(profNo)FROM @sourceProfile WHERE profId=@sourceText) IF (@existSource IS NULL AND @sourceText !='') BEGIN RAISERROR('The ProfileforLinking ''%s'' does not exist for GroupID ''%s''.', 16, -1, @sourceText,@GroupID) RETURN END DECLARE @sourceLinkNo INT =(SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] =@profileSource) BEGIN TRY BEGIN TRANSACTION @TransactionNameGroupDetails -- update temp Table value UPDATE @ParamNameValuePair SET ParamValue =@ssItemName WHERE ParamName =@groupServiceName UPDATE @ParamNameValuePair SET ParamValue =@existSource WHERE ParamName =@profileSource --- 1. section - update for basic details UPDATE [dbo].[UserGroup] SET [dbo].[UserGroup].[GroupName]=@GroupName, [dbo].[UserGroup].[GroupEmail]=@GroupEmail WHERE [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID] = @GroupID ---2. section - update params DECLARE C1_C CURSOR FOR SELECT ParamName,ParamValue FROM @ParamNameValuePair DECLARE @C_ParamName VARCHAR(255), @C_ParamValue NVARCHAR(4000) OPEN C1_C FETCH NEXT FROM C1_C INTO @C_ParamName, @C_ParamValue WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAIP_UpdateGroupParamScalarValue_70] @CustID, @GroupID, @C_ParamName, @C_ParamValue END FETCH NEXT FROM C1_C INTO @C_ParamName, @C_ParamValue END CLOSE C1_C DEALLOCATE C1_C ----3. update all sites with profile... DECLARE Group_Cursor CURSOR FOR SELECT a.CustID, a.GroupID FROM [dbo].[UserGroup] a INNER JOIN [dbo].[CustomerGroup] b ON a.CustID = b.ChildID WHERE b.ParentID = @CustID DECLARE @CustChildID VARCHAR(255), @C_GroupID VARCHAR(10) OPEN Group_Cursor FETCH NEXT FROM Group_Cursor WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM Group_Cursor INTO @CustChildID, @C_GroupID EXEC [dbo].[EAIP_UpdateGroupParamScalarValue_70] @CustChildID, @C_GroupID,'linkSourceProfile', @sourceText END CLOSE Group_Cursor DEALLOCATE Group_Cursor EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Applied SourceLinkProfile To All Sites', @CustID, @sourceText COMMIT TRANSACTION @TransactionNameGroupDetails END TRY BEGIN CATCH ROLLBACK TRANSACTION @TransactionNameGroupDetails RAISERROR('Invalid entries !', 16, -1) END CATCH END
CREATE PROCEDURE dbo.EAIP_GetProfileContentFilterLists_181 ( @ProfNo int, @ScreenNo INT ) AS BEGIN SELECT c.[ContentFilterListID], c.[ContentFilterListDesc], c.[ContentFilterType], CASE WHEN (PF.CustContentFilterNo) IS NULL THEN 'Off' ELSE 'On' END AS DefValue FROM dbo.CustContentFilters cf INNER JOIN dbo.ContentFilterList c ON c.ContentFilterNo = cf.ContentFilterNo INNER JOIN dbo.Profile p ON p.CustID = cf.CustID AND p.ProfNo = @ProfNo LEFT JOIN dbo.ProfContentFilters pf ON cf.CustContentFilterNo = pf.CustContentFilterNo AND pf.ProfNo = p.ProfNo AND pf.IntfScreenNo = @ScreenNo WHERE EXISTS(SELECT 1 FROM dbo.InterfaceScreen i WHERE i.InterfaceID = p.InterfaceID AND i.Version = p.Version AND i.IntfScreenNo = @ScreenNo); END;
--sql content merged from file: \StoredProcedures\EAUI_UpdateCustomParamTblInterfaceValues_90.sql CREATE PROCEDURE [dbo].[EAUI_UpdateCustomParamTblInterfaceValues_90] ( @UserID nvarchar(20), @UserIP varchar(30), @ParamNo int, @LangCode varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20),@Fields XML) AS BEGIN /*@Fields expected to be in a format:Prasing XML value: select p.field.value('name[1]','varchar(20)') AS ParamName, p.field.value('itemID[1]','varchar(50)') AS ItemID, p.field.value('val[1]','varchar(255)') AS ParamValue from @Fields.nodes('/fields/field') AS p(field) */ DECLARE @FieldsTable TABLE (FieldName varchar(20), ItemID VARCHAR(10), ParamValue nvarchar(255)) INSERT INTO @FieldsTable select * from dbo.EAIF_ParseTblParamFieldsXML_90(@Fields) DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo BEGIN TRY BEGIN TRANSACTION ------------------------------------- --Fields with FieldType: SV, NV, BV ------------------------------------- --remove existing Interface fields where changed value is the same as global value DELETE [dbo].[CustomParamTblInterfaceValues] FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo INNER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON f.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND f.FieldNo=iv.FieldNo INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND v.ItemID=fld.ItemID AND v.Value=fld.ParamValue WHERE f.ParamNo=@ParamNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID --update existing Interface fields where value was changed and changed value is not global value UPDATE [dbo].[CustomParamTblInterfaceValues] SET [Value]=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo INNER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON f.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND f.FieldNo=iv.FieldNo INNER JOIN @FieldsTable fld ON v.ItemID=fld.ItemID AND f.FieldName =fld.FieldName AND v.Value<>fld.ParamValue AND iv.Value<>fld.ParamValue WHERE f.ParamNo=@ParamNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID --add Interface fields where value was changed and changed value is not global value INSERT INTO [dbo].[CustomParamTblInterfaceValues] ([iv].[ParamNo],[iv].[ItemID],[iv].[FieldNo],[iv].[InterfaceID],[iv].[Version], [iv].[MarketID], [iv].[Value]) SELECT a.ParamNo, a.ItemID, a.FieldNo,@InterfaceID,@Version,@MarketID, a.value FROM ( select f.ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo=v.FieldNo INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName AND v.ItemID=fld.ItemID AND v.Value<>fld.ParamValue where f.ParamNo=@ParamNo AND f.FieldType in ('SV','BV','NV') ) a LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON a.ParamNo=iv.ParamNo AND a.ItemID=iv.ItemID AND a.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID WHERE iv.Value is null ------------------------------------- --Language dependent fields (FieldType='SM') ------------------------------------- --remove existing Interface fields where changed value is the same as global value DELETE [dbo].[CustomParamTblInterfaceSMValues] FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo INNER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON f.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND f.FieldNo=iv.FieldNo AND iv.LangCode = v.LangCode INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND v.ItemID=fld.ItemID AND v.Value=fld.ParamValue WHERE f.ParamNo=@ParamNo AND f.FieldType='SM' AND v.LangCode = @LangCode AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID --update existing Interface fields where value was changed and changed value is not global value UPDATE [dbo].[CustomParamTblInterfaceSMValues] SET CustomParamTblInterfaceSMValues.Value=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo INNER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON f.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND f.FieldNo=iv.FieldNo AND iv.LangCode = v.LangCode INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND v.ItemID=fld.ItemID AND v.Value<>fld.ParamValue AND iv.Value<>fld.ParamValue WHERE f.ParamNo=@ParamNo AND f.FieldType='SM' AND v.LangCode = @LangCode AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID --add Interface fields where value was changed and changed value is not global value INSERT INTO [dbo].[CustomParamTblInterfaceSMValues] ([iv].[ParamNo],[iv].[ItemID],[iv].[FieldNo],[iv].[InterfaceID], [iv].[Version], [iv].[MarketID],[iv].[LangCode],[iv].[Value]) SELECT a.ParamNo, a.ItemID, a.FieldNo, @InterfaceID, @Version, @MarketID, a.LangCode, a.value FROM ( select @ParamNo AS ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, @LangCode AS LangCode, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN @FieldsTable fld ON i.ItemID= fld.ItemID AND f.FieldName=fld.FieldName where f.ParamNo=@ParamNo AND f.FieldType='SM' AND fld.ParamValue<>'' ) a LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON a.ParamNo=v.ParamNo AND a.ItemID=v.ItemID AND a.FieldNo=v.FieldNo AND v.LangCode=@LangCode AND (v.Value<>a.Value OR v.Value is null) LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON a.ParamNo=iv.ParamNo AND a.ItemID=iv.ItemID AND a.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND iv.LangCode=@LangCode WHERE iv.Value is null IF @ParamName='searchModes' BEGIN --special rule for this parameter: only one item can be selected by default. --To make sure that we always have correct values regudless of global setting --we will store all DefValue fields for the interface UPDATE [dbo].[CustomParamTblInterfaceValues] SET [Value]=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON f.ParamNo=iv.ParamNo AND f.FieldNo = iv.FieldNo INNER JOIN @FieldsTable fld ON iv.ItemID=fld.ItemID AND f.FieldName =fld.FieldName WHERE f.ParamNo=@ParamNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND f.FieldName = 'DefValue' INSERT INTO [dbo].[CustomParamTblInterfaceValues] ([iv].[ParamNo],[iv].[ItemID],[iv].[FieldNo],[iv].[InterfaceID],[iv].[Version], [iv].[MarketID], [iv].[Value]) SELECT a.ParamNo, a.ItemID, a.FieldNo,@InterfaceID,@Version,@MarketID, a.value FROM ( select f.ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName where f.ParamNo=@ParamNo AND f.FieldType in ('SV','BV','NV') AND f.FieldName = 'DefValue' ) a LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON a.ParamNo=iv.ParamNo AND a.ItemID=iv.ItemID AND a.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID WHERE iv.Value is null END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Interface Parameters', 'Updated parameter fields',@ParamName, @InterfaceID, @Version, @MarketID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END Show RImg 1
--sql content merged from file: \Functions\EAIF_GetDbListByClusterAndProfile_89.sql CREATE FUNCTION [dbo].[EAIF_GetDbListByClusterAndProfile_89](@ClusterID varchar(20), @DbLabel varchar(10), @ProfNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @RetVal nvarchar(max), @CurDb Varchar(100), @AutoAdd Bit, @ClustNo Int SELECT @RetVal = '' IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT @AutoAdd = [dbo].[ClusterList].[AutoAdd2Db], @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClusterID AND [dbo].[ClusterList].[DbLabel] = @DbLabel IF(@@ROWCOUNT > 0) BEGIN IF(@AutoAdd = 1) BEGIN SELECT @RetVal = @RetVal + dl.DisplayName + char(13) FROM [dbo].[ProfDatabase] pd INNER JOIN [dbo].[DbList] dl ON pd.DbVerNo = dl.DbVerNo LEFT JOIN [dbo].[DbCluster] dc ON pd.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE [pd].[ProfNo] = @ProfNo AND (dc.Enable Is Null OR dc.Enable = 1) AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) and pd.Enable=1 ORDER BY dl.DisplayName END ELSE BEGIN SELECT @RetVal = @RetVal + dl.DisplayName + char(13) FROM [dbo].[ProfDatabase] pd INNER JOIN [dbo].[DbList] dl ON pd.DbVerNo = dl.DbVerNo INNER JOIN [dbo].[DbCluster] dc ON pd.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE [pd].[ProfNo] = @ProfNo AND dc.Enable = 1 AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) and pd.Enable=1 ORDER BY dl.DisplayName END IF( Len(@RetVal) > 0) BEGIN SELECT @RetVal = SubString(@RetVal, 0, Len(@RetVal) ) END END RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_DeleteZ3950Form_70](@UserId nvarchar(20), @UserIP varchar(15), @VendorID int, @FormID int) AS BEGIN DELETE FROM [dbo].[Z3950Forms] WHERE [dbo].[Z3950Forms].[VendorID]=@VendorID AND [dbo].[Z3950Forms].[FormID]=@FormID EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Z39.50 Vendors', 'Delete Form', @VendorID, @FormID END
CREATE PROCEDURE [dbo].[BLL_GetCustBrand](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN DECLARE @ItemName varchar(255) DECLARE @profBrandingNo int, @customerBrandingNo int SET @profBrandingNo=dbo.EAIF_GetCustomParamNumber_70('profBranding','P') SELECT TOP 1 @ItemName=[b].[ParamValue] FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamScalarValues] b ON a.ProfNo=b.TargetNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.ParamNo=@profBrandingNo AND [b].[ParamLevel]='P' AND b.ParamValue <> '' ORDER BY a.SeqNo IF @ItemName IS NULL RETURN SET @customerBrandingNo=dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int SELECT @xmlText=[dbo].[CustomParamXmlValues].[ParamValue], @xmlTextLen=DATALENGTH([dbo].[CustomParamXmlValues].[ParamValue]) FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@customerBrandingNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName IF @xmlTextLen < 8001 BEGIN --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText END ELSE BEGIN DECLARE @xml_0 varchar( 7500 ), @xml_1 varchar( 7500 ), @xml_2 varchar( 7500 ), @xml_3 varchar( 7500 ), @xml_4 varchar( 7500 ), @xml_5 varchar( 7500 ), @xml_6 varchar( 7500 ), @xml_7 varchar( 7500 ), @xml_8 varchar( 7500 ), @xml_9 varchar( 7500 ) -- Strip the text value into several varchar strings: SELECT @xml_0 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 0*7500 ) + 1, 7500 ), @xml_1 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 1*7500 ) + 1, 7500 ), @xml_2 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 2*7500 ) + 1, 7500 ), @xml_3 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 3*7500 ) + 1, 7500 ), @xml_4 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 4*7500 ) + 1, 7500 ), @xml_5 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 5*7500 ) + 1, 7500 ), @xml_6 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 6*7500 ) + 1, 7500 ), @xml_7 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 7*7500 ) + 1, 7500 ), @xml_8 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 8*7500 ) + 1, 7500 ), @xml_9 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 9*7500 ) + 1, 7500 ) FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@customerBrandingNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName EXEC [dbo].[EAIPO_XmlPrepareDocument_70] @xmlDocHandle OUTPUT, @xml_0,@xml_1, @xml_2, @xml_3, @xml_4, @xml_5, @xml_6, @xml_7, @xml_8, @xml_9 END -- Execute a SELECT statement that uses the OPENXML rowset provider. SELECT type as 'TextType', Screens, BrandText FROM OPENXML (@xmlDocHandle, '/branding', 2) WITH (type char(1) '@type', Screens int '@Screens', BrandText varchar(max) 'text[@lang="en"]') EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END
CREATE PROCEDURE [dbo].[EAIP_GetChangedProfilesForTransitionManager_253] @dateModified DATETIME2(7) ,@pageIndex INT = 1 ,@pageSize INT = 100 AS BEGIN DECLARE @CurrentDate DATETIME = GETDATE(); DECLARE @UiStatus CHAR(8) = 'uiStatus'; DECLARE @UiStatusParamLevel CHAR(1) = 'P'; DECLARE @UiStatusParamNo INT = [dbo].[EAIF_GetCustomParamNumber_70](@UiStatus, @UiStatusParamLevel); DECLARE @UiStatusCustomParamListDefValue NVARCHAR(1) = ( SELECT cpl.DefValue FROM dbo.CustomParamList cpl WHERE cpl.ParamNo = @UiStatusParamNo ); CREATE TABLE #ChangedCustomParam ( ProfNo INT ,UiStatusOldValue SMALLINT ,DateModified DATETIME2(7) ); INSERT INTO #ChangedCustomParam SELECT ccp.ProfNo ,ccp.FirstOldValue AS UiStatusOldValue ,ccp.DateModified FROM ( SELECT cpv.TargetNo AS ProfNo ,ROW_NUMBER() OVER ( PARTITION BY TargetNo ,ParamName ORDER BY SeqId DESC ) AS RowNum ,FIRST_VALUE(OldValue) OVER ( PARTITION BY TargetNo ,ParamName ORDER BY SeqId ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW ) AS FirstOldValue ,LAST_VALUE(NewValue) OVER ( PARTITION BY TargetNo ,ParamName ORDER BY SeqId ROWS BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING ) AS LastNewValue ,cpv.DateModified FROM ( SELECT * FROM dbo.ChangedCustomParamScalarValues cpv WHERE cpv.DateModified > @dateModified AND cpv.ParamName = @UiStatus ) cpv ) AS ccp WHERE ccp.RowNum = 1 AND ISNULL(ccp.FirstOldValue, '') <> ISNULL(ccp.LastNewValue, '') CREATE TABLE #ChangedProfile ( DateModified DATETIME2(7) NOT NULL ,ProfNo INT NOT NULL ,CustID VARCHAR(10) NOT NULL ,GroupID VARCHAR(10) NOT NULL ,ProfID VARCHAR(10) NOT NULL ,InterfaceID VARCHAR(10) NULL ,[Version] VARCHAR(10) NULL ,MarketID VARCHAR(20) NULL ,STMode CHAR(1) NULL ,DbLabel VARCHAR(10) NULL ,ProfName NVARCHAR(255) NULL ,DefLangCode VARCHAR(10) NULL ,SeqNo SMALLINT NULL ,[URL] NVARCHAR(255) NULL ,IsDeleted INT NOT NULL ,UiStatus SMALLINT NULL ,CONSTRAINT [PK_TmpChangedProfile] PRIMARY KEY CLUSTERED ([ProfNo] ASC) WITH (FILLFACTOR = 90) ) INSERT INTO #ChangedProfile SELECT cp.DateModified ,cp.ProfNo ,cp.CustID ,cp.GroupID ,cp.ProfID ,cp.InterfaceID ,cp.[Version] ,cp.MarketID ,cp.STMode ,cp.DbLabel ,cp.ProfName ,cp.DefLangCode ,cp.SeqNo ,cp.[URL] ,cp.IsDeleted ,NULL AS UiStatus FROM ( SELECT cp1.* ,ROW_NUMBER() OVER ( PARTITION BY CustID ,GroupID ,ProfID ORDER BY SeqId DESC ) RowNum FROM dbo.ChangedProfile cp1 WHERE DateModified > @dateModified ) cp WHERE RowNum = 1 CREATE TABLE #AggregatedProfile ( CustID VARCHAR(10) ,CustName VARCHAR(100) ,GroupID VARCHAR(10) ,GroupName VARCHAR(100) ,ProfID VARCHAR(10) ,MarketID VARCHAR(20) ,ProfName NVARCHAR(255) ,InterfaceID VARCHAR(10) ,[Version] VARCHAR(10) ,DbLabel VARCHAR(10) ,[URL] NVARCHAR(255) ,DefLangCode VARCHAR(10) ,SeqNo SMALLINT ,UiStatus SMALLINT ,DateModified DATETIME2(7) ,IsDeleted BIT ); CREATE CLUSTERED INDEX [IX_TempChangedProfile_DateModified] ON #AggregatedProfile (DateModified); INSERT INTO #AggregatedProfile SELECT cp.CustID ,COALESCE(c.CustName, '') AS CustName ,cp.GroupID ,COALESCE(ug.GroupName, '') AS GroupName ,cp.ProfID ,cp.MarketID ,cp.ProfName ,cp.InterfaceID ,cp.[Version] ,cp.DbLabel ,cp.[URL] ,cp.DefLangCode ,cp.SeqNo ,COALESCE(ccp.UiStatusOldValue, cpd.DefValue, @UiStatusCustomParamListDefValue) AS UiStatus ,cp.DateModified ,cp.IsDeleted FROM #ChangedProfile cp LEFT OUTER JOIN dbo.UserGroup ug ON cp.CustID = ug.CustID AND cp.GroupID = ug.GroupID LEFT OUTER JOIN #ChangedCustomParam ccp ON cp.ProfNo = ccp.ProfNo LEFT OUTER JOIN dbo.CustomParamDefaults cpd ON ccp.UiStatusOldValue IS NULL AND cpd.ParamNo = @UiStatusParamNo AND cpd.InterfaceID = cp.InterfaceID AND cpd.[Version] = cp.[Version] AND cpd.MarketID = cp.MarketID AND cpd.STMode = cp.STMode LEFT OUTER JOIN dbo.Customer c ON cp.CustID = c.CustID WHERE cp.IsDeleted = 1 UNION ALL SELECT p.CustID ,c.CustName ,p.GroupID ,ug.GroupName ,p.ProfID ,p.MarketID ,p.ProfName ,p.InterfaceID ,p.[Version] ,p.DbLabel ,p.[URL] ,p.DefLangCode ,p.SeqNo ,COALESCE(cpsv3.ParamValue, cpd.DefValue, @UiStatusCustomParamListDefValue) AS UiStatus ,cp.DateModified ,0 AS IsDeleted FROM ( SELECT ProfNo ,MAX(DateModified) AS DateModified FROM ( SELECT ProfNo ,DateModified FROM #ChangedProfile WHERE IsDeleted = 0 UNION ALL SELECT ProfNo ,DateModified FROM #ChangedCustomParam UNION ALL SELECT p1.ProfNo ,g.DateModified FROM ( SELECT cug.CustID ,cug.GroupID ,MAX(cug.DateModified) AS DateModified FROM dbo.ChangedUserGroup cug WHERE DateModified > @dateModified AND UpdatedField = 'GroupName' GROUP BY cug.CustID, cug.GroupID ) g INNER JOIN dbo.[Profile] p1 ON g.CustID = p1.CustID AND g.GroupID = p1.GroupID UNION ALL SELECT ProfNo ,DateModified FROM [dbo].[ChangedProfDatabase] WHERE DateModified > @dateModified ) cp1 GROUP BY ProfNo ) cp INNER JOIN dbo.[Profile] p ON cp.ProfNo = p.ProfNo INNER JOIN dbo.Customer c ON p.CustID = c.CustID INNER JOIN dbo.UserGroup ug ON p.CustID = ug.CustID AND p.GroupID = ug.GroupID LEFT OUTER JOIN CustomParamScalarValues cpsv3 ON p.ProfNo = cpsv3.TargetNo AND cpsv3.ParamLevel = @UiStatusParamLevel AND cpsv3.ParamNo = @UiStatusParamNo LEFT OUTER JOIN dbo.CustomParamDefaults cpd ON cpd.ParamNo = @UiStatusParamNo AND cpd.InterfaceID = p.InterfaceID AND cpd.[Version] = p.[Version] AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode WHERE EXISTS ( SELECT TOP 1 1 FROM [dbo].[ProfDatabase] pdb WHERE pdb.Enable = 1 AND pdb.ProfNo = p.ProfNo AND (pdb.[AccessEndDate] >= @CurrentDate OR pdb.[AccessEndDate] IS NULL) ) SELECT CustID ,CustName ,GroupID ,GroupName ,ProfID ,MarketID ,ProfName ,InterfaceID ,[Version] ,DbLabel ,[URL] ,DefLangCode ,SeqNo ,UiStatus ,DateModified ,IsDeleted FROM #AggregatedProfile ORDER BY [DateModified] ASC OFFSET(@pageIndex - 1) * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY SELECT COUNT(*) AS TotalCount FROM #AggregatedProfile; END
CREATE PROCEDURE [dbo].[EAUI_GetSearchThemeDetails_84](@ThemeID varchar(20), @Langcode varchar(10)='en')AS BEGIN SET NOCOUNT ON SELECT st.ThemeID, ISNULL(sc.Caption,N'') AS Caption, ISNULL(sc.ImageAltText,N'') AS ImageAltText, ISNULL(sc.Description, N'') AS Description, ISNULL(st.SearchString,'') AS SearchString, ISNULL(st.Image,'') AS Image, st.ThemeID AS ChildThemeID, ISNULL(st.ParentThemeID,'') AS ParentThemeID, ISNULL(st.CustomAttributes,'') AS CustomAttributes FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.ThemeID=sc.ThemeID AND sc.LangCode=@Langcode WHERE ISNULL(st.ThemeID, '')=@ThemeID END
CREATE Procedure [dbo].[EAUI_AttachDatabaseAuthority_70] ( @UserID nvarchar(20), @UserIP varchar(15), @MainDbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @AuthDbVerNo int, @OwnedFlag bit) AS BEGIN DECLARE @SeqNo int DECLARE @AuthDbName varchar(10), @MainDbDisplayName nvarchar(100) IF (@DbName IN ('xuh','xth', 'srh')) BEGIN SELECT @MainDbDisplayName = [dbo].[DbList].[DisplayName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MainDbVerNo RAISERROR('Authority is not allowed to be attached to the database %s. Operation failed.',16,-1, @MainDbDisplayName) RETURN END IF EXISTS (SELECT [dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MainDbVerNo AND [dbo].[DbList].[SourceType] ='M') BEGIN RAISERROR('Authority is not allowed to be attached to a connector database. Operation failed.',16,-1) RETURN END SELECT @AuthDbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@AuthDbVerNo IF EXISTS (SELECT 1 FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo]=@MainDbVerNo AND [dbo].[DbAuthority].[AuthDbVerNo]=@AuthDbVerNo) BEGIN RAISERROR('Authority %s is already attached this database. Operation failed.',16,-1,@AuthDbName) RETURN END SELECT @SeqNo=(ISNULL(MAX([dbo].[DbAuthority].[SeqNo]),0) + 1) FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo]=@MainDbVerNo INSERT INTO [dbo].[DbAuthority] ( [dbo].[DbAuthority].[MainDbVerNo], [dbo].[DbAuthority].[AuthDbVerNo], [dbo].[DbAuthority].[OwnedFlag], [dbo].[DbAuthority].[SeqNo] ) VALUES (@MainDbVerNo, @AuthDbVerNo, @OwnedFlag, @SeqNo) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert failed for authority %s and database %s, %s',16,-1,@AuthDbName, @DbName, @DbLabel) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Attach Authority','',@AuthDbName END
CREATE PROCEDURE [dbo].[EW60_GetGroupDatabasesAll](@CustID varchar(10), @GroupID varchar(10)) as BEGIN SELECT DISTINCT m.DbName as ShortDbName, m.DisplayName as LongDbName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] m ON m.DbVerNo = d.DbVerNo WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable = 1 END
--sql content merged from file: \StoredProcedures\EAIP_AddModLocalDate_70.sql CREATE PROCEDURE [dbo].[EAIP_AddModLocalDate_70](@ColNo int, @TitleNo int, @FromDate varchar(8), @ToDate varchar(8)) AS BEGIN DECLARE @Len int Declare @TestDate datetime IF @FromDate is null OR @FromDate='' BEGIN SET @FromDate='00010101' END ELSE BEGIN SET @Len = DataLength(@FromDate) IF @Len = 4 SET @FromDate=@FromDate+'0101' ELSE IF (@Len < 8 OR substring(@FromDate,7,2) = '00' OR CAST(SUBSTRING(@FromDate, 5, 2) as INT) > 12) BEGIN RAISERROR('Invalid FromDate',16,-1) RETURN END END Begin Try Set @TestDate=convert(datetime, @FromDate) End try Begin Catch RAISERROR('Invalid FromDate',16,-1) RETURN End catch IF @ToDate ='' BEGIN SELECT @ToDate=null END ELSE BEGIN SET @Len = DataLength(@ToDate) IF @Len = 4 SET @ToDate=@ToDate+'1231' ELSE IF @Len < 8 OR substring(@ToDate,7,2) = '00' OR CAST(SUBSTRING(@ToDate, 5, 2) as INT) > 12 BEGIN RAISERROR('Invalid ToDate',16,-1) RETURN END END Begin Try Set @TestDate=convert(datetime, @ToDate) End try Begin Catch RAISERROR('Invalid ToDate',16,-1) RETURN End catch IF NOT EXISTS (SELECT 1 FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo AND [dbo].[LocalDate].[FromDate]=@FromDate) BEGIN INSERT INTO [dbo].[LocalDate] ([dbo].[LocalDate].[ColNo], [dbo].[LocalDate].[TitleNo], [dbo].[LocalDate].[FromDate], [dbo].[LocalDate].[ToDate], [dbo].[LocalDate].[Status]) VALUES (@ColNo, @TitleNo, @FromDate, @ToDate, 'a') END ELSE BEGIN UPDATE [dbo].[LocalDate] SET [dbo].[LocalDate].[ToDate]=@ToDate, [dbo].[LocalDate].[Status]='a' WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo AND [dbo].[LocalDate].[FromDate]=@FromDate END END
--sql content merged from file: \StoredProcedures\EAUI_GetLiveDatabaseList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetLiveDatabaseList_70] AS BEGIN SELECT mdb.DbName, vc.DisplayName FROM [dbo].[DbList] mdb INNER JOIN [dbo].[DbTypeList] dt ON mdb.DbType=dt.DbType INNER JOIN dbo.EAIF_GetDbVendorConnectorDisplayName() vc ON mdb.DbVerNo = vc.DbVerNo AND mdb.DbType = vc.DbType WHERE dt.Category='R' AND dt.DbType <> 0 order by vc.SortOrder END
CREATE PROCEDURE EATL_UpdateGlobalCustomParams_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@GlobalCustomParams XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #GlobalCustomParams ( ID INT identity(1, 1) ,ParamName VARCHAR(50) ,FieldName VARCHAR(50) ,ItemID VARCHAR(50) ,Value NVARCHAR(255) ) INSERT INTO #GlobalCustomParams ( ParamName ,FieldName ,ItemID ,Value ) SELECT m.c.value('(./ParamName)[1]', 'varchar(50)') ,m.c.value('(./FieldName)[1]', 'nvarchar(50)') ,m.c.value('(./ItemId)[1]', 'nvarchar(50)') ,m.c.value('(./Value)[1]', 'nvarchar(255)') FROM @GlobalCustomParams.nodes('/ArrayOfGlobalCustomParam/GlobalCustomParam') AS m(c) DECLARE @i INT ,@Count INT ,@ParamName VARCHAR(50) ,@FieldName VARCHAR(50) ,@ItemID VARCHAR(50) ,@Value NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #GlobalCustomParams ) WHILE @i <= @Count BEGIN SELECT @ParamName = ParamName ,@FieldName = FieldName ,@ItemID = ItemID ,@Value = Value FROM #GlobalCustomParams WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalCustomParams_90] @UserID ,@UserIP ,@ParamName ,@FieldName ,@ItemID ,@Value ,@Lang SET @i = @i + 1 END DROP TABLE #GlobalCustomParams END
CREATE PROCEDURE [dbo].[EPCS_GetDbLongDescription_70](@DbShortName varchar(10), @DbLabel varchar(10), @LangCode varchar(10)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo =dbo.EAIF_GetDbVerNo_70(@DbShortName, @DbLabel) DECLARE @ParamNo int SELECT @ParamNO = dbo.EAIF_GetDbParamNumber_70('longDescription') select [dbo].[DbParamXmlValues].[ParamValue] from [dbo].[DbParamXmlValues] where [dbo].[DbParamXmlValues].[DbVerNo] =@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[DbParamXmlValues].[ItemName] = @LangCode END
CREATE PROCEDURE [dbo].[EAUI_GetGroupActiveProfileDetails] @CustID varchar(10), @GroupID varchar(10) AS BEGIN SELECT P.SeqNo , P.ProfNo , P.ProfID , P.ProfName , P.InterfaceID FROM dbo.Profile AS P WHERE P.CustID = @CustID AND P.GroupID = @GroupID AND EXISTS ( SELECT TOP 1 1 FROM dbo.ProfDatabase AS PDB INNER JOIN dbo.DbList AS DBL ON DBL.DbVerNo = PDB.DbVerNo WHERE P.ProfNo = PDB.ProfNo AND PDB.Enable = 1 AND DBL.NonSearchableDb = 0 AND DBL.DbName != 'edspub' AND (PDB.AccessEndDate IS NULL OR PDB.AccessEndDate >= GETDATE()) ) ORDER BY P.SeqNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceLanguages_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @LangCodes VARCHAR(MAX), @Descriptions NVARCHAR(MAX), @SeqNos VARCHAR(MAX)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @InvalidLanguageCode VARCHAR(10) DECLARE @InterfaceLanguages TABLE ( LanguageCode VARCHAR(10), Description NVARCHAR(100), SeqNo INT ) INSERT INTO @InterfaceLanguages (LanguageCode, Description) SELECT [dbo].[EAIF_GetItemValueTable_70].[Item], [dbo].[EAIF_GetItemValueTable_70].[Value] FROM dbo.EAIF_GetItemValueTable_70(@LangCodes, @Descriptions, '+') UPDATE IL SET IL.SeqNo = CASE WHEN T.Value = NULL THEN 1 WHEN T.Value = '' THEN 1 ELSE T.Value END FROM dbo.EAIF_GetItemValueTable_70(@LangCodes, @SeqNos, '+') T INNER JOIN @InterfaceLanguages IL ON T.Item = IL.LanguageCode SELECT @InvalidLanguageCode = LanguageCode FROM @InterfaceLanguages WHERE LanguageCode NOT IN (SELECT [dbo].[InterfaceUserLangList].[LangCode] FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceUserLangList].[Version] = @Version) IF (@InvalidLanguageCode IS NOT NULL) BEGIN RAISERROR('Language Code %s is either invalid or does not belong to its Interface-Version %s-%s.', 16,-1, @InvalidLanguageCode, @InterfaceID, @Version) RETURN END BEGIN TRANSACTION UPDATE IULL SET IULL.LangDisplayName = IL.Description, [IULL].[SeqNo] = IL.SeqNo FROM [dbo].[InterfaceUserLangList] IULL INNER JOIN @InterfaceLanguages IL ON IULL.LangCode = IL.LanguageCode WHERE IULL.InterfaceID = @InterfaceID AND IULL.Version = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Update Languages', @InterfaceID, @Version, @LangCodes COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfileWidgetsDetail_97.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfileWidgetsDetail_97] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @WidgetNoList varchar(2000), @SeqNoList varchar(2000), @LabelList nvarchar(2000), @DefOpenList varchar(2000), @ShowList varchar(2000) ) AS BEGIN BEGIN TRY BEGIN TRANSACTION DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','UpdateProfileWidgetDetail',@ProfLogName IF @WidgetNoList is not null BEGIN UPDATE dbo.ProfCustomWidgets SET [SeqNo] = convert(int,b.Value) FROM [dbo].[ProfCustomWidgets] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@WidgetNoList, @SeqNoList,'+') b ON a.WidgetID=convert(int,b.Item) WHERE [a].[ProfNo]=@ProfNo UPDATE dbo.ProfCustomWidgets SET [Label] = b.Value FROM [dbo].[ProfCustomWidgets] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@WidgetNoList, @LabelList,'+') b ON a.WidgetID=convert(int,b.Item) WHERE [a].[ProfNo]= @ProfNo UPDATE dbo.ProfCustomWidgets SET [DefOpen] = convert(bit,b.Value) FROM [dbo].[ProfCustomWidgets] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@WidgetNoList, @DefOpenList,'+') b ON a.WidgetID=convert(int,b.Item) WHERE [a].[ProfNo]=@ProfNo UPDATE dbo.ProfCustomWidgets SET [Show] = convert(bit,b.Value) FROM [dbo].[ProfCustomWidgets] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@WidgetNoList, @ShowList,'+') b ON a.WidgetID=convert(int,b.Item) WHERE [a].[ProfNo]=@ProfNo END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel], [dbo].[DbList].[DisplayName], [dbo].[DbList].[DSFamilyName], [dbo].[DbList].[DbGroup], [dbo].[DbList].[DbType], [dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate], [dbo].[DbList].[MultiSegment], [dbo].[DbList].[EnforceSimUsage], [dbo].[DbList].[ShowStats], [dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient], [dbo].[DbList].[WinClient], [dbo].[DbList].[CharClient], [dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild], [dbo].[DbList].[EDABuild], [dbo].[DbList].[IncludeWhenAutoAdd], [dbo].[DbList].[SourceType], [dbo].[DbList].[NonSearchableDb], [dbo].[DbList].[ArchiveProfSettings] , dbo.EACOPY_AUTO_GetXmlDbList_DbAuthority([dbo].[DbList].[DbVerNo]) DbAuthority , dbo.EACOPY_AUTO_GetXmlDbList_DbParamXmlValues([dbo].[DbList].[DbVerNo]) DbParamXmlValues , dbo.EACOPY_AUTO_GetXmlDbList_DbBrowseOption([dbo].[DbList].[DbVerNo]) DbBrowseOption , dbo.EACOPY_AUTO_GetXmlDbList_DbCluster([dbo].[DbList].[DbVerNo]) DbCluster , dbo.EACOPY_AUTO_GetXmlDbList_DbFeature([dbo].[DbList].[DbVerNo]) DbFeature , dbo.EACOPY_AUTO_GetXmlDbList_DbServerParams([dbo].[DbList].[DbVerNo]) DbServerParams , dbo.EACOPY_AUTO_GetXmlDbList_InterfaceNonSearchDbs([dbo].[DbList].[DbVerNo]) InterfaceNonSearchDbs , dbo.EACOPY_AUTO_GetXmlDbList_DbListExternalSource([dbo].[DbList].[DbVerNo]) DbListExternalSource , dbo.EACOPY_AUTO_GetXmlDbList_DbFieldGroup([dbo].[DbList].[DbVerNo]) DbFieldGroup , dbo.EACOPY_AUTO_GetXmlDbList_DbForm([dbo].[DbList].[DbVerNo]) DbForm , dbo.EACOPY_AUTO_GetXmlDbList_DbGroup([dbo].[DbList].[DbVerNo]) DbGroup , dbo.EACOPY_AUTO_GetXmlDbList_DbLimiter([dbo].[DbList].[DbVerNo]) DbLimiter , dbo.EACOPY_AUTO_GetXmlDbList_DBMultiDbAuthList([dbo].[DbList].[DbVerNo]) DBMultiDbAuthList , dbo.EACOPY_AUTO_GetXmlDbList_DbParamScalarValues([dbo].[DbList].[DbVerNo]) DbParamScalarValues , dbo.EACOPY_AUTO_GetXmlDbList_DbPublisher([dbo].[DbList].[DbVerNo]) DbPublisher , dbo.EACOPY_AUTO_GetXmlDbList_DbRTACInfo([dbo].[DbList].[DbVerNo]) DbRTACInfo , dbo.EACOPY_AUTO_GetXmlDbList_DbPickupLocation([dbo].[DbList].[DbVerNo]) DbPickupLocation , dbo.EACOPY_AUTO_GetXmlDbList_DbSearchContextMapping([dbo].[DbList].[DbVerNo]) DbSearchContextMapping , dbo.EACOPY_AUTO_GetXmlDbList_DbSearchOption([dbo].[DbList].[DbVerNo]) DbSearchOption , dbo.EACOPY_AUTO_GetXmlDbList_DbSegment([dbo].[DbList].[DbVerNo]) DbSegment , dbo.EACOPY_AUTO_GetXmlDbList_DbDiscipline([dbo].[DbList].[DbName]) DbDiscipline , dbo.EACOPY_AUTO_GetXmlDbList_DbSourceTarget([dbo].[DbList].[DbVerNo]) DbSourceTarget , dbo.EACOPY_AUTO_GetXmlDbList_DbSort([dbo].[DbList].[DbVerNo]) DbSort , dbo.EACOPY_AUTO_GetXmlDbList_DbDocType([dbo].[DbList].[DbVerNo]) DbDocType , dbo.EACOPY_AUTO_GetXmlDbList_DbSubset([dbo].[DbList].[DbVerNo]) DbSubset , dbo.EACOPY_AUTO_GetXmlDbList_DbTopic([dbo].[DbList].[DbVerNo]) DbTopic , dbo.EACOPY_AUTO_GetXmlDbList_DbVolume([dbo].[DbList].[DbVerNo]) DbVolume FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel], [dbo].[DbList].[DisplayName], [dbo].[DbList].[DSFamilyName], [dbo].[DbList].[DbGroup], [dbo].[DbList].[DbType], [dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate], [dbo].[DbList].[MultiSegment], [dbo].[DbList].[EnforceSimUsage], [dbo].[DbList].[ShowStats], [dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient], [dbo].[DbList].[WinClient], [dbo].[DbList].[CharClient], [dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild], [dbo].[DbList].[EDABuild], [dbo].[DbList].[IncludeWhenAutoAdd], [dbo].[DbList].[SourceType], [dbo].[DbList].[NonSearchableDb], [dbo].[DbList].[ArchiveProfSettings] FOR XML RAW('r'), TYPE, ROOT('DbList') ) END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseGroupList_80] (@DbVerNo int)AS BEGIN SELECT DISTINCT gl.GroupNo, gl.GroupID, gc.Caption FROM [dbo].[DbGroup] dg INNER JOIN [dbo].[GroupList] gl ON dg.GroupNo = gl.GroupNo INNER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo = gc.GroupNo WHERE dg.DbVerNo = @DbVerNo AND gc.LangCode='en' ORDER BY gc.Caption END
--sql content merged from file: \StoredProcedures\EAIP_UpdateCustomerParamScalarValue_70.sql CREATE PROCEDURE [dbo].[EAIP_UpdateCustomerParamScalarValue_70](@CustID varchar(10),@ParamName varchar(100),@ParamValue nvarchar(4000)) AS BEGIN DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'C') EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @CustNo,'C',@ParamNo,@ParamValue END
CREATE Procedure [dbo].[EAIP_GetProfileDatabaseListBySourceType_92] ( @ProfNo INT, @SourceType CHAR(1)) AS BEGIN DECLARE @IndexBrowseParamNo INT DECLARE @RefSearchParamNo INT SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') SELECT ISNULL(a.SeqNo, 1) AS SeqNo, a.DbVerNo, b.DisplayName+ N' ('+b.DbName+N')' AS DisplayName, b.DbName, a.SelDefault, a.StartPage, dbo.EAIF_GetProfDbStartPageOptions_70( a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate', CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode, b.SourceType AS SourceType FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo WHERE a.ProfNo = @ProfNo AND (a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) AND [b].[SourceType]=@SourceType ORDER BY SeqNo END
--sql content merged from file: \StoredProcedures\EAUI_UpdateCustomParamTblProfValues_90.sql CREATE PROCEDURE [dbo].[EAUI_UpdateCustomParamTblProfValues_90] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @ParamNo int, @LangCode varchar(10), @Fields XML) AS BEGIN /*@Fields expected to be in a format:Prasing XML value: select p.field.value('name[1]','varchar(20)') AS ParamName, p.field.value('itemID[1]','varchar(50)') AS ItemID, p.field.value('val[1]','varchar(255)') AS ParamValue from @Fields.nodes('/fields/field') AS p(field) */ DECLARE @FieldsTable TABLE (FieldName varchar(20), ItemID VARCHAR(10), ParamValue nvarchar(255)) INSERT INTO @FieldsTable select * from dbo.EAIF_ParseTblParamFieldsXML_90(@Fields) DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo DECLARE @Profname varchar(50) SELECT @ProfName = dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo BEGIN TRY BEGIN TRANSACTION ------------------------------------- --Fields with FieldType: SV, NV, BV ------------------------------------- -- remove existing profile fields where changed value is the same as global value -- where Interface does not override global values OR -- changed value is the same as interface value DELETE [dbo].[CustomParamTblFieldValues] FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON v.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND v.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID and iv.ParamNo=@ParamNo INNER JOIN [dbo].[CustomParamTblFieldValues] pv ON f.ParamNo=pv.ParamNo AND v.ItemID = pv.ItemID AND f.FieldNo=pv.FieldNo INNER JOIN @FieldsTable fld ON f.FieldName = fld.FieldName AND v.ItemID=fld.ItemID WHERE f.ParamNo=@ParamNo AND pv.TargetNo=@ProfNo AND pv.Level='P' AND ((iv.Value is null AND v.Value=fld.ParamValue) OR (iv.Value is not null AND iv.Value=fld.ParamValue)) -- update existing profile fields where value was changed and changed value is not global value -- where Interface does not override global values OR -- where value was changed and changed value is not interface value UPDATE [dbo].[CustomParamTblFieldValues] SET [Value]=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON iv.ParamNo=@ParamNo AND v.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND v.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID INNER JOIN [dbo].[CustomParamTblFieldValues] pv ON f.ParamNo=pv.ParamNo AND v.ItemID = pv.ItemID AND f.FieldNo=pv.FieldNo INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND v.ItemID=fld.ItemID WHERE f.ParamNo=@ParamNo AND pv.TargetNo=@ProfNo AND pv.Level='P' AND ((iv.Value is null AND v.Value<>fld.ParamValue AND pv.Value<>fld.ParamValue) OR (iv.Value is not null AND iv.Value<>fld.ParamValue AND pv.Value<>fld.ParamValue)) -- add profile fields where value was changed and changed value is not global value -- where Interface does not override global values OR -- changed value is not interfacae value INSERT INTO [dbo].[CustomParamTblFieldValues]([pv].[TargetNo], [pv].[Level], [pv].[ParamNo],[pv].[ItemID],[pv].[FieldNo], [pv].[Value]) SELECT @ProfNo, 'P', a.ParamNo, a.ItemID, a.FieldNo,a.value FROM ( select f.ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo=v.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON iv.ParamNo=@ParamNo AND v.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND v.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName AND v.ItemID=fld.ItemID where f.ParamNo=@ParamNo AND f.FieldType in ('SV','BV','NV') AND ((iv.Value is null AND v.Value<>fld.ParamValue) OR (iv.Value is not null AND iv.Value<>fld.ParamValue)) ) a LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] pv ON pv.TargetNo=@ProfNo AND a.ParamNo=pv.ParamNo AND a.ItemID=pv.ItemID AND a.FieldNo=pv.FieldNo WHERE pv.Value is null ------------------------------------- --Language dependent fields (FieldType='SM') ------------------------------------- -- remove existing profile fields where changed value is the same as global value -- where Interface does not override global values OR -- changed value is the same as interface value DELETE [dbo].[CustomParamTblSMValues] FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON iv.ParamNo=@ParamNo AND v.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND v.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND v.LangCode=iv.LangCode INNER JOIN [dbo].[CustomParamTblSMValues] pv ON pv.LangCode = v.LangCode AND f.ParamNo=pv.ParamNo AND v.ItemID = pv.ItemID AND f.FieldNo=pv.FieldNo INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND v.ItemID=fld.ItemID WHERE f.ParamNo=@ParamNo AND f.FieldType='SM' AND v.LangCode = @LangCode AND pv.TargetNo=@ProfNo AND pv.Level='P' AND ((iv.Value is null AND v.Value=fld.ParamValue) OR (iv.Value is not null AND iv.Value=fld.ParamValue)) --update existing profile fields where value was changed and changed value is not global value OR -- not an interface value UPDATE [dbo].[CustomParamTblSMValues] SET [Value]=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo = v.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON iv.ParamNo=@ParamNo AND v.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND v.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND v.LangCode=iv.LangCode INNER JOIN [dbo].[CustomParamTblSMValues] pv ON f.ParamNo=pv.ParamNo AND v.ItemID = pv.ItemID AND f.FieldNo=pv.FieldNo AND pv.LangCode = v.LangCode INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND v.ItemID=fld.ItemID WHERE f.ParamNo=@ParamNo AND v.LangCode = @LangCode AND pv.TargetNo=@ProfNo AND pv.Level='P' AND ((iv.Value is null AND v.Value<>fld.ParamValue AND pv.Value<>fld.ParamValue) OR (iv.Value is not null AND iv.Value<>fld.ParamValue AND pv.Value<>fld.ParamValue)) --update existing profile fields where value was changed and global value is not defined or -- both global and interface values are not defined UPDATE [dbo].[CustomParamTblSMValues] SET [Value]=pf.ParamValue FROM ( select f.ParamNo, f.FieldNo, fld.ItemID, fld.ParamValue from [dbo].[CustomParamXmlFields] f INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName where f.ParamNo=@ParamNo AND f.FieldType='SM' ) pf LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON pf.ParamNo = v.ParamNo AND v.ItemID=pf.ItemID AND pf.FieldNo = v.FieldNo AND v.LangCode = @LangCode LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON iv.ParamNo=@ParamNo AND pf.ParamNo= iv.ParamNo AND pf.ItemID = iv.ItemID AND pf.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND iv.LangCode=@LangCode INNER JOIN [dbo].[CustomParamTblSMValues] pv ON pf.ParamNo=pv.ParamNo AND pf.ItemID = pv.ItemID AND pf.FieldNo=pv.FieldNo WHERE pv.TargetNo=@ProfNo AND pv.Level='P' AND pv.LangCode = @LangCode AND ((v.Value is null and iv.Value is null AND pv.Value<>pf.ParamValue) OR (v.Value is null and iv.Value is not null AND iv.Value<>pf.ParamValue AND pv.Value<>pf.ParamValue)) --add profile fields where value was changed and changed value is not global value or -- not an interface value INSERT INTO [dbo].[CustomParamTblSMValues]([pv].[TargetNo], [pv].[Level], [pv].[ParamNo],[pv].[ItemID],[pv].[FieldNo],[pv].[LangCode], [pv].[Value]) SELECT @ProfNo, 'P', a.ParamNo, a.ItemID, a.FieldNo,@LangCode,a.value FROM ( select f.ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON f.ParamNo=v.ParamNo AND f.FieldNo=v.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON iv.ParamNo=@ParamNo AND v.ParamNo= iv.ParamNo AND v.ItemID = iv.ItemID AND v.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND v.LangCode=iv.LangCode INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName AND v.ItemID=fld.ItemID where f.ParamNo=@ParamNo AND f.FieldType ='SM' AND v.LangCode = @LangCode AND ((iv.Value is null AND v.Value<>fld.ParamValue) OR (iv.Value is not null AND iv.Value<>fld.ParamValue)) ) a LEFT OUTER JOIN [dbo].[CustomParamTblSMValues] pv ON pv.TargetNo=@ProfNo AND a.ParamNo=pv.ParamNo AND a.ItemID=pv.ItemID AND a.FieldNo=pv.FieldNo AND pv.LangCode = @LangCode WHERE pv.Value is null --add profile language (SM) fields where value does not exist on the global level --and does not exist on the interface level INSERT INTO [dbo].[CustomParamTblSMValues]([pv].[TargetNo], [pv].[Level], [pv].[ParamNo],[pv].[ItemID],[pv].[FieldNo],[pv].[LangCode], [pv].[Value]) SELECT @ProfNo, 'P', a.ParamNo, a.ItemID, a.FieldNo,@LangCode,a.value FROM ( select @ParamNo AS ParamNo, pf.ItemID AS ItemID, pf.FieldNo AS FieldNo, @LangCode AS LangCode, pf.ParamValue AS value from ( select f.ParamNo, f.FieldNo, fld.ItemID, fld.ParamValue from [dbo].[CustomParamXmlFields] f INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName where f.ParamNo=@ParamNo AND f.FieldType='SM' ) pf LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] v ON pf.ParamNo = v.ParamNo AND v.ItemID=pf.ItemID AND pf.FieldNo = v.FieldNo AND v.LangCode = @LangCode where v.Value is null and pf.ParamValue<>'' ) a LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON a.ParamNo=iv.ParamNo AND a.ItemID=iv.ItemID AND a.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND iv.LangCode=@LangCode LEFT OUTER JOIN [dbo].[CustomParamTblSMValues] pv ON pv.TargetNo=@ProfNo AND a.ParamNo=pv.ParamNo AND a.ItemID=pv.ItemID AND a.FieldNo=pv.FieldNo AND pv.LangCode = @LangCode WHERE pv.Value is null IF @ParamName='searchModes' BEGIN --special rule for this parameter: only one item can be selected by default. --To make sure that we always have correct values regudless of interface or global setting --we will store all DefValue fields for the profile UPDATE [dbo].[CustomParamTblFieldValues] SET [Value]=fld.ParamValue FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblFieldValues] pv ON f.ParamNo=pv.ParamNo AND f.FieldNo=pv.FieldNo INNER JOIN @FieldsTable fld ON f.FieldName =fld.FieldName AND fld.ItemID = pv.ItemID WHERE f.ParamNo=@ParamNo AND pv.TargetNo=@ProfNo AND pv.Level='P' AND f.FieldName = 'DefValue' INSERT INTO [dbo].[CustomParamTblFieldValues]([pv].[TargetNo], [pv].[Level], [pv].[ParamNo],[pv].[ItemID],[pv].[FieldNo], [pv].[Value]) SELECT @ProfNo, 'P', a.ParamNo, a.ItemID, a.FieldNo,a.value FROM ( select f.ParamNo, fld.ItemID AS ItemID, f.FieldNo AS FieldNo, fld.ParamValue AS value from [dbo].[CustomParamXmlFields] f INNER JOIN @FieldsTable fld ON f.FieldName=fld.FieldName where f.ParamNo=@ParamNo AND f.FieldType in ('SV','BV','NV') AND f.FieldName='DefValue' ) a LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] pv ON pv.TargetNo=@ProfNo AND a.ParamNo=pv.ParamNo AND a.ItemID=pv.ItemID AND a.FieldNo=pv.FieldNo WHERE pv.Value is null END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profile Parameters', 'Updated parameter fields',@ParamName, @Profname COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END Show RImg 1
CREATE FUNCTION [dbo].[EAIF_GetDbName_70](@DbVerNo int) RETURNS varchar(40) AS BEGIN RETURN ISNULL((SELECT [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo),'Uknown') END
CREATE PROCEDURE [dbo].[EAUI_DeleteZ3950Vendor_70](@UserId nvarchar(20), @UserIP varchar(15), @VendorID int ) AS BEGIN BEGIN TRANSACTION DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = convert(varchar(10), @VendorID) DELETE FROM [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=@VendorID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Z39.50 Vendors', 'Delete Vendor', @VendorID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[BLL_GetDBInformation](@ShortDBName varchar(10), @DbLabel varchar(10)='live') AS BEGIN DECLARE @DbVerNo int, @LongDbName varchar(100), @EnforceSimUsage bit, @DbType int, @ContentType int, @ImageFileName varchar(2000), @ImageAltText varchar(2000), @Description varchar(8000) SELECT @DbVerNo=[dbo].[DbList].[DbVerNo], @LongDbName=[dbo].[DbList].[DisplayName], @EnforceSimUsage=[dbo].[DbList].[EnforceSimUsage], @DbType=[dbo].[DbList].[DbType], @ContentType=[dbo].[DbList].[ContentType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @@ROWCOUNT=0 BEGIN SELECT [dbo].[DbList].[DisplayName] as 'LongDbName', [dbo].[DbList].[EnforceSimUsage], [dbo].[DbList].[DbType] as 'DatabaseType', [dbo].[DbList].[ContentType], @ImageFileName as 'ImageFileName', @Description as 'Description', @ImageAltText as 'ImageAltText' FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@DbLabel RETURN END SET @ImageFileName=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'imageFileName') IF (@ImageFileName='' OR @ImageFileName IS NULL) BEGIN SELECT @ImageFileName=[dbo].[DbContentList].[ImageFileName] FROM [dbo].[DbContentList] WHERE [dbo].[DbContentList].[ContentType]=@ContentType END SET @ImageAltText=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'imageAlternateText') DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int SELECT @xmlText=[a].[ParamValue], @xmlTextLen=DATALENGTH([a].[ParamValue]) FROM [dbo].[DbParamXmlValues] a INNER JOIN [dbo].[DbParamList] b ON a.ParamNo=b.ParamNo INNER JOIN [dbo].[DbList] c ON c.DbVerNo=a.DbVerNo WHERE b.ParamName='shortDescription' AND c.DbName=@ShortDbName AND c.DbLabel=@DbLabel IF @xmlTextLen < 8001 BEGIN --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText END ELSE BEGIN DECLARE @xml_0 varchar( 7500 ), @xml_1 varchar( 7500 ), @xml_2 varchar( 7500 ), @xml_3 varchar( 7500 ), @xml_4 varchar( 7500 ), @xml_5 varchar( 7500 ), @xml_6 varchar( 7500 ), @xml_7 varchar( 7500 ), @xml_8 varchar( 7500 ), @xml_9 varchar( 7500 ) -- Strip the text value into several varchar strings: SELECT @xml_0 = SUBSTRING( [a].[ParamValue], ( 0*7500 ) + 1, 7500 ), @xml_1 = SUBSTRING( [a].[ParamValue], ( 1*7500 ) + 1, 7500 ), @xml_2 = SUBSTRING( [a].[ParamValue], ( 2*7500 ) + 1, 7500 ), @xml_3 = SUBSTRING( [a].[ParamValue], ( 3*7500 ) + 1, 7500 ), @xml_4 = SUBSTRING( [a].[ParamValue], ( 4*7500 ) + 1, 7500 ), @xml_5 = SUBSTRING( [a].[ParamValue], ( 5*7500 ) + 1, 7500 ), @xml_6 = SUBSTRING( [a].[ParamValue], ( 6*7500 ) + 1, 7500 ), @xml_7 = SUBSTRING( [a].[ParamValue], ( 7*7500 ) + 1, 7500 ), @xml_8 = SUBSTRING( [a].[ParamValue], ( 8*7500 ) + 1, 7500 ), @xml_9 = SUBSTRING( [a].[ParamValue], ( 9*7500 ) + 1, 7500 ) FROM [dbo].[DbParamXmlValues] a INNER JOIN [dbo].[DbParamList] b ON a.ParamNo=b.ParamNo INNER JOIN [dbo].[DbList] c ON c.DbVerNo=a.DbVerNo WHERE b.ParamName='shortDescription' AND c.DbName=@ShortDbName AND c.DbLabel=@DbLabel EXEC [dbo].[EAIPO_XmlPrepareDocument_70] @xmlDocHandle OUTPUT, @xml_0,@xml_1, @xml_2, @xml_3, @xml_4, @xml_5, @xml_6, @xml_7, @xml_8, @xml_9 END SET @Description='' -- Execute a SELECT statement that uses the OPENXML rowset provider. SELECT @Description=shortDescription FROM OPENXML (@xmlDocHandle, '/shortDescriptions',2) WITH (shortDescription varchar(8000) 'shortDescription[@lang="en"]') EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle SELECT @LongDbName as 'LongDbName', @EnforceSimUsage as 'EnforceSimUsage', @DbType as 'DatabaseType', @ContentType as 'ContentType', @ImageFileName as 'ImageFileName', @Description as 'Description', @ImageAltText as 'ImageAltText' END
Create Procedure [dbo].[EAIP_GetChildSitesByParentID_100] (@CustID varchar(10)) as select c.CustNo, c.CustID, c.CustName, c.CustType, c.MarketID, c.Status, c.Consortium from [dbo].[Customer] c join [dbo].[CustomerGroup] cg on c.CustID=cg.ChildID where cg.ParentID=@CustID union select c.CustNo, c.CustID, c.CustName, c.CustType, c.MarketID, c.Status, c.Consortium from [dbo].[Customer] c where c.CustID=@CustID
CREATE PROCEDURE [dbo].[EAUI_GetSearchThemesList_84]( @ParentThemeID VARCHAR(20) )AS BEGIN SELECT st.ThemeID AS ThemeID, ISNULL(sc.Caption,N'') AS Caption, ISNULL(st.SearchString,'') AS SearchString, st.ThemeID AS ChildThemeID, ISNULL(st.ParentThemeID,'') AS ParentThemeID, dbo.EAIF_GetInterfaceListForSearchThemes_84(st.ThemeID) AS Interfaces FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.ThemeID=sc.ThemeID WHERE st.ThemeID=sc.ThemeID AND sc.LangCode='en' AND ISNULL(st.ParentThemeID, '')=@ParentThemeID Order By ThemeID END
CREATE PROCEDURE [dbo].[EAUI_AttachDatabaseDocTypes_77](@UserID nvarchar(20),@UserIP varchar(30),@DBVerNo int, @DocTypeNoList varchar(8000), @TargetDb varchar(10)) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]= @DBVerNo BEGIN TRANSACTION INSERT INTO [dbo].[DbDocType] ([dbo].[DbDocType].[DbVerNo],[dbo].[DbDocType].[DocTypeNo],[dbo].[DbDocType].[TargetDb]) SELECT @DBVerNo, CONVERT(int,a.Item),@TargetDb FROM dbo.EAIF_GetItemTable_70(@DocTypeNoList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@DocTypeNoList,1,1024),'+',',') IF DATALENGTH(@DocTypeNoList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@DocTypeNoList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Attach DocTypes to Database', @DbName ,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE Procedure [dbo].[GetBrandingUpdatesByDate](@StartDate datetime, @EndDate datetime) as Begin Declare @ParamNo int select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='customerBranding' select distinct c.CustName, SUBSTRING(replace(replace(replace(replace(replace([cpxv].[ParamValue], N'<', N'<'), N'>', N'>'), N'&', N'&'), N'"', N'"'), N''', CHAR(39)),17, CHARINDEX('"', replace(replace(replace(replace(replace([cpxv].[ParamValue], N'<', N'<'), N'>', N'>'), N'&', N'&'), N'"', N'"'), N''', CHAR(39)),17)-17) as BrandingName, substring(replace(replace(replace(replace(replace([cpxv].[ParamValue], N'<', N'<'), N'>', N'>'), N'&', N'&'), N'"', N'"'), N''', CHAR(39)), charindex(N''), N'&', N'&'), N'"', N'"'), N''', CHAR(39)))+16, charindex(N' '), N'&', N'&'), N'"', N'"'), N''', CHAR(39)))-(charindex(N''), N'&', N'&'), N'"', N'"'), N''', CHAR(39)))+16)) as BrandingText from [dbo].[CustomParamXmlValues] cpxv join [dbo].[Customer] c on cpxv.TargetNo=c.CustNo join EASUPPORT.dbo.ActivityLog al on c.CustID=al.Param1 and al.Activity = 'Update Branding Item' and al.LogTime between @StartDate and @EndDate where [cpxv].[ParamNo]=@ParamNo and [cpxv].[ParamLevel]='C' order by c.CustName End
CREATE PROCEDURE [dbo].[EAIP_AddModLocalTitle_70] ( @ColNo int, @TitleNo int, @Subscribe bit, @YesMsgNo int , @NoMsgNo int, @Notes nvarchar(2000), @Summary varchar (255), @CallNumber varchar(2000)) AS BEGIN IF NOT EXISTS (SELECT 1 from dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 1) BEGIN DECLARE @AddAlternates bit SELECT @AddAlternates = [dbo].[Collection].[AddAlternates] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo IF NOT EXISTS (SELECT 1 FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[TitleNo]=@TitleNo) BEGIN INSERT INTO [dbo].[LocalTitle] ([dbo].[LocalTitle].[ColNo], [dbo].[LocalTitle].[TitleNo], [dbo].[LocalTitle].[Subscribe], [dbo].[LocalTitle].[YesMsgNo],[dbo].[LocalTitle].[NoMsgNo],[dbo].[LocalTitle].[Notes],[dbo].[LocalTitle].[SummaryHoldings], [dbo].[LocalTitle].[CallNumber],[dbo].[LocalTitle].[Status]) VALUES (@ColNo, @TitleNo, @Subscribe, @YesMsgNo,@NoMsgNo,@Notes,@Summary, @CallNumber,'a') IF @AddAlternates = 1 INSERT INTO [dbo].[LocalTitle] ([dbo].[LocalTitle].[ColNo], [dbo].[LocalTitle].[TitleNo], [dbo].[LocalTitle].[Subscribe], [dbo].[LocalTitle].[YesMsgNo],[dbo].[LocalTitle].[NoMsgNo],[dbo].[LocalTitle].[Notes],[dbo].[LocalTitle].[SummaryHoldings], [dbo].[LocalTitle].[CallNumber],[dbo].[LocalTitle].[Status]) SELECT @ColNo, [a].[TgtTitleNo], @Subscribe, @YesMsgNo,@NoMsgNo,@Notes,@Summary, @CallNumber,'a' FROM [dbo].[TitleLink] a WHERE a.SrcTitleNo=@TitleNo AND [a].[TgtTitleNo] NOT IN (SELECT [dbo].[LocalTitle].[TitleNo] FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo]=@ColNo) END ELSE BEGIN UPDATE [dbo].[LocalTitle] SET [dbo].[LocalTitle].[Subscribe]=@Subscribe, [dbo].[LocalTitle].[YesMsgNo]=@YesMsgNo,[dbo].[LocalTitle].[NoMsgNo]=@NoMsgNo, [dbo].[LocalTitle].[Notes]=@Notes, [dbo].[LocalTitle].[SummaryHoldings]=@Summary, [dbo].[LocalTitle].[CallNumber]=@CallNumber,[dbo].[LocalTitle].[Status]='a' WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[TitleNo]=@TitleNo IF @AddAlternates = 1 UPDATE [dbo].[LocalTitle] SET [dbo].[LocalTitle].[Subscribe]=@Subscribe, [dbo].[LocalTitle].[YesMsgNo]=@YesMsgNo,[dbo].[LocalTitle].[NoMsgNo]=@NoMsgNo, [dbo].[LocalTitle].[Notes]=@Notes, [dbo].[LocalTitle].[SummaryHoldings]=@Summary, [dbo].[LocalTitle].[CallNumber]=@CallNumber,[dbo].[LocalTitle].[Status]='a' WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[TitleNo] IN (SELECT [dbo].[TitleLink].[TgtTitleNo] FROM [dbo].[TitleLink] WHERE [dbo].[TitleLink].[SrcTitleNo]=@TitleNo) END END END
--sql content merged from file: \StoredProcedures\EAUI_GetLiveDatabaseListByPubliser_81.sql CREATE PROCEDURE [dbo].[EAUI_GetLiveDatabaseListByPubliser_81](@PublisherID varchar(10))AS BEGIN IF LEN(@PublisherID) > 0 BEGIN SELECT dl.DbName, vc.DisplayName FROM [dbo].[DbList] dl INNER JOIN [dbo].[DbTypeList] dt ON dl.DbType=dt.DbType INNER JOIN [dbo].[DbPublisher] dp ON dl.DbVerNo=dp.DbVerNo INNER JOIN dbo.EAIF_GetDbVendorConnectorDisplayName() vc ON dl.DbVerNo = vc.DbVerNo AND dl.DbType = vc.DbType WHERE dt.Category='R' AND dt.DbType <> 0 AND dp.PubID=@PublisherID order by vc.SortOrder END ELSE EXEC dbo.EAUI_GetLiveDatabaseList_70 END
CREATE PROCEDURE [dbo].[EATL_UpdateGlobalDbGroup_80](@UserID nvarchar(20), @UserIP varchar(15), @GroupID varchar(12), @Caption nvarchar(255),@MouseOverText nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @GroupNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID) RETURN ELSE SELECT @GroupNo=[dbo].[GroupList].[GroupNo] FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo AND [dbo].[GroupCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[GroupCaption] SET [dbo].[GroupCaption].[Caption]=@Caption, [dbo].[GroupCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo AND [dbo].[GroupCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) DbGroup Caption, MouseOverText' END ELSE BEGIN INSERT INTO [dbo].[GroupCaption] ([dbo].[GroupCaption].[GroupNo],[dbo].[GroupCaption].[LangCode],[dbo].[GroupCaption].[Caption],[dbo].[GroupCaption].[MouseOverText]) VALUES (@GroupNo,@Lang,@Caption,@MouseOverText) SET @LogFlag ='Translate(Insert)DbGroup Caption, MouseOverText' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @GroupID, @LogFlag, 'Lang:', @Lang, 'Caption:', @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDbProfileClusters_89] (@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10), @DbVerNo Int)AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int, @DBLabel varchar(10), @DbType smallint SELECT @ProfNo=[dbo].[Profile].[ProfNo],@DbLabel=[dbo].[Profile].[DbLabel] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT @DbType = [dbo].[DbList].[DbType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF(@DbType = 1) SELECT cl.ClustId ID FROM [dbo].[ClusterList] cl INNER JOIN [dbo].[GlobalCluster] gc on cl.ClustId = gc.ID LEFT OUTER JOIN [dbo].[ProfileClusters2] pc ON pc.ProfNo = @ProfNO AND cl.ClustNo = pc.ClustNo LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE cl.DbLabel = @DBLabel AND ((pc.Show is null AND gc.Show=1 ) OR pc.Show =1) AND ( dc.Enable = 1 OR (cl.AutoAdd2Db = 1 AND dc.Enable Is Null) ) END
CREATE PROCEDURE [dbo].[EAUI_GetGroupDetail_80] (@GroupNo int, @LangCode varchar(10))AS BEGIN SELECT gl.GroupID, gl.GroupNotes, gc.Caption, gc.MouseOverText FROM [dbo].[GroupList] gl LEFT OUTER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo = gc.GroupNo AND gc.LangCode = @LangCode WHERE gl.GroupNo = @GroupNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceScreenSequence_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ScreenNoList VARCHAR(max), @SeqNoList VARCHAR(max) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @ScreenList TABLE (SeqNo NVARCHAR(255), ScreenID NVARCHAR(255)) INSERT INTO @ScreenList SELECT * FROM dbo.EAIF_GetItemValueTable_70(@SeqNoList,@ScreenNoList,'+') DECLARE @scnId VARCHAR (10)=(SELECT top 1 ScreenID FROM @ScreenList WHERE ScreenID NOT IN (SELECT [dbo].[InterfaceScreen].[ScreenID] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version] =@Version)) IF @scnId IS NOT NULL BEGIN RAISERROR('The ScreenID:''%s'' does not exists for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1,@scnId, @InterfaceID, @Version) RETURN END BEGIN TRANSACTION UPDATE [dbo].[InterfaceScreen] SET [SeqNo] = CONVERT(INT,sl.SeqNo) FROM [dbo].[InterfaceScreen] sc INNER JOIN @ScreenList sl ON sc.ScreenID = sl.ScreenID WHERE sc.InterfaceID=@InterfaceID AND sc.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface Screens','Update Interface Screen Sequence', @InterfaceID,@Version,@ScreenNoList,@SeqNoList COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileZ3950Target_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ItemName varchar(10), @ParamValue nvarchar(max)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') EXEC [dbo].[EAIP_UpdateProfileParamXmlValue_70] @UserID ,@UserIP,@ProfNo, @ParamNo, @ItemName ,@ParamValue DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify Z39.50 Target for a Profile',@ProfLogName,@ItemName END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseList_70](@DbLabel varchar(10),@SourceTypeList varchar(10)) AS BEGIN IF @DbLabel = 'custom' SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType join dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item join EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType left outer join [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE [l].[DbLabel] not in ('live', 'liveQC', 'rebuild', 'rebuildQC')-- AND l.SourceType = @SourceType ORDER BY l.DisplayName ELSE SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType join dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item join EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType left outer join [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE [l].[DbLabel] = @DbLabel-- AND l.SourceType = @SourceType ORDER BY l.DisplayName END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomerParamXmlItemName_70](@CustID varchar(10), @ParamName varchar(100), @OldItemName varchar(255), @NewItemName varchar(255)) AS BEGIN DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'C') EXEC [dbo].[EAIP_UpdateCustomParamXmlItemName_70] @CustNo,'C',@ParamNo,@OldItemName,@NewItemName END
CREATE PROCEDURE [dbo].[EAIP_GetProfileDBLimitersAutoAdd_76] (@ProfNo int, @DBVerNo int, @LangCode varchar(10), @EditLevel int , @ScreenNo int) AS BEGIN Declare @CustType char(1) select @CustType=[c].[CustType] from [dbo].[Customer] c Join [dbo].[Profile] P on c.CustID=p.CustID and p.ProfNo=@ProfNo Declare @Return table (SeqNo int, LimiterNo int, LimiterID varchar(20), Caption nvarchar(100), Show bit, DefValue varchar(255), GroupCount int, AllowCustom int, TemplateDisplayType char(1), DbVerNo int) DECLARE @Show bit DECLARE @ShowOff bit SELECT @Show = [dbo].[InterfaceScreen].[LimiterShow] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @GroupCount int SELECT @GroupCount= count([dbo].[InterfaceLimiterGroup].[GroupNo]) FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo]=@ScreenNo SET @ShowOff=0 Insert @Return SELECT ISNULL(pdl2.SeqNo,(ISNULL(dil.SeqNo,dl.SeqNo))) AS SeqNo, ll.LimiterNo, CASE WHEN ll.BitFlag1=1 THEN ll.LimiterId+'*' ELSE ll.LimiterId END AS LimiterID, ISNULL(pdc2.Caption,ISNULL(dlc.Caption,'')) AS Caption, CASE WHEN ll.BitFlag1=1 THEN ISNULL(pdl2.Show, (ISNULL(dil.Show,@ShowOff))) ELSE ISNULL(pdl2.Show, (ISNULL(dil.Show,@Show))) END AS Show, ISNULL(pdl2.DefValue,(ISNULL(dil.DefValue, ISNULL(dl.DefValue,''))))+';'+ISNULL(lct.DefaultEditControl,'')+';'+ISNULL(lct.DefaultValueTemplate,'')+';'+lct.ControlTag AS DefValue, @GroupCount AS GroupCount, lct.ProfileCustDefault+CONVERT(int, ll.AllowCustom) AS AllowCustom, CASE WHEN ll.IsListContentsGrouped=1 THEN 'G' -- This value is applicable to limiters of listbox /dropdown type only. ELSE 'M' END as TemplateDisplayType, @DBVerNo FROM [dbo].[DbLimiter] dl LEFT OUTER JOIN [dbo].[DbLimiterCaption] dlc ON dl.LimiterNo = dlc.LimiterNo AND dl.DbVerNo = dlc.DbVerNo AND dlc.LangCode = @LangCode LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo = dil.DbVerNo AND dl.LimiterNo = dil.LimiterNo AND dil.IntfScreenNo=@ScreenNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdl2 ON dl.DbVerNo = pdl2.DbVerNo AND dl.LimiterNo= pdl2.LimiterNo AND pdl2.IntfScreenNo = @ScreenNo AND pdl2.ProfNo=@ProfNo LEFT OUTER JOIN [dbo].[ProfDbLimiterCaption2] pdc2 ON pdl2.ProfNo = pdc2.ProfNo AND pdl2.IntfScreenNo = pdc2.IntfScreenNo AND pdl2.DbVerNo = pdc2.DbVerNo AND pdl2.LimiterNo= pdc2.LimiterNo AND pdc2.LangCode = @LangCode INNER JOIN --join ProfDatabase pdb -- on pdl2.ProfNo=pdb.ProfNo and dl.DbVerNo=pdb.DbVerNo, [dbo].[LimiterList] ll ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType WHERE dl.DbVerNo = @DbVerNo AND ( ll.BitFlag1=0 OR @EditLevel=1) -- return hidden limiters only for EP Admins AND dl.ResFlag = 1 UNION ALL SELECT ISNULL(pdl2.SeqNo,dil.SeqNo) AS SeqNo, ll.LimiterNo, CASE WHEN ll.BitFlag1=1 THEN ll.LimiterId+'*' ELSE ll.LimiterId END AS LimiterID, ISNULL(pdc2.Caption,ISNULL(dlc.Caption,'')) AS Caption, ISNULL(pdl2.Show, dil.Show) AS Show, ISNULL(pdl2.DefValue,(ISNULL(dil.DefValue, ISNULL(dl.DefValue,''))))+';'+ISNULL(lct.DefaultEditControl,'')+';'+ISNULL(lct.DefaultValueTemplate,'')+';'+lct.ControlTag AS DefValue, @GroupCount As GroupCount, lct.ProfileCustDefault+CONVERT(int, ll.AllowCustom) AS AllowCustom, CASE WHEN ll.IsListContentsGrouped=1 THEN 'G' -- This value is applicable to limiters of listbox /dropdown type only. ELSE 'M' END as TemplateDisplayType, @DBVerNo FROM [dbo].[DbLimiter] dl LEFT OUTER JOIN [dbo].[DbLimiterCaption] dlc ON dl.LimiterNo = dlc.LimiterNo AND dl.DbVerNo = dlc.DbVerNo AND dlc.LangCode = @LangCode INNER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo = dil.DbVerNo AND dl.LimiterNo = dil.LimiterNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdl2 ON dil.DbVerNo = pdl2.DbVerNo AND dil.IntfScreenNo = pdl2.IntfScreenNo AND dil.LimiterNo= pdl2.LimiterNo AND pdl2.ProfNo=@ProfNo LEFT OUTER JOIN [dbo].[ProfDbLimiterCaption2] pdc2 ON pdl2.ProfNo = pdc2.ProfNo AND pdl2.IntfScreenNo = pdc2.IntfScreenNo AND pdl2.DbVerNo = pdc2.DbVerNo AND pdl2.LimiterNo= pdc2.LimiterNo AND pdc2.LangCode = @LangCode INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType WHERE dl.DbVerNo = @DbVerNo AND dil.IntfScreenNo=@ScreenNo AND (ll.BitFlag1=0 OR @EditLevel=1) -- return hidden limiters only for EP Admins AND dl.ResFlag = 0 if @CustType in ('S', 'T') select SeqNo, LimiterNo, LimiterID, Caption, Show, DefValue, GroupCount, AllowCustom, TemplateDisplayType from @Return ORDER BY SeqNo Else Select r.SeqNo, [r].[LimiterNo], [r].[LimiterID], [r].[Caption], [r].[Show], [r].[DefValue], [r].[GroupCount], [r].[AllowCustom], [r].[TemplateDisplayType] from @Return r Join [dbo].[ProfDatabase] pdb on r.DbVerNo=pdb.DbVerNo and pdb.ProfNo=@ProfNo END
CREATE Procedure [dbo].[EAUI_UpdateCustomParamXmlValues_89] @UserID nvarchar(50), @UserIP varchar(50), @TargetNo int, @ParamLevel char(1), @ParamNo int, @ItemName varchar(255), @ParamValue nvarchar(max)=null, @SeqNo int=null as Update [dbo].[CustomParamXmlValues] set [dbo].[CustomParamXmlValues].[ParamValue]=@ParamValue where [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo and [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlValues].[ItemName]=@ItemName If @@RowCount=0 Insert [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], [dbo].[CustomParamXmlValues].[SeqNo]) Values (@TargetNo, @ParamLevel, @ParamNo, @ItemName, @ParamValue, @SeqNo) Exec [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'CustomParamXmlFields', 'Set Target Default Values', @TargetNo, @ParamLevel, @ParamNo, @ParamValue
CREATE FUNCTION [dbo].[EAIF_GetDbParamName_70](@ParamNo int) RETURNS varchar(100) AS BEGIN RETURN ( SELECT [dbo].[DbParamList].[ParamName] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamNo]=@ParamNo ) END
--sql content merged from file: \StoredProcedures\EAUI_DetachDatabaseAuthority_70.sql CREATE PROCEDURE [dbo].[EAUI_DetachDatabaseAuthority_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @AuthDbVerNo int) AS BEGIN DECLARE @AuthDbName varchar(10) SELECT @AuthDbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@AuthDbVerNo /* When Authority is detached from DbAuthority, Delete the corresponding Authorities from ProfAuthDbDefaults (for all profiles) */ /* We cannot have DELETE CASCADE on DbAuthority in ProfAuthDbDefaults due to cyclic reference */ /* Delete the entry from ProfAuthDbDefaults FIRST; otherwise it would throw an error (referencial integrity issue) */ DELETE FROM [dbo].[ProfAuthDbDefaults] WHERE [dbo].[ProfAuthDbDefaults].[MainDbVerNo]=@DbVerNo AND [dbo].[ProfAuthDbDefaults].[AuthDbVerNo]=@AuthDbVerNo /* Delete Entry from DbAuthority */ DELETE FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo]=@DbVerNo AND [dbo].[DbAuthority].[AuthDbVerNo]=@AuthDbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Detach Authority','',@AuthDbName END
CREATE PROCEDURE [dbo].[BLL_GetDbSubjList](@ShortDbName varchar(10), @DbLabel varchar(10)='live') AS BEGIN DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int SELECT @xmlText=[a].[ParamValue], @xmlTextLen=DATALENGTH([a].[ParamValue]) FROM [dbo].[DbParamXmlValues] a INNER JOIN [dbo].[DbParamList] b ON a.ParamNo=b.ParamNo INNER JOIN [dbo].[DbList] c ON c.DbVerNo=a.DbVerNo WHERE b.ParamName='dbSubjects' AND c.DbName=@ShortDbName AND c.DbLabel=@DbLabel IF @xmlTextLen < 8001 BEGIN --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText END ELSE BEGIN DECLARE @xml_0 varchar( 7500 ), @xml_1 varchar( 7500 ), @xml_2 varchar( 7500 ), @xml_3 varchar( 7500 ), @xml_4 varchar( 7500 ), @xml_5 varchar( 7500 ), @xml_6 varchar( 7500 ), @xml_7 varchar( 7500 ), @xml_8 varchar( 7500 ), @xml_9 varchar( 7500 ), @xml_10 varchar( 7500 ), @xml_11 varchar( 7500 ), @xml_12 varchar( 7500 ), @xml_13 varchar( 7500 ), @xml_14 varchar( 7500 ), @xml_15 varchar( 7500 ), @xml_16 varchar( 7500 ), @xml_17 varchar( 7500 ), @xml_18 varchar( 7500 ), @xml_19 varchar( 7500 ) -- Strip the text value into several varchar strings: SELECT @xml_0 = SUBSTRING( [a].[ParamValue], ( 0*7500 ) + 1, 7500 ), @xml_1 = SUBSTRING( [a].[ParamValue], ( 1*7500 ) + 1, 7500 ), @xml_2 = SUBSTRING( [a].[ParamValue], ( 2*7500 ) + 1, 7500 ), @xml_3 = SUBSTRING( [a].[ParamValue], ( 3*7500 ) + 1, 7500 ), @xml_4 = SUBSTRING( [a].[ParamValue], ( 4*7500 ) + 1, 7500 ), @xml_5 = SUBSTRING( [a].[ParamValue], ( 5*7500 ) + 1, 7500 ), @xml_6 = SUBSTRING( [a].[ParamValue], ( 6*7500 ) + 1, 7500 ), @xml_7 = SUBSTRING( [a].[ParamValue], ( 7*7500 ) + 1, 7500 ), @xml_8 = SUBSTRING( [a].[ParamValue], ( 8*7500 ) + 1, 7500 ), @xml_9 = SUBSTRING( [a].[ParamValue], ( 9*7500 ) + 1, 7500 ), @xml_10 = SUBSTRING( [a].[ParamValue], ( 10*7500 ) + 1, 7500 ), @xml_11 = SUBSTRING( [a].[ParamValue], ( 11*7500 ) + 1, 7500 ), @xml_12 = SUBSTRING( [a].[ParamValue], ( 12*7500 ) + 1, 7500 ), @xml_13 = SUBSTRING( [a].[ParamValue], ( 13*7500 ) + 1, 7500 ), @xml_14 = SUBSTRING( [a].[ParamValue], ( 14*7500 ) + 1, 7500 ), @xml_15 = SUBSTRING( [a].[ParamValue], ( 15*7500 ) + 1, 7500 ), @xml_16 = SUBSTRING( [a].[ParamValue], ( 16*7500 ) + 1, 7500 ), @xml_17 = SUBSTRING( [a].[ParamValue], ( 17*7500 ) + 1, 7500 ), @xml_18 = SUBSTRING( [a].[ParamValue], ( 18*7500 ) + 1, 7500 ), @xml_19 = SUBSTRING( [a].[ParamValue], ( 19*7500 ) + 1, 7500 ) FROM [dbo].[DbParamXmlValues] a INNER JOIN [dbo].[DbParamList] b ON a.ParamNo=b.ParamNo INNER JOIN [dbo].[DbList] c ON c.DbVerNo=a.DbVerNo WHERE b.ParamName='dbSubjects' AND c.DbName=@ShortDbName AND c.DbLabel=@DbLabel EXEC [dbo].[EAIPO_XmlPrepareDocument_70] @xmlDocHandle OUTPUT, @xml_0, @xml_1, @xml_2, @xml_3, @xml_4, @xml_5, @xml_6, @xml_7, @xml_8, @xml_9, @xml_10,@xml_11, @xml_12, @xml_13, @xml_14, @xml_15, @xml_16, @xml_17, @xml_18, @xml_19 END -- Execute a SELECT statement that uses the OPENXML rowset provider. SELECT SubjNo, SubjName, searchable, BoolTerm, NLTerm, Image1, Image2, Image3, Image4, Image5, ParentSubjNo FROM OPENXML (@xmlDocHandle, '/dbSubjects/dbSubject',1) WITH (SubjNo int '@id', SubjName varchar(100) '@name', searchable bit '@searchable', ParentSubjNo int '@parentid', BoolTerm varchar(255) 'booleanTerm', NLTerm varchar(255) 'fuzzyTerm', Image1 varchar(50) 'images/image[@no="1"]/@name', Image2 varchar(50) 'images/image[@no="2"]/@name', Image3 varchar(50) 'images/image[@no="3"]/@name', Image4 varchar(50) 'images/image[@no="4"]/@name', Image5 varchar(50) 'images/image[@no="5"]/@name') ORDER BY ParentSubjNo, SubjNo EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END
--sql content merged from file: \StoredProcedures\EAIP_GetClustersList_80.sql CREATE PROCEDURE [dbo].[EAIP_GetClustersList_102] AS /** procedure is used by EACopy **/ BEGIN SELECT gc.ID, cl.DbLabel, gc.XPath, gc.XPathEnh, gc.Tag, gc.MinDisplay, gc.MaxDisplay, gc.Show, dbo.EAIF_ClustersLangAndCaptions_80(gc.ID) as Captions, cl.SeqNo, cl.AutoAdd2Db, gc.Notes, gc.MaxPercentageResults, gc.CaseConversion, gc.AutoAdd2Interfaces FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID=cp.ID AND cp.LangCode='en' Left Outer JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId END
CREATE PROCEDURE [dbo].[EAUI_GetSharedColID_70] (@ColNo int) AS BEGIN DECLARE @SharedColNo int DECLARE @CustID VARCHAR(10) = '' DECLARE @ColID NVARCHAR(50) = '' SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 SELECT @CustID = [dbo].[Collection].[CustID], @ColID = [dbo].[Collection].[ColID] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo]=@SharedColNo AND [dbo].[Collection].[IsDeleted] = 0 SELECT @CustID as CustID, @ColID as ColID END
CREATE PROCEDURE [dbo].[EAUI_AttachDatabaseFeature_80](@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @FeatureList varchar(8000))AS BEGIN BEGIN TRANSACTION INSERT INTO [dbo].[DbFeature] ([dbo].[DbFeature].[DbVerNo], [dbo].[DbFeature].[FeatureNo]) SELECT @DbVerNo, CONVERT(int,a.Item) FROM dbo.EAIF_GetItemTable_70(@FeatureList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@FeatureList,1,1024),'+',',') IF DATALENGTH(@FeatureList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@FeatureList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Add Features', @DbName,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetChangeCustomers_100](@LastUpdated varchar(20), @Category varchar(20)) AS BEGIN IF @Category='' OR @Category is null SET @Category='%' --def value of parameters SELECT l.ParamName, l.ParamType, ISNULL(l.DefValue, '') AS ParamValue FROM [dbo].[CustomParamList] l WHERE l.Category like @Category IF @LastUpdated is not null SELECT c.CustID, l.ParamName, l.ParamType, ISNULL(ISNULL(v.ParamValue, cpcrd.DefValue), '') AS ParamValue FROM [dbo].[CustomParamList] l JOIN [dbo].[CustomParamScalarValues] v ON l.ParamNo=v.ParamNo JOIN [dbo].[Customer] c ON c.CustNo=v.TargetNo JOIN ( select distinct lu.TargetNo from [dbo].[CustomParamLastUpdate] lu join [dbo].[CustomParamList] l on lu.ParamNo=l.ParamNo where l.Category like @Category and l.ParamLevel = 'C' and lu.LastUpdateTime>=@LastUpdated )a on a.TargetNo=c.CustNo LEFT JOIN [dbo].[CustomParamCustTypeDefaults] cpcrd ON cpcrd.ParamNo =l.ParamNo AND cpcrd.CustType = c.CustType WHERE l.Category like @Category AND l.ParamLevel = 'C' ORDER BY c.CustID ELSE IF @Category='NetLibrary' BEGIN DECLARE @eBookSubParamNo int DECLARE @aBookSubParamNo int SELECT @eBookSubParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='accessEbookSiteParam' SELECT @aBookSubParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] ='accessAudiobookSiteParam' select c.CustID, l.ParamName, l.ParamType, ISNULL(ISNULL(v.ParamValue, cpcrd.DefValue), '') AS ParamValue from [dbo].[CustomParamList] l join [dbo].[CustomParamScalarValues] v on l.ParamNo=v.ParamNo join ( select [v].[TargetNo] from [dbo].[CustomParamScalarValues] v where (v.ParamNo=@eBookSubParamNo OR v.ParamNo=@aBookSubParamNo ) and v.ParamValue ='1' ) a on v.TargetNo=a.TargetNo join [dbo].[Customer] c on c.CustNo=a.TargetNo LEFT JOIN [dbo].[CustomParamCustTypeDefaults] cpcrd ON cpcrd.ParamNo =l.ParamNo AND cpcrd.CustType = c.CustType where l.ParamLevel='C' and l.Category='NetLibrary' order by c.CustID END ELSE select c.CustID, l.ParamName, l.ParamType, ISNULL(ISNULL(v.ParamValue, cpcrd.DefValue), '') AS ParamValue from [dbo].[CustomParamList] l join [dbo].[CustomParamScalarValues] v on l.ParamNo=v.ParamNo join [dbo].[Customer] c on c.CustNo=v.TargetNo LEFT JOIN [dbo].[CustomParamCustTypeDefaults] cpcrd ON cpcrd.ParamNo =l.ParamNo AND cpcrd.CustType = c.CustType where l.ParamLevel='C' and l.Category like @Category order by c.CustID END
-- EHPMEBSCOADMIN-2093 Database Opt-in Policy Change - Scripts to update profile parameter --@topRowsCount is number of rows to be processed in one transaction. -- By default procedure will process 100 rows at a time. Create PROCEDURE [dbo].[EAIP_AddNewContentAutoAddParamCustomizationForAllExistingEDSProfiles]( @topRowsCount int=100) AS BEGIN SET NOCOUNT ON DECLARE @newContentAutoAddParamNo INT DECLARE @rowsToBeProcessed INT DECLARE @topRows INT DECLARE @adminStateParamName VARCHAR(100) DECLARE @newContentAutoAddParamLastProfNoProcessed INT SET @adminStateParamName = 'NewContentAutoAddParamLastProcessedProfNo' -- Get the ParamNo for the NewContentAutoAdd SELECT @newContentAutoAddParamNo = ISNULL([dbo].[CustomParamList].[ParamNo], -1) FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'newContentAutoAddToProfile' SET @topRows = @topRowsCount -- Drop & Create Temp work file. IF EXISTS ( SELECT 1 FROM tempdb.dbo.sysobjects o WHERE o.xtype IN ( 'U' ) AND o.id = OBJECT_ID(N'tempdb..#WorkProfNoTbl') ) BEGIN PRINT 'Step1: Drop the temp work file : #WorkProfNoTbl' PRINT '' DROP TABLE #WorkProfNoTbl; END PRINT 'Step2: Create the temp work file and add a index file : #WorkProfNoTbl' PRINT '' CREATE TABLE #WorkProfNoTbl ( ProfNo INT ) CREATE INDEX IX_TMP_WorkProfNoTbl ON #WorkProfNoTbl(ProfNo) -- Create backup table for the CustomParamScalarValues update for NewContentAutoAdd paramcustomization. IF NOT EXISTS (SELECT * FROM sys.objects WHERE [sys].[objects].[object_id] = OBJECT_ID(N'[dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404]') AND [sys].[objects].[type] ='U') BEGIN PRINT 'Step3: Create the backup table: Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404' PRINT '' CREATE TABLE [dbo].Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404 ( [ProfNo] INT NOT NULL , [AddUpdateFlag] VARCHAR(10) NULL , [CurrentNewContentParamValue] VARCHAR(10) NULL ) ON [PRIMARY] CREATE INDEX IX_Bkup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404_1 ON [dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404] (ProfNo) END IF NOT EXISTS ( SELECT 1 FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName] = @adminStateParamName ) BEGIN PRINT 'Step4: Create a new parameter on AdminState table to hold the latestEDSProfNo processed for NewContentAutoUdpate - ParamName:NewContentAutoAddParamLastProcessedProfNo' PRINT '' INSERT INTO [dbo].[AdminState] ( [dbo].[AdminState].[ParamName], [dbo].[AdminState].[ParamValue] ) SELECT @AdminStateParamName , 0 END --Get the last profile processed for NewContentAutoAdd Update SELECT @newContentAutoAddParamLastProfNoProcessed = CAST(ISNULL([dbo].[AdminState].[ParamValue],0) AS INT) FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName] = @adminStateParamName PRINT 'Step5: Main processing Begin' PRINT '' WHILE ( 1 = 1 ) /* Indefinite Loop -- Exit only when there is no rows to be processed */ BEGIN PRINT 'Step5: Main processing loop' -- Insert the next top @toprows to be processsed INSERT INTO #WorkProfNoTbl SELECT TOP ( @topRows ) p.ProfNo FROM [dbo].[Profile] p WITH ( NOLOCK ) INNER JOIN [dbo].[InterfaceVersion] iv WITH ( NOLOCK ) ON iv.InterfaceID=p.InterfaceID AND iv.Version=p.Version WHERE iv.InterfaceID IN ( 'eds', 'wsapi' ) AND iv.Version = 'live' AND p.ProfID = iv.DefProfID AND p.GroupID IN ('main') AND p.ProfNo > @newContentAutoAddParamLastProfNoProcessed ORDER BY [p].[ProfNo] ASC SET @rowsToBeProcessed = @@ROWCOUNT --- If there are no eds/wsapi profile to be processed EXIT the Loop IF ( @rowsToBeProcessed < 1 ) BEGIN PRINT 'Exiting the loop now' /* Exit the While Loop here */ BREAK; END BEGIN TRY BEGIN TRANSACTION -- Update the LogFile first (Backup_ here) with the list of eds profiles being processed INSERT INTO [dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404] ( [dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404].[ProfNo] , [dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404].[AddUpdateFlag] , [dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404].[CurrentNewContentParamValue] ) SELECT w.ProfNo , CASE WHEN cv.TargetNo IS NULL THEN 'A' WHEN cv.TargetNo IS NOT NULL AND cv.ParamValue = '1' THEN 'U' ELSE 'N/A' /* There could entries with paramvalue =0, No action needed in this case */ END AS AddUpdateFlag , CASE WHEN cv.TargetNo IS NOT NULL THEN cv.ParamValue ELSE '' END AS CurrentNewContentParamValue FROM #WorkProfNoTbl w LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH ( NOLOCK ) ON ( cv.TargetNo = w.ProfNo AND cv.ParamLevel = 'P' AND cv.ParamNo = @newContentAutoAddParamNo ) LEFT OUTER JOIN [dbo].[Backup_AddNewContentAutoAddParamCustomizationForEDSProfiles_201404] b ON [b].ProfNo = w.ProfNo WHERE [b].ProfNo IS NULL ORDER BY w.ProfNo -- Add customization for NewContentAutoAdd Paramter for the selected EDS/WS-API profiles in @WorkProfNoTbl INSERT INTO [dbo].[CustomParamScalarValues] ( [cv].[TargetNo] , [cv].[ParamLevel] , [cv].[ParamNo] , [cv].[ParamValue] ) SELECT w.ProfNo , 'P' , @newContentAutoAddParamNo , '0' FROM #WorkProfNoTbl w LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv ON ( cv.TargetNo = w.ProfNo AND cv.ParamLevel = 'P' AND cv.ParamNo = @newContentAutoAddParamNo ) WHERE cv.TargetNo IS NULL ORDER BY w.ProfNo -- If customized entries already exists (with ParamValue =1), Update the paramvalue to Zero UPDATE [dbo].[CustomParamScalarValues] SET [ParamValue] = '0' FROM [dbo].[CustomParamScalarValues] cv INNER JOIN #WorkProfNoTbl w ON w.ProfNo = cv.TargetNo WHERE cv.TargetNo = w.ProfNo AND cv.ParamLevel = 'P' AND cv.ParamNo = @newContentAutoAddParamNo AND cv.ParamValue = '1' SELECT @newContentAutoAddParamLastProfNoProcessed = MAX(#WorkProfNoTbl.[ProfNo]) FROM #WorkProfNoTbl UPDATE [dbo].[AdminState] SET [dbo].[AdminState].[ParamValue] = @newContentAutoAddParamLastProfNoProcessed WHERE [dbo].[AdminState].[ParamName] = @adminStateParamName COMMIT TRANSACTION --- clear the temp table first TRUNCATE TABLE #WorkProfNoTbl END TRY BEGIN CATCH ROLLBACK TRANSACTION PRINT 'Error : Rollback transaction' DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE() , @ErrorSeverity = ERROR_SEVERITY() , @ErrorState = ERROR_STATE(); BREAK; -- EXIT the looping END CATCH END PRINT 'Step5: Main processing Ended' PRINT '' END
CREATE PROCEDURE [dbo].[EAUI_GetLiveInterfaceList_70] AS BEGIN SELECT [InterfaceID] = [dbo].[InterfaceLanguage].[InterfaceID] + '/' + [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[InterfaceName] FROM [dbo].[InterfaceLanguage] WHERE lower([dbo].[InterfaceLanguage].[LangCode]) = 'en' ORDER BY [dbo].[InterfaceLanguage].[InterfaceName] END
CREATE PROCEDURE EATL_UpdateGlobalDbGroup_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,GroupID VARCHAR(12) ,Caption NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #Objects ( GroupID ,Caption ,MouseOverText ) SELECT m.c.value('(./GroupId)[1]', 'varchar(12)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@GroupID VARCHAR(12) ,@Caption NVARCHAR(255) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @GroupID = GroupID ,@Caption = Caption ,@MouseOverText = MouseOverText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalDbGroup_80] @UserID ,@UserIP ,@GroupID ,@Caption ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbSearchOptions_76]( @DbName varchar(10), @Label varchar(10) ) AS BEGIN DECLARE @DbVerNo int SET @DbVerNo=dbo.EAIF_GetDbVerNo_70( @DbName, @Label ) SELECT [b].[SearchOptionId],[a].[OptionType],[a].[SearchString],[a].[TargetDb],[a].[SourceType],[a].[TabImage],[a].[AuthoritySubset],[a].[AuthorityView], dbo.EAIF_GetSearchOptionCaptions_76(a.DbVerNo,a.SearchOptionNo) as OptionCaptions, dbo.EAIF_GetSearchResultCaptions_76(a.DbVerNo,a.SearchOptionNo) as ResultCaptions, dbo.EAIF_GetSearchDescriptions_76(a.DbVerNo,a.SearchOptionNo) as Descriptions FROM [dbo].[DbSearchOption] a INNER JOIN [dbo].[SearchOptionList] b ON a.SearchOptionNo=b.SearchOptionNo WHERE [a].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetGroupDetails_80] (@GroupNo int, @LangCode varchar(10))AS BEGIN SELECT gc.Caption, gl.GroupID FROM [dbo].[GroupList] gl LEFT OUTER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo=gc.GroupNo WHERE gl.GroupNo=@GroupNo AND gc.LangCode='en' END
CREATE PROCEDURE dbo.EAIP_UpdateLimiter_101 ( @LimiterNo int, @LimiterId varchar(20), @DbLabel varchar(10), @LimiterType char(1), @ControlType smallint, @ControlSize smallint, @LogicalOpCode varchar(3), @Description nvarchar(100), @Notes nvarchar(255), @Hidden bit, @SearchString varchar(4000), @AllowCustom bit=0, @GroupListBoxContentsFlag bit, @GroupListItemUniqueID varchar (255), @enableQueryMask BIT, @queryMaskId varchar(20), @HelpUrl varchar(255), @UserId nvarchar(20) = null, @UserIp varchar(15) = null ) AS BEGIN IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Limiter', 'Update Limiter', @LimiterId, @DbLabel END UPDATE [dbo].[LimiterList] SET [dbo].[LimiterList].[LimiterType] = @LimiterType, [dbo].[LimiterList].[ControlType] = @ControlType, [dbo].[LimiterList].[ControlSize] = @ControlSize, [dbo].[LimiterList].[LogicalOpCode] = @LogicalOpCode, [dbo].[LimiterList].[Description] = @Description, [dbo].[LimiterList].[Notes] = @Notes, [dbo].[LimiterList].[BitFlag1] = @Hidden, [dbo].[LimiterList].[SearchString]=@SearchString, [dbo].[LimiterList].[AllowCustom]=@AllowCustom, [dbo].[LimiterList].[EnableQueryMask] = @enableQueryMask, [dbo].[LimiterList].[QueryMaskId] = @queryMaskId, [dbo].[LimiterList].[IsListContentsGrouped] = @GroupListBoxContentsFlag, [dbo].[LimiterList].[ListItemUniqueId] = @GroupListItemUniqueID, [dbo].[LimiterList].[HelpUrl]=@HelpUrl WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo END
Create Procedure [dbo].[EAUI_UpdateProfMDbLimitersExternalSource_102] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ScreenNo int, @LimiterNo int, @LangCode varchar(10), @Show int, @Caption nvarchar(255), @DefValue varchar(255)=NULL, @SeqNo smallint=NULL) AS Begin DECLARE @LoggingProfile varchar(30), @DbName varchar(10), @LimiterID varchar(20),@IsListContentsGrouped int, @DefShow int, @DefDefValue varchar(255), @DefSeqNo smallint SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @LimiterID = [dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo Select @DefShow=1, @DefDefValue=[dbo].[MDbLimitersExternalSource].[DefValue], @DefSeqNo=[dbo].[MDbLimitersExternalSource].[SeqNo] from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID Begin Try Begin Transaction Merge [dbo].[ProfMDbLimitersExternalSource] as Target Using (Select @ProfNo as ProfNo, @ScreenNo as IntfScreenNo, @LimiterNo as LimiterNo, @Show as Show, @DefValue as DefValue, @SeqNo as SeqNo) as Source On (Target.ProfNo=Source.ProfNo and Target.IntfScreenNo=Source.IntfScreenNo and Target.LimiterNo=Source.LimiterNo) When matched Then Update set Target.Show=Source.Show, Target.DefValue=Source.DefValue, Target.SeqNo=Source.SeqNo When Not matched by target Then Insert ([ProfNo], [IntfScreenNo], [LimiterNo], [Show], [DefValue], [SeqNo]) Values (Source.ProfNo, Source.IntfScreenNo, Source.LimiterNo, Source.Show, Source.DefValue, Source.SeqNo); Merge [dbo].[ProfMDbLimitersExternalSourceCaption] as target Using (Select @ProfNo as ProfNo, @ScreenNo as IntfScreenNo, @LimiterNo as LimiterNo, @LangCode as LangCode, @Caption as Caption) as Source On (Target.ProfNo=Source.ProfNo and Target.IntfScreenNo=Source.IntfScreenNo and Target.LimiterNo=Source.LimiterNo and Target.LangCode=Source.LangCode) When matched then Update set Target.Caption=Source.Caption When Not matched by target then Insert ([ProfNo], [IntfScreenNo], [LimiterNo], [LangCode], [Caption]) Values (Source.ProfNo, Source.IntfScreenNo, Source.LimiterNo, Source.LangCode, Source.Caption); --If not exists (select 1 from ProfMDbLimitersExternalSource where ProfNo=@ProfNo and IntfScreenNo=@ScreenNo and LimiterNo=@LimiterNo) -- Insert ProfMDbLimitersExternalSource (ProfNo, IntfScreenNo, LimiterNo, Show, DefValue, SeqNo) -- Values (@ProfNo, @ScreenNo, @LimiterNo, @Show, @DefValue, @SeqNo) --else -- Update ProfMDbLimitersExternalSource -- set Show=@Show, DefValue=@DefValue, SeqNo=@SeqNo -- where ProfNo=@ProfNo and IntfScreenNo=@ScreenNo and LimiterNo=@LimiterNo --If not exists (Select 1 from ProfMDbLimitersExternalSourceCaption where ProfNo=@ProfNo and IntfScreenNo=@ScreenNo and LimiterNo=@LimiterNo and LangCode=@LangCode) -- Insert ProfMDbLimitersExternalSourceCaption (ProfNo, IntfScreenNo, LimiterNo, LangCode, Caption) -- Values (@ProfNo, @ScreenNo, @LimiterNo, @LangCode, @Caption) --else -- Update ProfMDbLimitersExternalSourceCaption -- Set Caption=@Caption -- where ProfNo=@ProfNo and IntfScreenNo=@ScreenNo and LimiterNo=@LimiterNo and LangCode=@LangCode EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify MDbLimitersExternalSource for a Profile', @LoggingProfile, @LimiterID, @Show Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseList_Paged_203]( @DbLabel varchar(10) ,@SourceTypeList varchar(10) ,@pageIndex INT = 0 ,@pagSize INT = 10 ) AS BEGIN IF @DbLabel = 'custom' SELECT DbVerNo, DisplayName, DbName, DbLabel, DbType, ContentType, SourceType, SourceName, SubsetDbCount FROM ( SELECT distinct ROW_NUMBER() OVER(ORDER BY [DisplayName]) AS RowNr, l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.[DbLabel] NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') ) dbl WHERE dbl.RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize ELSE SELECT DbVerNo, DisplayName, DbName, DbLabel, DbType, ContentType, SourceType, SourceName, SubsetDbCount FROM ( SELECT distinct ROW_NUMBER() OVER(ORDER BY [DisplayName]) AS RowNr, l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE [l].[DbLabel] = @DbLabel ) dbl WHERE RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomerParamXmlValue_70](@CustID varchar(10), @ParamName varchar(100), @ItemName varchar(255),@ParamValue nvarchar(max)) AS BEGIN DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'C') EXEC [dbo].[EAIP_UpdateCustomParamXmlValue_70] @CustNo,'C',@ParamNo,@ItemName,@ParamValue END
CREATE PROCEDURE [dbo].[EAIP_GetProfileDBLimitersNoAutoAdd_76] (@ProfNo int, @DBVerNo int, @LangCode varchar(10), @EditLevel int , @ScreenNo int)AS BEGIN DECLARE @GroupCount int SELECT @GroupCount= count([dbo].[InterfaceLimiterGroup].[GroupNo]) FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo]=@ScreenNo SELECT ISNULL(pdl2.SeqNo,dil.SeqNo) AS SeqNo, ll.LimiterNo, CASE WHEN ll.BitFlag1=1 THEN ll.LimiterId+'*' ELSE ll.LimiterId END AS LimiterID, ISNULL(pdc2.Caption,dlc.Caption) AS Caption, ISNULL(pdl2.Show, dil.Show) AS Show, ISNULL(pdl2.DefValue,(ISNULL(dil.DefValue, ISNULL(dl.DefValue,''))))+';'+ISNULL(lct.DefaultEditControl,'')+';'+ISNULL(lct.DefaultValueTemplate,'')+';'+lct.ControlTag AS DefValue, @GroupCount As GroupCount, lct.ProfileCustDefault+CONVERT(int, ll.AllowCustom) AS AllowCustom, CASE WHEN ll.IsListContentsGrouped=1 THEN 'G' -- This value is applicable to limiters of listbox /dropdown type only. ELSE 'M' END as TemplateDisplayType FROM [dbo].[DbLimiter] dl LEFT OUTER JOIN [dbo].[DbLimiterCaption] dlc ON dl.DbVerNo = dlc.DbVerNo AND dl.LimiterNo = dlc.LimiterNo AND dlc.LangCode = @LangCode INNER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo = dil.DbVerNo AND dl.LimiterNo = dil.LimiterNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdl2 ON dil.DbVerNo = pdl2.DbVerNo AND dil.IntfScreenNo = pdl2.IntfScreenNo AND dil.LimiterNo= pdl2.LimiterNo AND pdl2.ProfNo=@ProfNo LEFT OUTER JOIN [dbo].[ProfDbLimiterCaption2] pdc2 ON pdl2.ProfNo = pdc2.ProfNo AND pdl2.IntfScreenNo = pdc2.IntfScreenNo AND pdl2.DbVerNo = pdc2.DbVerNo AND pdl2.LimiterNo= pdc2.LimiterNo AND pdc2.LangCode = @LangCode INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType WHERE dl.DbVerNo = @DBVerNo AND dil.IntfScreenNo=@ScreenNo AND ( ll.BitFlag1=0 OR @EditLevel=1) -- return hidden limiters only for EP Admins ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[Eaui_updatedatabase_102](@UserID NVARCHAR(20), --01 @UserIP VARCHAR(15), --02 @DbVerNo INT, --03 @DbName VARCHAR(10), --04 @DbLabel VARCHAR(10), --05 @DisplayName NVARCHAR(100) --06 , @DSFamilyName VARCHAR(100), --07 @DbGroup VARCHAR(20)=NULL, --08 @Interface VARCHAR(10), --09 @DbCategory CHAR(1), --10 @ContentType SMALLINT=1, --11 @MultiSegment SMALLINT=0, --12 @EnforceSimUsage BIT=0, --13 @ShowStats BIT=1, --14 @ShowOnDDSConsole BIT=1, --15 @WebClient BIT=1, --16 @Z3950Client BIT=1, --17 @EPXBuild BIT=0, --18 @EDABuild BIT=0, --19 @IncludeWhenAutoAdd BIT=1, --20 @VendorName NVARCHAR(100) = NULL, --21 @ConnectorType NVARCHAR(20) = NULL, --22 @Free BIT = 0, --23 -- 10.2 fields @connectorProvider CHAR(1) = NULL, --24 @notes NVARCHAR( 1000) =NULL--25 ) AS BEGIN IF @Interface = '' SELECT @Interface = NULL ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID] = @Interface) BEGIN RAISERROR('The Interface ID (%s) does not exist',16,-1, @Interface) RETURN END BEGIN TRANSACTION DECLARE @IncludeWhenAutoAdd_old BIT SELECT @IncludeWhenAutoAdd_old = [dbo].[DbList].[IncludeWhenAutoAdd] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @DisplayName, [dbo].[DbList].[DSFamilyName] = @DSFamilyName, [dbo].[DbList].[DbGroup] = @DbGroup, [dbo].[DbList].[InterfaceID] = @Interface, [dbo].[DbList].[DbCategory] = @DbCategory, [dbo].[DbList].[ContentType] = @ContentType, [dbo].[DbList].[MultiSegment] = @MultiSegment, [dbo].[DbList].[EnforceSimUsage] = @EnforceSimUsage, [dbo].[DbList].[ShowStats] = @ShowStats, [dbo].[DbList].[ShowOnDDSConsole] = @ShowOnDDSConsole, [dbo].[DbList].[WebClient] = @WebClient, [dbo].[DbList].[Z3950Client] = @Z3950Client, [dbo].[DbList].[EPXBuild] = @EPXBuild, [dbo].[DbList].[EDABuild] = @EDABuild, [dbo].[DbList].[IncludeWhenAutoAdd] = @IncludeWhenAutoAdd WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF @IncludeWhenAutoAdd_old = 0 AND @IncludeWhenAutoAdd = 1 DELETE [dbo].[InterfaceDbAuthority] FROM [dbo].[InterfaceDbAuthority] ia INNER JOIN [dbo].[InterfaceVersion] i ON ia.InterfaceID = i.InterfaceID AND ia.Version = i.Version WHERE ia.AuthDbVerNo = @DbVerNo AND i.AutoAddAuthority = 1 IF @IncludeWhenAutoAdd_old = 1 AND @IncludeWhenAutoAdd = 0 DELETE [dbo].[InterfaceDbAuthorityOrder] FROM [dbo].[InterfaceDbAuthorityOrder] ia INNER JOIN [dbo].[InterfaceVersion] i ON ia.InterfaceID = i.InterfaceID AND ia.Version = i.Version WHERE ia.AuthDbVerNo = @DbVerNo AND i.AutoAddAuthority = 1 DECLARE @SourceType CHAR(1) DECLARE @originalConnectorProvider CHAR(1) SELECT @SourceType = [dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SELECT @originalConnectorProvider = Isnull([dbo].[DbListExternalSource].[ConnectorProvider], 'Q') FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF @SourceType IN ( 'M' ) BEGIN -- 10.2 Is the connectorProvider consistent with the source type? IF ( @SourceType IN ( 'M' ) AND NOT ( @connectorProvider IN ( 'M', 'I' ) ) ) BEGIN ROLLBACK TRANSACTION RAISERROR( '%s is not a valid connector provider,update failed.',16,-1, @connectorProvider) END -- EXTERNAL SOURCE ADD BRANCH -- if true, we will be installing a new child record if (@originalConnectorProvider <> @connectorProvider) BEGIN DELETE FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbListExternalSourceMuse] WHERE [dbo].[DbListExternalSourceMuse].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END -- if this WAS not an external database or there was some problem IF NOT ( @originalConnectorProvider IN ('I','M') ) BEGIN -- Clear any existing parent record. DELETE FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END -- add the parent record INSERT INTO [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[Notes], [dbo].[DbListExternalSource].[VendorName]) VALUES (@connectorProvider, @ConnectorType, @DbVerNo, @Free, @notes, @VendorName) IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END IF ( @originalConnectorProvider <> @connectorProvider ) BEGIN -- get the connector provider updated UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[ConnectorProvider] = @connectorProvider, [dbo].[DbListExternalSource].[Notes] = @notes, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[Free] = @Free, [dbo].[DbListExternalSource].[VendorName]=@VendorName WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo END ELSE BEGIN -- EXTERNAL SOURCE UPDATE BRANCH UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[VendorName] = @VendorName, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[Free] = @Free, [dbo].[DbListExternalSource].[Notes] = @notes WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END -- EXTERNAL SOURCE UPDATE BRANCH END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, @DbLabel, 'Update Database Attributes' IF @MultiSegment = 0 BEGIN --It's Single Segmented and Parent not attached as a Segment. IF NOT EXISTS(SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] = @DbVerNo AND [dbo].[DbSegment].[SegName] = @DbName) BEGIN EXEC [dbo].[EAIP_FixSingleSegment_70] @DbVerNo, @DbName, @DisplayName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, @DbLabel, 'Fix Single Segment' END END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetDbParamNumber_70](@ParamName varchar(100)) RETURNS smallint AS BEGIN RETURN ( SELECT [dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] = @ParamName ) END
CREATE PROCEDURE [dbo].[EAUI_DetachInterfaceDbAuthority_85]( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @MainDbVerNo int, @AuthDbVerNo int) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceDbAuthority] WHERE [dbo].[InterfaceDbAuthority].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDbAuthority].[Version]=@Version AND [dbo].[InterfaceDbAuthority].[MainDbVerNo]=@MainDbVerNo AND [dbo].[InterfaceDbAuthority].[AuthDbVerNo]=@AuthDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDbAuthorityOrder].[Version]=@Version AND [dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo]=@MainDbVerNo AND [dbo].[InterfaceDbAuthorityOrder].[AuthDbVerNo]=@AuthDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @MainDbName varchar(10), @Dblabel varchar(10), @AuthDbName varchar(10) SELECT @MainDbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MainDbVerNo SELECT @AuthDbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@AuthDbVerNo DECLARE @Interface varchar (25) SET @Interface = @InterfaceID+'/'+@Version EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@MainDbName, @DbLabel,'Detach Interface Authority', 'Interface',@Interface,'AuthDbName',@AuthDbName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[BLL_GetProfParamValues](@Profile int) AS BEGIN EXEC [dbo].[EAIP_GetProfileParamByCategory_70] 'basicProfile', @Profile END
--sql content merged from file: \StoredProcedures\EAIP_GetClustersList_80.sql CREATE PROCEDURE [dbo].[EAIP_GetClustersList_80] AS /** procedure is used by EACopy **/ BEGIN SELECT gc.ID, cl.DbLabel, gc.XPath, gc.XPathEnh, gc.Tag, gc.MinDisplay, gc.MaxDisplay, gc.Show, dbo.EAIF_ClustersLangAndCaptions_80(gc.ID) as Captions, cl.SeqNo, cl.AutoAdd2Db, gc.Notes, gc.MaxPercentageResults, gc.CaseConversion, gc.AutoAdd2Interfaces FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID=cp.ID AND cp.LangCode='en' Left Outer JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId END
CREATE PROCEDURE [dbo].[EAUI_GetSharedColNo_70](@ColNo int) AS BEGIN DECLARE @SharedColNo int = 0; SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM dbo.Collection Where [dbo].[Collection].[ColNo]=@ColNo ANd [dbo].[Collection].[IsDeleted] = 0 SELECT @SharedColNo END
CREATE PROCEDURE [dbo].[EAUI_AttachDatabaseGroup_80] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @GroupList varchar(8000))AS BEGIN BEGIN TRANSACTION INSERT INTO [dbo].[DbGroup] ([dbo].[DbGroup].[DbVerNo], [dbo].[DbGroup].[GroupNo]) SELECT @DbVerNo, CONVERT(int,a.Item) FROM dbo.EAIF_GetItemTable_70(@GroupList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@GroupList,1,1024),'+',',') IF DATALENGTH(@GroupList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@GroupList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Attach Group', @DbName,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetCountries] (@ProductContext VARCHAR(10)) AS BEGIN --Check if the product context is passed IF (@ProductContext IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@ProductContext, '')))) <= 0) BEGIN RAISERROR (N'Product Context is required', 16, 1) RETURN END IF @ProductContext='ebma' SET @ProductContext='ebookMob' ELSE IF @ProductContext='flipma' SET @ProductContext='flipster' SELECT DISTINCT ct.CountryID AS CountryCode, ct.CountryName FROM dbo.Country ct JOIN dbo.CustAddress ca ON ct.CountryID=ca.CountryID JOIN dbo.Customer c ON c.CustID=ca.CustID JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE d.Product=@ProductContext AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND c.CustType <> 'I' ORDER BY ct.CountryName END
CREATE PROCEDURE [dbo].[EAIP_AddPrimaryDbToUserProfiles_103] (@InterfaceID varchar(10), @Version varchar(10), @DbName varchar(10), @DbLabel varchar (10) ) AS BEGIN Begin Try Begin Transaction -- Enforce the Business rule : Primary databases on all existing user profiles (for the interface) with this database on the profile --should be enabled and selected by default. -- Paying customers : All their existing profiles get updated (auto-add). --Internal customers : Only those profiles with this database already attached to it get updated (no - autoadd). Update [dbo].[ProfDatabase] set [Enable]=1, [SelDefault]=1 from [dbo].[ProfDatabase] pdb join [dbo].[Profile] p on (pdb.ProfNo=p.ProfNo) join [dbo].[DbList] dbvt on (pdb.DbVerNo=dbvt.DbVerNo) Where p.InterfaceID=@InterfaceID and p.Version=@Version and dbvt.DbName =@DbName AND dbvt.DbLabel = @DbLabel -- Where Enable=0 or SelDefault=0 Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch END
CREATE PROCEDURE [dbo].[EAUI_GetLiveRegularDatabaseList_70] AS BEGIN /*This procedure is intended for use by the application which will import long description data from the explain databases into the DbParamXmlValues table*/ SELECT [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DbName], [dbo].[DbList].[DisplayName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel]='live' AND [dbo].[DbList].[DbType]=1 END
CREATE PROCEDURE [dbo].[EATL_UpdateGlobalDisciplineCaptions_131] (@UserID nvarchar(20), @UserIP varchar(15), @LangCode varchar(10), @DisciplineCode VARCHAR(10), @caption nvarchar(255)) AS BEGIN DECLARE @LogFlag varchar(100) DECLARE @DisciplineNo INT SELECT @DisciplineNo = [dbo].[DisciplineList].[DisciplineNo] FROM [dbo].[DisciplineList] WHERE [dbo].[DisciplineList].[DisciplineCode] = @DisciplineCode IF (@DisciplineNo IS NULL) BEGIN SET @LogFlag ='Translate Global Discipline captions ERROR' EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, '', '', @LogFlag, 'DisciplineCode:', @DisciplineCode, 'Lang:', @LangCode,'Error:', 'DisciplineCode does not exist' RETURN END BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM dbo.DisciplineCaption WHERE [dbo].[DisciplineCaption].[DisciplineNo]= @DisciplineNo AND [dbo].[DisciplineCaption].[LangCode]=@LangCode ) BEGIN UPDATE [dbo].[DisciplineCaption] SET [dbo].[DisciplineCaption].[Caption]=@caption WHERE [dbo].[DisciplineCaption].[DisciplineNo]= @DisciplineNo AND [dbo].[DisciplineCaption].[LangCode]=@LangCode SET @LogFlag ='Translate(Update) Global Discipline captions' END ELSE BEGIN INSERT INTO [dbo].[DisciplineCaption] ([dbo].[DisciplineCaption].[LangCode],[dbo].[DisciplineCaption].[DisciplineNo],[dbo].[DisciplineCaption].[Caption] ) VALUES (@LangCode,@DisciplineNo,@caption) SET @LogFlag ='Translate (Insert) Global Discipline captions' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, '', '', @LogFlag, 'DisciplineCode:', @DisciplineCode, 'Lang:', @LangCode,'CaptionText:', @caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDbSegmentInfos_70](@DbVerNo int, @Volume varchar(20)) AS BEGIN SELECT a.SegName, b.EpsFile, b.EpdFile, b.EpiFile, b.EpfFile,b.JumpFile, b.LookupDir,b.EplFile, b.EpgFile,b.EpuFile, b.ImageServerURL FROM [dbo].[DbSegment] a INNER JOIN [dbo].[DbSegFileInfo] b ON a.DbVerNo= b.DbVerNo AND a.SegName = b.SegName WHERE a.DbVerNo = @DbVerNo AND b.Volume = @Volume ORDER BY a.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetGroupEditParamList_70](@CustID varchar(10), @GroupID varchar(10), @EditGroup varchar(100), @EditLevel int) AS BEGIN DECLARE @GroupNo int DECLARE @STMode char(1) DECLARE @MarketID varchar(20) SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID,@GroupID) SELECT @MarketID=[dbo].[Customer].[MarketID],@STMode=dbo.EAIF_CustTypeToSTMode_70([dbo].[Customer].[CustType]) FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID SELECT b.ParamNo ,a.ParamName ,b.PromptText ,b.HelpText ,b.EditControl ,b.ValueTemplate ,ISNULL(ISNULL(d.ParamValue,c.DefValue),a.DefValue) AS Value ,a.ParamType ,ISNULL(b.ProcInfo,'') AS ProcInfo FROM [dbo].[CustomParamList] a LEFT OUTER JOIN [dbo].[CustomParamDefaults] c ON a.ParamNo = c.ParamNo AND c.InterfaceID = 'all' AND c.Version = 'all' AND c.MarketID = @MarketID AND c.STMode = @STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = @GroupNo AND d.ParamLevel = 'G' AND d.ParamNo = a.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] b ON a.ParamNo = b.ParamNo WHERE b.EditGroup = @EditGroup AND b.EditLevel >= @EditLevel AND b.EditControl <> '' ORDER BY b.SeqNo END
CREATE PROCEDURE dbo.EAIP_UpdateLimiter_91 ( @LimiterNo int, @LimiterId varchar(20), @DbLabel varchar(10), @LimiterType char(1), @ControlType smallint, @ControlSize smallint, @LogicalOpCode varchar(3), @Description nvarchar(100), @Notes nvarchar(255), @Hidden bit, @SearchString varchar(4000), @AllowCustom bit=0, @enableQueryMask BIT, @queryMaskId varchar(20), @UserId nvarchar(20) = null, @UserIp varchar(15) = null ) AS BEGIN IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Limiter', 'Update Limiter', @LimiterId, @DbLabel END UPDATE [dbo].[LimiterList] SET [dbo].[LimiterList].[LimiterType] = @LimiterType, [dbo].[LimiterList].[ControlType] = @ControlType, [dbo].[LimiterList].[ControlSize] = @ControlSize, [dbo].[LimiterList].[LogicalOpCode] = @LogicalOpCode, [dbo].[LimiterList].[Description] = @Description, [dbo].[LimiterList].[Notes] = @Notes, [dbo].[LimiterList].[BitFlag1] = @Hidden, [dbo].[LimiterList].[SearchString]=@SearchString, [dbo].[LimiterList].[AllowCustom]=@AllowCustom, [dbo].[LimiterList].[EnableQueryMask] = @enableQueryMask, [dbo].[LimiterList].[QueryMaskId] = @queryMaskId WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateReorderProfile_205] ( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @GroupID varchar(10), @ProfNoList nvarchar(4000), @ProfOrderList nvarchar(4000), @HideProfileOnSSPList nvarchar(4000), @UiStatusList nvarchar(4000) = NULL) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles','Update ReorderProfiles', @CustID,@GroupID -- Update SeqNo UPDATE [dbo].[Profile] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[Profile] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@ProfNoList, @ProfOrderList,'+') b ON a.ProfNo=convert(int,b.Item) WHERE a.CustID = @CustID AND a.GroupID = @GroupID -- Update HideProfileOnSSP parameters DECLARE @HideProfileOnSSPParamNo int = dbo.EAIF_GetCustomParamNumber_70('HideProfileOnSSP', 'P') DECLARE @UiStatusParamNo int = dbo.EAIF_GetCustomParamNumber_70('uiStatus', 'P') CREATE TABLE #ProfilesToUpdate( ProfNo int , HideProfileOnSSP nvarchar(10) , UiStatus char , IsProcessed BIT NOT NULL DEFAULT 0) INSERT INTO #ProfilesToUpdate (ProfNo, HideProfileOnSSP, UiStatus) SELECT hp.Item, hp.Value, uis.Value FROM dbo.EAIF_GetItemValueTable_70(@ProfNoList, @HideProfileOnSSPList,'+') hp LEFT JOIN dbo.EAIF_GetItemValueTable_70(@ProfNoList, @UiStatusList,'+') uis ON hp.Item = uis.Item; DECLARE @ProfNo int; DECLARE @HideProfileOnSSP nvarchar; DECLARE @UiStatus char; WHILE (1=1) BEGIN SET @ProfNo = NULL SELECT TOP 1 @ProfNo = ProfNo, @HideProfileOnSSP = HideProfileOnSSP, @UiStatus = UiStatus FROM #ProfilesToUpdate WHERE IsProcessed = 0 ORDER BY ProfNo; IF (@ProfNo IS NULL) BREAK EXEC EAIP_UpdateCustomParamScalarValue_70 @ProfNo, 'P', @HideProfileOnSSPParamNo, @HideProfileOnSSP; IF(@UiStatus IS NOT NULL AND @UiStatus <> '') EXEC EAIP_UpdateCustomParamScalarValue_70 @ProfNo, 'P', @UiStatusParamNo, @UiStatus; UPDATE #ProfilesToUpdate SET IsProcessed = 1 WHERE ProfNo = @ProfNo END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseListBrowseByDbName_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseListBrowseByDbName_70](@DbLabel varchar(10), @DbName varchar(200),@SourceTypeList varchar(10)) AS BEGIN IF @DbLabel = 'custom' SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType join dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item join EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType left outer join [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel not in ('live', 'liveQC', 'rebuild', 'rebuildQC') AND l.DbName Like @DbName + '%' --AND l.SourceType = @SourceType ORDER BY l.DbName ELSE SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType join dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item join EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType left outer join [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel = @DbLabel AND l.DbName Like @DbName + '%' --AND l.SourceType = @SourceType ORDER BY l.DbName END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomParamTblGlobalValues_161] (@UserID nvarchar(20), @UserIP varchar(15), @ParamName varchar(100), @LangCode VARCHAR(10), @ParamValue nvarchar(max) ) AS BEGIN DECLARE @ParamNo INT DECLARE @TableParamValue XML SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]=@ParamName SET @TableParamValue=convert(xml,@ParamValue) EXEC [dbo].[EAUI_UpdateCustomParamTblGlobalValues_90] @UserID, @UserIP, @ParamNo, @LangCode, @TableParamValue END
CREATE PROCEDURE [dbo].[EAIP_GetProfileListByInterfaceVersion_182](@InterfaceID varchar(10), @Version VARCHAR(10)) AS SELECT p.SeqNo, p.ProfNo, p.ProfID, p.ProfName, il.InterfaceName, il.InterfaceID, ml.Description AS MarketDescr, iull.LangDisplayName AS LangDescr FROM [dbo].[Profile] p LEFT JOIN EASUPPORT.dbo.MarketList ml ON p.MarketID = ml.MarketID JOIN [dbo].[InterfaceLanguage] il ON p.InterfaceID=il.InterfaceID AND p.Version=il.Version JOIN [dbo].[InterfaceUserLangList] iull ON p.InterfaceID=iull.InterfaceID AND p.Version=iull.Version WHERE p.InterfaceID=@InterfaceID AND p.Version=@Version AND il.LangCode = 'en' ORDER BY p.ProfID
/* Assumption: An external database must have a ConnectorProvider of 'I' or 'M', Do not want to update DbListExternalSource if SourceType is 'C'. */ CREATE PROCEDURE [dbo].[EAUI_updatedatabase_104] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @DbVerNo INT, @DbName VARCHAR(10), @DbLabel VARCHAR(10), @DisplayName NVARCHAR(100), @DSFamilyName VARCHAR(100), @bitSubsetDb bit = NULL, @physicalDb varchar(10), @bitMergeSearch bit, @dbDefSearchExprType char(1), @dbDefSearchExpression nvarchar(255), @DbGroup VARCHAR(20)=NULL, @Interface VARCHAR(10), @DbCategory CHAR(1), @ContentType SMALLINT=1, @MultiSegment SMALLINT=0, @EnforceSimUsage BIT=0, @ShowStats BIT=1, @ShowOnDDSConsole BIT=1, @WebClient BIT=1, @Z3950Client BIT=1, @EPXBuild BIT=0, @EDABuild BIT=0, @IncludeWhenAutoAdd BIT=1, @VendorName NVARCHAR(100) = NULL, @ConnectorType NVARCHAR(20) = NULL, @Free BIT = 0, @connectorProvider CHAR(1) = NULL, @notes NVARCHAR( 1000) =NULL ) AS BEGIN IF @Interface = '' SELECT @Interface = NULL ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID] = @Interface) BEGIN RAISERROR('The Interface ID (%s) does not exist',16,-1, @Interface) RETURN END BEGIN TRANSACTION --------------- SubSet DB begin -------------------- if(@bitSubsetDb is not null) begin declare @PhysDbVerNo int=0 select @PhysDbVerNo = [dbo].[DbSubset].[PhysDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@DbVerNo -- delete existing Parent DB if there's any (simpler logic to handle case: change physical DB on Subset DB) if @PhysDbVerNo>0 delete [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@DbVerNo -- update subset db's DSFamilyName update [dbo].[DbList] set [DSFamilyName]=@DSFamilyName from [dbo].[DbList] d inner join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo where s.PhysDbVerNo=@DbVerNo if @bitSubsetDb=1 begin if (LTRIM(RTRIM(@DSFamilyName)))='' begin RAISERROR('Database need a DS Family in order to have Subset Database.', 16, -1) RETURN end select 1 from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo and [dbo].[DbList].[DbType]=1 and [dbo].[DbList].[SourceType]='D' -- subset should be a regular db with SourceType='D' if @@ROWCOUNT=0 begin RAISERROR('Only a regular Database can become a Subset Database.', 16, -1) RETURN end declare @physicalDbVerNo int select @physicalDbVerNo = [dbo].[DbList].[DbVerNo] -- returns <=1 row from [dbo].[DbList] where [dbo].[DbList].[DbName]=@physicalDb and [dbo].[DbList].[DbLabel]=@DbLabel and [dbo].[DbList].[DSFamilyName]=@DSFamilyName and [dbo].[DbList].[DbType]=1 and [dbo].[DbList].[SourceType]='D' -- parent should be a regular db if @@ROWCOUNT=0 begin RAISERROR('Subset Database - Physical DB value must be Short Name of a regular database from same DS Family in same database label.', 16, -1) RETURN end select 1 from [dbo].[DbSubset] s where s.SubsetDbVerNo=@physicalDbVerNo if @@ROWCOUNT>0 begin RAISERROR('Subset Database - Physical DB cannot be a subset database.', 16, -1) RETURN end -- Insert values into table[DbSubset] Insert into [dbo].[DbSubset]([dbo].[DbSubset].[SubsetDbVerNo], [dbo].[DbSubset].[PhysDbVerNo], [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression]) values (@DbVerNo, @physicalDbVerNo, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression) end -- of if @bitSubsetDb=1 if (@bitSubsetDb=1 and @PhysDbVerNo=0) -- physical db changed to subset db, remove its own data that will be inherited from physical db now. or (@bitSubsetDb=0 and @PhysDbVerNo>0)-- subset db changed to regular, so clean up existing data before copying data from physical db begin -- Clean up properties owned before changing to subset DB delete [dbo].[DbParamScalarValues] from [dbo].[DbParamScalarValues] s inner join [dbo].[DbParamList] l on l.ParamNo= s.ParamNo where s.DbVerNo=@DbVerNO and l.InheritFromPhysical=1 delete [dbo].[DbCluster] where [dbo].[DbCluster].[DbVerNo]=@DbVerNO delete [dbo].[DbSort] where [dbo].[DbSort].[DbVerNo]=@DbVerNO delete [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo]=@DbVerNO end if @bitSubsetDb=0 and @PhysDbVerNo>0 -- copy previous Physical DB configs over begin insert into [dbo].[DbParamScalarValues]([s].[DbVerNo], [s].[ParamNo], [s].[ParamValue]) select @DbVerNO, l.ParamNo, s.ParamValue from [dbo].[DbParamScalarValues] s inner join [dbo].[DbParamList] l on l.ParamNo= s.ParamNo where s.DbVerNo = @PhysDbVerNo and l.InheritFromPhysical=1 insert into [dbo].[DbCluster]([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag]) select @DbVerNo, [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag] from [dbo].[DbCluster] where [dbo].[DbCluster].[DbVerNo] = @PhysDbVerNo insert into [dbo].[DbSort]([dbo].[DbSort].[DbVerNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo]) select @DbVerNo, [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo] from [dbo].[DbSort] where [dbo].[DbSort].[DbVerNo] = @PhysDbVerNo insert into [dbo].[DbServerParams]([dbo].[DbServerParams].[DbVerNo], [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances],[dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords]) select @DbVerNo, [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances],[dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] from [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo] = @PhysDbVerNo end -- of else if @bitSubsetDb=0 and @PhysDbVerNo>0 else if @bitSubsetDb=0 and @PhysDbVerNo=0 and exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@DbVerNo) -- If DB has SubsetDBs, then make sure subsets have the same dsfamilyname, dbcategory, contenttype. begin UPDATE [dbo].[DbList] SET [DSFamilyName] = @DSFamilyName, [DbCategory] = @DbCategory, [ContentType] = @ContentType from [dbo].[DbList] d inner join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE s.PhysDbVerNo=@DbVerNo end end --------------- SubSet DB end -------------------- DECLARE @IncludeWhenAutoAdd_old BIT SELECT @IncludeWhenAutoAdd_old = [dbo].[DbList].[IncludeWhenAutoAdd] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @DisplayName, [dbo].[DbList].[DSFamilyName] = @DSFamilyName, [dbo].[DbList].[DbGroup] = @DbGroup, [dbo].[DbList].[InterfaceID] = @Interface, [dbo].[DbList].[DbCategory] = @DbCategory, [dbo].[DbList].[ContentType] = @ContentType, [dbo].[DbList].[MultiSegment] = @MultiSegment, [dbo].[DbList].[EnforceSimUsage] = @EnforceSimUsage, [dbo].[DbList].[ShowStats] = @ShowStats, [dbo].[DbList].[ShowOnDDSConsole] = @ShowOnDDSConsole, [dbo].[DbList].[WebClient] = @WebClient, [dbo].[DbList].[Z3950Client] = @Z3950Client, [dbo].[DbList].[EPXBuild] = @EPXBuild, [dbo].[DbList].[EDABuild] = @EDABuild, [dbo].[DbList].[IncludeWhenAutoAdd] = @IncludeWhenAutoAdd WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF @IncludeWhenAutoAdd_old = 0 AND @IncludeWhenAutoAdd = 1 DELETE [dbo].[InterfaceDbAuthority] FROM [dbo].[InterfaceDbAuthority] ia INNER JOIN [dbo].[InterfaceVersion] i ON ia.InterfaceID = i.InterfaceID AND ia.Version = i.Version WHERE ia.AuthDbVerNo = @DbVerNo AND i.AutoAddAuthority = 1 IF @IncludeWhenAutoAdd_old = 1 AND @IncludeWhenAutoAdd = 0 DELETE [dbo].[InterfaceDbAuthorityOrder] FROM [dbo].[InterfaceDbAuthorityOrder] ia INNER JOIN [dbo].[InterfaceVersion] i ON ia.InterfaceID = i.InterfaceID AND ia.Version = i.Version WHERE ia.AuthDbVerNo = @DbVerNo AND i.AutoAddAuthority = 1 -- EXTERNAL SOURCE UPDATE BEGIN if @connectorProvider is not null begin DECLARE @SourceType CHAR(1) DECLARE @originalConnectorProvider CHAR(1) SELECT @SourceType = [dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SELECT @originalConnectorProvider = Isnull([dbo].[DbListExternalSource].[ConnectorProvider], 'Q') FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF @SourceType IN ( 'M' ) BEGIN -- 10.2 Is the connectorProvider consistent with the source type? IF NOT (@connectorProvider IN ('M', 'I')) BEGIN ROLLBACK TRANSACTION RAISERROR( '%s is not a valid connector provider,update failed.',16,-1, @connectorProvider) END -- EXTERNAL SOURCE ADD BRANCH -- if true, we will be installing a new child record if (@originalConnectorProvider <> @connectorProvider) BEGIN DELETE FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbListExternalSourceMuse] WHERE [dbo].[DbListExternalSourceMuse].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END -- if this WAS not an external database or there was some problem IF NOT ( @originalConnectorProvider IN ('I','M') ) BEGIN -- Clear any existing parent record. DELETE FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END -- add the parent record INSERT INTO [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[Notes], [dbo].[DbListExternalSource].[VendorName]) VALUES (@connectorProvider, @ConnectorType, @DbVerNo, @Free, @notes, @VendorName) IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END IF ( @originalConnectorProvider <> @connectorProvider ) BEGIN -- get the connector provider updated UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[ConnectorProvider] = @connectorProvider, [dbo].[DbListExternalSource].[Notes] = @notes, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[Free] = @Free, [dbo].[DbListExternalSource].[VendorName]=@VendorName WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo END ELSE BEGIN -- EXTERNAL SOURCE UPDATE BRANCH UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[VendorName] = @VendorName, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[Free] = @Free, [dbo].[DbListExternalSource].[Notes] = @notes WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END END end -- EXTERNAL SOURCE UPDATE END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Update Database Attributes' IF @MultiSegment=0 BEGIN --It's Single Segmented and Parent not attached as a Segment. IF NOT EXISTS(SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@DbName) BEGIN EXEC [dbo].[EAIP_FixSingleSegment_70] @DbVerNo, @DbName, @DisplayName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, @DbLabel, 'Fix Single Segment' END END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetDbParamScalarValue_70](@DbVerNo int, @ParamName varchar(100)) RETURNS nvarchar(2000) AS BEGIN DECLARE @RetValue nvarchar(2000) DECLARE @ParamNo smallint; DECLARE @InheritFromPhysical BIT; SET @RetValue=N'' SELECT @ParamNo = [dbo].[DbParamList].[ParamNo], @InheritFromPhysical = [dbo].[DbParamList].[InheritFromPhysical] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] = @ParamName; IF (@InheritFromPhysical = 1) BEGIN -- check if it's Subset DB. If so, take values from Phsical DB select @DbVerNo = ISNULL(s.PhysDbVerNo, d.DbVerNo) from [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo where d.DbVerNo=@DbVerNo -- END SELECT @RetValue=ISNULL(dscl.ParamValue, dfl.DefValue) FROM [dbo].[DbParamDefaults] dfl LEFT OUTER JOIN [dbo].[DbParamScalarValues] dscl ON dscl.ParamNo = dfl.ParamNo AND dscl.DbVerNo=@DbVerNo WHERE dfl.ParamNo =@ParamNo RETURN @RetValue END
Create Procedure [dbo].[EAUI_DetachInterfaceDbFeature_103] (@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @FeatureNo smallint) as Begin Begin try Begin transaction Delete [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo Delete [dbo].[InterfaceDbFeatures] where [dbo].[InterfaceDbFeatures].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatures].[Version]=@Version and [dbo].[InterfaceDbFeatures].[FeatureNo]=@FeatureNo DECLARE @Category varchar(20) DECLARE @Name varchar(50) SELECT @Category=[dbo].[FeatureList].[Category], @Name=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Detach Interace DbFeature', @Category, @Name, @InterfaceID, @Version Commit transaction End try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch End
CREATE PROCEDURE [dbo].[BLL_GetUGParamValue]( @CustID varchar(10), @GroupID varchar(10), @ProfId varchar(10)=null ) AS BEGIN DECLARE @CustomerNo int, @STMode char(1), @MarketID varchar(20) DECLARE @GroupNo int SELECT @CustomerNo=[a].[CustNo], @MarketID=[a].[MarketID], @STMode=CASE [a].[CustType] WHEN 'T' THEN 'T' ELSE 'S' END, @GroupNo=[b].[GroupNo] FROM [dbo].[Customer] a INNER JOIN [dbo].[UserGroup] b ON a.CustID=b.CustID Where a.CustID=@CustID AND b.GroupID=@GroupID DECLARE @cookiesAllowed char(1),@personalization char(1) SET @cookiesAllowed=dbo.EAIF_GetCustomParamScalarValue_70('cookiesAllowed','all','all',@MarketID,@STMode,@GroupNo,'G') SET @personalization=dbo.EAIF_GetCustomParamScalarValue_70('personalization','all','all',@MarketID,@STMode,@GroupNo,'G') /* Fetch the XML values as Normal */ DECLARE @ItemName varchar(255) DECLARE @profBrandingNo int, @customerBrandingNo int SET @profBrandingNo=dbo.EAIF_GetCustomParamNumber_70('profBranding','P') DECLARE @type char(1), @Screens varchar(10) SET @type='' SET @Screens='0' IF @ProfId IS NULL BEGIN SELECT TOP 1 @ItemName=[b].[ParamValue] FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamScalarValues] b ON a.ProfNo=b.TargetNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.ParamNo=@profBrandingNo AND [b].[ParamLevel]='P' AND b.ParamValue <> '' ORDER BY a.SeqNo END ELSE BEGIN SELECT @ItemName=[b].[ParamValue] FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamScalarValues] b ON a.ProfNo=b.TargetNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.ProfID=@ProfID AND b.ParamNo=@profBrandingNo AND [b].[ParamLevel]='P' AND b.ParamValue <> '' END IF @ItemName IS NOT NULL BEGIN SET @customerBrandingNo=dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int SELECT @xmlText=[dbo].[CustomParamXmlValues].[ParamValue], @xmlTextLen=DATALENGTH([dbo].[CustomParamXmlValues].[ParamValue]) FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@customerBrandingNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName IF @xmlTextLen < 8001 BEGIN --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText END ELSE BEGIN DECLARE @xml_0 varchar( 7500 ), @xml_1 varchar( 7500 ), @xml_2 varchar( 7500 ), @xml_3 varchar( 7500 ), @xml_4 varchar( 7500 ), @xml_5 varchar( 7500 ), @xml_6 varchar( 7500 ), @xml_7 varchar( 7500 ), @xml_8 varchar( 7500 ), @xml_9 varchar( 7500 ) -- Strip the text value into several varchar strings: SELECT @xml_0 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 0*7500 ) + 1, 7500 ), @xml_1 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 1*7500 ) + 1, 7500 ), @xml_2 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 2*7500 ) + 1, 7500 ), @xml_3 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 3*7500 ) + 1, 7500 ), @xml_4 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 4*7500 ) + 1, 7500 ), @xml_5 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 5*7500 ) + 1, 7500 ), @xml_6 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 6*7500 ) + 1, 7500 ), @xml_7 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 7*7500 ) + 1, 7500 ), @xml_8 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 8*7500 ) + 1, 7500 ), @xml_9 = SUBSTRING( [dbo].[CustomParamXmlValues].[ParamValue], ( 9*7500 ) + 1, 7500 ) FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@customerBrandingNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName EXEC [dbo].[EAIPO_XmlPrepareDocument_70] @xmlDocHandle OUTPUT, @xml_0,@xml_1, @xml_2, @xml_3, @xml_4, @xml_5, @xml_6, @xml_7, @xml_8, @xml_9 END DECLARE @SelectTable TABLE (ParamName varchar(100), ParamValue varchar(max), DataType char(1)) -- Execute a SELECT statement that uses the OPENXML rowset provider. SELECT @type=type, @Screens=Screens FROM OPENXML (@xmlDocHandle, '/branding',2) WITH (type char(1) '@type', Screens varchar(10) '@Screens') INSERT INTO @SelectTable SELECT 'BrandText' as ParamName, brandText as ParamValue, 'S' as DataType FROM OPENXML (@xmlDocHandle, '/branding',2) WITH (brandText varchar(max) 'text[@lang="en"]') EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END ELSE BEGIN INSERT INTO @SelectTable SELECT 'BrandText' as ParamName, '' as ParamValue, 'S' as DataType END INSERT INTO @SelectTable SELECT 'CookiesAllowed', @cookiesAllowed,'B' -- Overwrite Boolean datatype as number, since old admin had it as number. INSERT INTO @SelectTable SELECT 'Personalization' as ParamName, @personalization as ParamValue, 'N' as DataType INSERT INTO @SelectTable SELECT 'BrandTextType' as ParamName, @type as ParamValue, 'S' as DataType INSERT INTO @SelectTable SELECT 'BrandScreens' as ParamName, @Screens as ParamValue, 'N' as DataType SELECT * FROM @SelectTable ORDER BY DataType END
Create Procedure [dbo].[EAIP_GetConsortiaMemberIDs_100](@CustID varchar(10)) as Begin Declare @ChildIDs varchar(max) set @ChildIDs='' select @ChildIDs=@ChildIDs+c.CustID+',' from [dbo].[Customer] c join [dbo].[CustomerGroup] cg on c.CustID=cg.ChildID where cg.ParentID=@CustID select @ChildIDs End
CREATE PROCEDURE [dbo].[EAUI_GetSingleDisciplineDatabaseList_131] ( @DisciplineNo INT ) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN -- since we don't have a foreign key to the DbVerNo, we need to figure out -- what the "highest" label is for a given DbName and use that DbLabel -- so that we don't get duplicates ;WITH DistinctDbNameByHighestDbLabel ( DbName, DbLabel ) AS ( SELECT dl.DbName , MIN(CASE WHEN [dl].[DbLabel] = 'live' THEN '1' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'liveQC' THEN '2' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuild' THEN '3' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuildQC' THEN '4' + [dl].[DbLabel] ELSE '5' + [dl].[DbLabel] END) AS DbLabel FROM [dbo].[DbList] dl WHERE [dl].[SourceType] IN ( 'D', 'C' ) GROUP BY dl.DbName ) SELECT dl.DbName , [dl].[DisplayName] + ' (' + dl.DbName + ')' AS DisplayName , CASE ISNULL(dd.DbName, '') WHEN '' THEN 0 ELSE 1 END AS Selected FROM [dbo].[DbList] dl JOIN DistinctDbNameByHighestDbLabel ddbn ON dl.DbName = ddbn.DbName AND dl.DbLabel = SUBSTRING(ddbn.DbLabel,2,LEN(ddbn.DbLabel) - 1) LEFT OUTER JOIN [dbo].[DbDiscipline] dd ON dd.DbName = dl.DbName AND [dd].[DisciplineNo] = @DisciplineNo WHERE [dl].[SourceType] IN ( 'D', 'C' ) AND [dl].[DbType] = 1 ORDER BY DisplayName END END
CREATE PROCEDURE [dbo].[EAUI_AttachDatabaseInterfaceAuthorities_85]( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @MainDbVerNo int, @AuthDbList varchar(8000)) AS BEGIN BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceDbAuthority] ([dbo].[InterfaceDbAuthority].[InterfaceID],[dbo].[InterfaceDbAuthority].[Version],[dbo].[InterfaceDbAuthority].[MainDbVerNo],[dbo].[InterfaceDbAuthority].[AuthDbVerNo]) SELECT @InterfaceID,@Version,@MainDbVerNo, CONVERT(int,a.Item) FROM dbo.EAIF_GetItemTable_70(@AuthDbList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDbAuthorityOrder].[Version]=@Version AND [dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo]=@MainDbVerNo) INSERT INTO [dbo].[InterfaceDbAuthorityOrder] ([dbo].[InterfaceDbAuthorityOrder].[InterfaceID],[dbo].[InterfaceDbAuthorityOrder].[Version],[dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo],[dbo].[InterfaceDbAuthorityOrder].[AuthDbVerNo], [dbo].[InterfaceDbAuthorityOrder].[SeqNo]) SELECT @InterfaceID, @Version, @MainDbVerNo, CONVERT(int, a.Item), dba.SeqNo FROM [dbo].[DbAuthority] dba INNER JOIN dbo.EAIF_GetItemTable_70(@AuthDbList, '+') a ON dba.AuthDbVerNo = CONVERT(int, a.Item) WHERE dba.MainDbVerNo = @MainDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MainDbVerNo DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@AuthDbList,1,1024),'+',',') DECLARE @Interface varchar (25) SET @Interface = @InterfaceID+'/'+@Version IF DATALENGTH(@AuthDbList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@AuthDbList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Attach Interface Authority', 'Interface',@Interface,'AuthList1',@Plist1,'AuthList2', @Plist2 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetCustomerByCustId] (@ProductContext VARCHAR(10), @CustID VARCHAR(10)) AS BEGIN --Check if the customer id is passed IF (@CustID IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@CustID, '')))) <= 0) BEGIN RAISERROR (N'Customer ID is required', 16, 1) RETURN END --Check if the product context is passed IF (@ProductContext IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@ProductContext, '')))) <= 0) BEGIN RAISERROR (N'Product Context is required', 16, 1) RETURN END IF @ProductContext='ebma' SET @ProductContext='ebookMob' ELSE IF @ProductContext='flipma' SET @ProductContext='flipster' SELECT c.CustID, c.CustName FROM [dbo].[Customer] c WITH (NOLOCK) JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE c.CustID=@CustID AND d.Product=@ProductContext AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND c.CustType <> 'I' ORDER BY c.CustName; END
--sql content merged from file: \StoredProcedures\EAIP_AddProfile_70.sql CREATE PROCEDURE [dbo].[EAIP_AddProfile_70](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @ProfPwd nvarchar(10), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @STMode char(1), @DbLabel varchar(10), @ProfName nvarchar(100), @DefLangCode varchar(10)) AS BEGIN DECLARE @SeqNo int IF EXISTS(SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID) RETURN BEGIN TRANSACTION SET @ProfPwd='ebs'+ CONVERT (varchar(10),ROUND(RAND()*10000,0)) IF @DefLangCode IS NULL OR @DefLangCode='' SET @DefLangCode='en' SET @ProfID=lower(@ProfID) /** Get Next SeqNo Number for this new Profile **/ SELECT @SeqNo=MAX([dbo].[Profile].[SeqNo])+1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID IF @SeqNo IS NULL SET @SeqNo=1 INSERT INTO dbo.Profile([dbo].[Profile].[CustID], [dbo].[Profile].[GroupID], [dbo].[Profile].[ProfID], [dbo].[Profile].[ProfPwd], [dbo].[Profile].[InterfaceID], [dbo].[Profile].[Version], [dbo].[Profile].[MarketID], [dbo].[Profile].[STMode], [dbo].[Profile].[DbLabel], [dbo].[Profile].[ProfName], [dbo].[Profile].[DefLangCode], [dbo].[Profile].[SeqNo]) VALUES(@CustID, @GroupID, @ProfID, @ProfPwd, @InterfaceID, @Version, @MarketID, @STMode, @DbLabel, @ProfName, @DefLangCode, @SeqNo) IF @@ERROR <> 0 BEGIN RAISERROR('Inserting Into Profile Failed For:"%s.%s.%s".',16,-1, @CustID, @GroupID, @ProfID) ROLLBACK TRANSACTION RETURN END -- Add CustomParamScalarValue entry for all profile parameters which have NewProfileDefaultValue EXEC [dbo].[EAIP_AddCustomParamScalarWithNewProfDefValue_92] @CustID, @GroupID, @ProfID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLiveSimUsageDatabaseList_70] AS BEGIN SELECT [dbo].[DbList].[DbName], [dbo].[DbList].[DisplayName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[EnforceSimUsage]=1 AND [dbo].[DbList].[DbLabel]='live' ORDER BY [dbo].[DbList].[DisplayName] END
CREATE PROCEDURE EATL_UpdateGlobalDisciplineCaptions_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@LangCode VARCHAR(10) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DisciplineCode VARCHAR(10) ,Caption NVARCHAR(255) ) INSERT INTO #Objects ( DisciplineCode ,Caption ) SELECT m.c.value('(./DisciplineCode)[1]', ' varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DisciplineCode VARCHAR(10) ,@Caption NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DisciplineCode = DisciplineCode ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalDisciplineCaptions_131] @UserID ,@UserIP ,@LangCode ,@DisciplineCode ,@Caption SET @i = @i + 1 END DROP TABLE #Objects END
--sql content merged from file: \StoredProcedures\EPCS_GetDbSegmentInfos_912.sql Create Procedure [dbo].[EPCS_GetDbSegmentInfos_912](@DbName varchar(10), @Dblabel varchar(10)) as Begin Declare @DbVerNo int select @DbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@Dblabel SELECT @DbVerNo DbVerNo, a.SegName, b.EpsFile, b.EpdFile, b.EpiFile, b.EpfFile,b.JumpFile, b.LookupDir,b.EplFile, b.EpgFile,b.EpuFile, b.ImageServerURL, b.Volume FROM [dbo].[DbSegment] a INNER JOIN [dbo].[DbSegFileInfo] b ON a.DbVerNo= b.DbVerNo AND a.SegName = b.SegName WHERE a.DbVerNo = @DbVerNo ORDER BY a.SeqNo, b.Volume end
CREATE PROCEDURE [dbo].[EAUI_GetGroupEditParams_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN DECLARE @GroupNo int DECLARE @STMode char(1) DECLARE @MarketID varchar(20) DECLARE @ParamNoSSText int DECLARE @ParamNoPers int DECLARE @ParamNoLinkSourceProf int DECLARE @ParamNoDefaultProfileForEbscoMobileApp int DECLARE @ParamNoPersonalizationCreation int DECLARE @ParamForcePersonalization int DECLARE @ParamUseSsoPersonalization INT DECLARE @useJITSSOUserProvisioning INT DECLARE @usePersonalizeUsingShib INT DECLARE @enableSocialAuthentication INT SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID, @GroupID) SELECT @MarketID=[dbo].[Customer].[MarketID],@STMode = dbo.EAIF_CustTypeToSTMode_70([dbo].[Customer].[CustType]) FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID SELECT @ParamNoSSText=dbo.EAIF_GetCustomParamNumber_70('groupSSText', 'G') SELECT @ParamNoPers=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @ParamNoLinkSourceProf=dbo.EAIF_GetCustomParamNumber_70('linkSourceProfile', 'G') SELECT @ParamNoDefaultProfileForEbscoMobileApp = dbo.EAIF_GetCustomParamNumber_70('defaultProfileForEbscoMobileApp', 'G') SELECT @ParamNoPersonalizationCreation=dbo.EAIF_GetCustomParamNumber_70('noPersonalizationCreation', 'G') SELECT @ParamForcePersonalization=dbo.EAIF_GetCustomParamNumber_70('forcePersonalization', 'G') SELECT @ParamUseSsoPersonalization=dbo.EAIF_GetCustomParamNumber_70('useSSOForPersonalization', 'G') SELECT @useJITSSOUserProvisioning=dbo.EAIF_GetCustomParamNumber_70('useJITSSOUserProvisioning', 'G') SELECT @usePersonalizeUsingShib=dbo.EAIF_GetCustomParamNumber_70('PersonalizeUsingShib', 'G') SELECT @enableSocialAuthentication=dbo.EAIF_GetCustomParamNumber_70('enableSocialAuthentication', 'G') SELECT [dbo].[CustomParamList].[ParamNo], [dbo].[CustomParamList].[ParamName], dbo.EAIF_GetCustomParamScalarValue_70([dbo].[CustomParamList].[ParamName],'all','all',@MarketID,@STMode,@GroupNo,'G') AS ParamValue FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] IN (@ParamNoSSText, @ParamNoPers, @ParamNoLinkSourceProf, @ParamNoDefaultProfileForEbscoMobileApp, @ParamNoPersonalizationCreation, @ParamForcePersonalization, @ParamUseSsoPersonalization, @useJITSSOUserProvisioning,@usePersonalizeUsingShib, @enableSocialAuthentication) END
CREATE PROCEDURE [dbo].[EAIP_UpdateLimiterSearchString_70] (@UserID varchar(20), @UserIP varchar(15), @DbVerNo int, @LimiterNo int, @SearchString varchar(4000) ) AS BEGIN BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiter].[LimiterNo] = @LimiterNo) BEGIN UPDATE [dbo].[DbLimiter] SET [dbo].[DbLimiter].[SearchString] = @SearchString WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiter].[LimiterNo] = @LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN DECLARE @NextSeq INT SET @NextSeq = (SELECT (ISNULL(MAX([dbo].[DbLimiter].[SeqNo]),0) + 1) FROM [dbo].[DbLimiter] where [dbo].[DbLimiter].[DbVerNo]=@DbVerNo) INSERT INTO [dbo].[DbLimiter] ([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo], [dbo].[DbLimiter].[ResFlag], [dbo].[DbLimiter].[SearchString], [dbo].[DbLimiter].[SeqNo]) VALUES (@DbVerNo, @LimiterNo, 0, @SearchString, @NextSeq) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateSearchTheme_84](@UserID nvarchar(20),@UserIP varchar(15), @ThemeID varchar(20), @LangCode varchar(10), @Caption nvarchar(255), @AltText nvarchar(255), @SearchString varchar(1500), @image varchar(255), @Description nvarchar(1500), @CustomAttributes xml) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[SearchTheme] WITH (ROWLOCK) SET [dbo].[SearchTheme].[Image]=@image, [dbo].[SearchTheme].[SearchString]=@SearchString, [dbo].[SearchTheme].[CustomAttributes]=@CustomAttributes WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[SearchThemeCaption] WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID AND [dbo].[SearchThemeCaption].[LangCode]=@LangCode) UPDATE [dbo].[SearchThemeCaption] WITH (ROWLOCK) SET [dbo].[SearchThemeCaption].[Caption]=@Caption, [dbo].[SearchThemeCaption].[ImageAltText]=@AltText, [dbo].[SearchThemeCaption].[Description]=@Description WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID AND [dbo].[SearchThemeCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[SearchThemeCaption] ([dbo].[SearchThemeCaption].[ThemeID], [dbo].[SearchThemeCaption].[LangCode], [dbo].[SearchThemeCaption].[Caption], [dbo].[SearchThemeCaption].[ImageAltText], [dbo].[SearchThemeCaption].[Description]) VALUES (@ThemeID, @LangCode, @Caption, @AltText, @Description) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'SearchTheme','Update Search Theme', @ThemeID, @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseListBrowseByDbName_Paged_203]( @DbLabel varchar(10) ,@DbName varchar(200) ,@SourceTypeList varchar(10) ,@pageIndex INT = 0 ,@pagSize INT = 10 ) AS BEGIN IF @DbLabel = 'custom' SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a ON l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos ON a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs ON l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND l.DbName LIKE @DbName + '%' ORDER BY l.DbName OFFSET @pageIndex*@pagSize ROWS FETCH NEXT @pagSize ROWS ONLY ELSE SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a ON l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos ON a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs ON l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel = @DbLabel AND l.DbName LIKE @DbName + '%' ORDER BY l.DbName OFFSET @pageIndex*@pagSize ROWS FETCH NEXT @pagSize ROWS ONLY END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomParamTblInterfaceValues_161] (@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @ParamName varchar(100), @LangCode VARCHAR(10), @ParamValue nvarchar(max)) AS BEGIN DECLARE @ParamNo INT DECLARE @TableParamValue XML IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] cpt JOIN [dbo].[CustomParamList] cpl ON cpt.ParamNo=cpl.ParamNo WHERE [cpl].[ParamName]=@ParamName) SET @LangCode = '' ELSE IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] cpt JOIN [dbo].[CustomParamList] cpl ON cpt.ParamNo=cpl.ParamNo WHERE [cpl].[ParamName]=@ParamName AND [cpt].[LangCode] = @LangCode ) SET @LangCode = 'en' IF (@MarketID IS NULL OR @MarketID='') SET @MarketID='academic' SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]=@ParamName SET @TableParamValue=convert(xml,@ParamValue) EXEC [dbo].[EAUI_UpdateCustomParamTblInterfaceValues_90] @UserID, @UserIP, @ParamNo, @LangCode, @InterfaceID, @Version, @MarketID, @TableParamValue END
CREATE PROCEDURE [dbo].[EAIP_GetProfileMultiDBLimiters_235] @profNo int, @profInterfaceID varchar(10), @profVersion varchar(10), @ParamScreenIdList varchar(max), @LangCode varchar(10) AS BEGIN DECLARE @WRK_Limiters TABLE ( LimiterNo int , LimiterID varchar(20), DbCount int, DbVerNo int, ScreenNo int ) DECLARE @ScreenNo int DECLARE @ScreenID varchar(10) DECLARE @Show bit DECLARE @WRK_Screens TABLE ( ItemIndex int identity(1,1), ScreenNo int, ScreenID varchar(10), Show bit ) INSERT INTO @WRK_Screens(ScreenNo , ScreenID, Show) SELECT [IntfScreenNo], [ScreenID], [LimiterShow] FROM [dbo].[InterfaceScreen] intscr LEFT JOIN string_split(@ParamScreenIdList, ',') ids ON intscr.ScreenID = ids.value WHERE [InterfaceID]=@profInterfaceID and [Version] = @profVersion and (@ParamScreenIdList IS NULL OR value IS NOT NULL) DECLARE @ItemCount int, @ItemIndex int SELECT @ItemCount = count(*) FROM @WRK_Screens SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 BEGIN SELECT @ScreenNo=ScreenNo, @ScreenID=ScreenID, @Show=Show FROM @WRK_Screens WHERE ItemIndex=@ItemIndex INSERT INTO @WRK_Limiters(LimiterNo, LimiterID, DbCount, DbVerNo) SELECT LimiterNo, LimiterID, DbCount, DbVerNo FROM dbo.EAIF_GetProfileMultiDBLimiters_99(@ProfNo,@ScreenNo) UPDATE @WRK_Limiters SET ScreenNo=@ScreenNo WHERE ScreenNo is null END END SELECT ll.LimiterId, ll.ControlSize, lct.ControlTag as ControlType, lct.ControlFormat, cap.Caption AS Caption, ll.LogicalOpCode, ll.SearchString, dbld.ControlTemplate, CASE WHEN ll.BitFlag1=1 THEN ISNULL(pdl2.Show, (ISNULL(dil.Show,0))) ELSE ISNULL(pdl2.Show, (ISNULL(dil.Show,ws.Show))) END AS Show, IsNull(pdl2.DefValue,dil.DefValue) as DefValue, dil.DefPosn, dil.ColNum, NULL AS searchLimiterGroup, ll.QueryMaskId, CASE ll.IsListContentsGrouped WHEN 1 THEN 'y' ELSE 'n' END AS IsListContentsGrouped, ll.HelpUrl, d.DbName, ws.ScreenID FROM @WRK_Limiters wl INNER JOIN [dbo].[DbLimiter] dl ON wl.LimiterNo = dl.LimiterNo AND wl.DbVerNo = dl.DbVerNo INNER JOIN [dbo].[DbList] d on wl.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON wl.DbVerNo = dil.DbVerNo AND wl.LimiterNo = dil.LimiterNo AND dil.IntfScreenNo=wl.ScreenNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdl2 ON wl.DbVerNo = pdl2.DbVerNo AND wl.LimiterNo= pdl2.LimiterNo AND pdl2.IntfScreenNo = wl.ScreenNo AND pdl2.ProfNo=@ProfNo INNER JOIN [dbo].[LimiterList] ll ON wl.LimiterNo=ll.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType LEFT JOIN dbo.DbLimiterDetail dbld ON dbld.LimiterNo = ll.LimiterNo AND dbld.DbVerNo = wl.DbVerNo INNER JOIN dbo.DbLimiterCaption cap ON cap.LimiterNo = ll.LimiterNo AND cap.DbVerNo = wl.DbVerNo AND cap.LangCode = @LangCode INNER JOIN @WRK_Screens ws ON wl.ScreenNo=ws.ScreenNo Order By ws.ScreenID, ISNULL(pdl2.SeqNo,(ISNULL(dil.SeqNo,dl.SeqNo))) END
/* Assumption: An external database must have a ConnectorProvider of 'I' or 'M', Do not want to update DbListExternalSource if SourceType is 'C'. */ CREATE PROCEDURE [dbo].[EAUI_updatedatabase_133] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @DbVerNo INT, @DbName VARCHAR(10), @DbLabel VARCHAR(10), @DisplayName NVARCHAR(100), @DSFamilyName VARCHAR(100), @bitSubsetDb bit = NULL, @physicalDb varchar(10), @bitMergeSearch bit, @dbDefSearchExprType char(1), @dbDefSearchExpression nvarchar(255), @DbGroup VARCHAR(20)=NULL, @Interface VARCHAR(10), @DbCategory CHAR(1), @ContentType SMALLINT=1, @MultiSegment SMALLINT=0, @EnforceSimUsage BIT=0, @ShowStats BIT=1, @ShowOnDDSConsole BIT=1, @WebClient BIT=1, @Z3950Client BIT=1, @EPXBuild BIT=0, @EDABuild BIT=0, @IncludeWhenAutoAdd BIT=1, @VendorName NVARCHAR(100) = NULL, @ConnectorType NVARCHAR(20) = NULL, @Free BIT = 0, @connectorProvider CHAR(1) = NULL, @notes NVARCHAR( 1000) =NULL, @NonSearchableDbFlag bit=0, @ArchiveProfSettingFlag bit=0 ) AS BEGIN IF @Interface = '' SELECT @Interface = NULL ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID] = @Interface) BEGIN RAISERROR('The Interface ID (%s) does not exist',16,-1, @Interface) RETURN END BEGIN TRANSACTION --------------- SubSet DB begin -------------------- if(@bitSubsetDb is not null) begin declare @PhysDbVerNo int=0 select @PhysDbVerNo = [dbo].[DbSubset].[PhysDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@DbVerNo -- delete existing Parent DB if there's any (simpler logic to handle case: change physical DB on Subset DB) if @PhysDbVerNo>0 delete [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@DbVerNo -- update subset db's DSFamilyName update [dbo].[DbList] set [DSFamilyName]=@DSFamilyName from [dbo].[DbList] d inner join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo where s.PhysDbVerNo=@DbVerNo if @bitSubsetDb=1 begin if (LTRIM(RTRIM(@DSFamilyName)))='' begin RAISERROR('Database need a DS Family in order to have Subset Database.', 16, -1) RETURN end --select 1 from DbList --where DbVerNo=@DbVerNo --and DbType=1 and SourceType='D' -- subset should be a regular db with SourceType='D' --if @@ROWCOUNT=0 --begin -- RAISERROR('Only a regular Database can become a Subset Database.', 16, -1) -- RETURN --end declare @physicalDbVerNo int select @physicalDbVerNo = d.DbVerNo -- returns <=1 row from [dbo].[DbList] d JOIN dbo.DbList s ON s.DbType = d.DbType AND s.SourceType = d.SourceType where d.DbName=@physicalDb and d.DbLabel=@DbLabel and d.DSFamilyName=@DSFamilyName --and DbType=1 and SourceType='D' -- parent should be a regular db AND d.ContentType = @ContentType AND s.DbVerNo = @DbVerNo; if @@ROWCOUNT=0 BEGIN ROLLBACK TRAN RAISERROR('Subset Database - Physical DB value must be Short Name of a database of same Database Type and Content Type from same DS Family in same database label.', 16, -1) RETURN end select 1 from [dbo].[DbSubset] s where s.SubsetDbVerNo=@physicalDbVerNo if @@ROWCOUNT>0 begin ROLLBACK TRAN RAISERROR('Subset Database - Physical DB cannot be a subset database.', 16, -1) RETURN end -- Insert values into table[DbSubset] Insert into [dbo].[DbSubset]([dbo].[DbSubset].[SubsetDbVerNo], [dbo].[DbSubset].[PhysDbVerNo], [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression]) values (@DbVerNo, @physicalDbVerNo, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression) end -- of if @bitSubsetDb=1 if (@bitSubsetDb=1 and @PhysDbVerNo=0) -- physical db changed to subset db, remove its own data that will be inherited from physical db now. or (@bitSubsetDb=0 and @PhysDbVerNo>0)-- subset db changed to regular, so clean up existing data before copying data from physical db begin -- Clean up properties owned before changing to subset DB delete [dbo].[DbParamScalarValues] from [dbo].[DbParamScalarValues] s inner join [dbo].[DbParamList] l on l.ParamNo= s.ParamNo where s.DbVerNo=@DbVerNO and l.InheritFromPhysical=1 delete [dbo].[DbCluster] where [dbo].[DbCluster].[DbVerNo]=@DbVerNO delete [dbo].[DbSort] where [dbo].[DbSort].[DbVerNo]=@DbVerNO delete [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo]=@DbVerNO end if @bitSubsetDb=0 and @PhysDbVerNo>0 -- copy previous Physical DB configs over begin insert into [dbo].[DbParamScalarValues]([s].[DbVerNo], [s].[ParamNo], [s].[ParamValue]) select @DbVerNO, l.ParamNo, s.ParamValue from [dbo].[DbParamScalarValues] s inner join [dbo].[DbParamList] l on l.ParamNo= s.ParamNo where s.DbVerNo = @PhysDbVerNo and l.InheritFromPhysical=1 insert into [dbo].[DbCluster]([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag]) select @DbVerNo, [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag] from [dbo].[DbCluster] where [dbo].[DbCluster].[DbVerNo] = @PhysDbVerNo insert into [dbo].[DbSort]([dbo].[DbSort].[DbVerNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo]) select @DbVerNo, [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo] from [dbo].[DbSort] where [dbo].[DbSort].[DbVerNo] = @PhysDbVerNo insert into [dbo].[DbServerParams]([dbo].[DbServerParams].[DbVerNo], [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances],[dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords]) select @DbVerNo, [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances],[dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] from [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo] = @PhysDbVerNo end -- of else if @bitSubsetDb=0 and @PhysDbVerNo>0 else if @bitSubsetDb=0 and @PhysDbVerNo=0 and exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@DbVerNo) -- If DB has SubsetDBs, then make sure subsets have the same dsfamilyname, dbcategory, contenttype. begin UPDATE [dbo].[DbList] SET [DSFamilyName] = @DSFamilyName, [DbCategory] = @DbCategory, [ContentType] = @ContentType from [dbo].[DbList] d inner join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE s.PhysDbVerNo=@DbVerNo end end --------------- SubSet DB end -------------------- DECLARE @IncludeWhenAutoAdd_old BIT SELECT @IncludeWhenAutoAdd_old = [dbo].[DbList].[IncludeWhenAutoAdd] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @DisplayName, [dbo].[DbList].[DSFamilyName] = @DSFamilyName, [dbo].[DbList].[DbGroup] = @DbGroup, [dbo].[DbList].[InterfaceID] = @Interface, [dbo].[DbList].[DbCategory] = @DbCategory, [dbo].[DbList].[ContentType] = @ContentType, [dbo].[DbList].[MultiSegment] = @MultiSegment, [dbo].[DbList].[EnforceSimUsage] = @EnforceSimUsage, [dbo].[DbList].[ShowStats] = @ShowStats, [dbo].[DbList].[ShowOnDDSConsole] = @ShowOnDDSConsole, [dbo].[DbList].[WebClient] = @WebClient, [dbo].[DbList].[Z3950Client] = @Z3950Client, [dbo].[DbList].[EPXBuild] = @EPXBuild, [dbo].[DbList].[EDABuild] = @EDABuild, [dbo].[DbList].[IncludeWhenAutoAdd] = @IncludeWhenAutoAdd, [dbo].[DbList].[NonSearchableDb] = @NonSearchableDbFlag, [dbo].[DbList].[ArchiveProfSettings] = @ArchiveProfSettingFlag WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF @IncludeWhenAutoAdd_old = 0 AND @IncludeWhenAutoAdd = 1 DELETE [dbo].[InterfaceDbAuthority] FROM [dbo].[InterfaceDbAuthority] ia INNER JOIN [dbo].[InterfaceVersion] i ON ia.InterfaceID = i.InterfaceID AND ia.Version = i.Version WHERE ia.AuthDbVerNo = @DbVerNo AND i.AutoAddAuthority = 1 IF @IncludeWhenAutoAdd_old = 1 AND @IncludeWhenAutoAdd = 0 DELETE [dbo].[InterfaceDbAuthorityOrder] FROM [dbo].[InterfaceDbAuthorityOrder] ia INNER JOIN [dbo].[InterfaceVersion] i ON ia.InterfaceID = i.InterfaceID AND ia.Version = i.Version WHERE ia.AuthDbVerNo = @DbVerNo AND i.AutoAddAuthority = 1 -- EXTERNAL SOURCE UPDATE BEGIN if @connectorProvider is not null begin DECLARE @SourceType CHAR(1) DECLARE @originalConnectorProvider CHAR(1) SELECT @SourceType = [dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SELECT @originalConnectorProvider = Isnull([dbo].[DbListExternalSource].[ConnectorProvider], 'Q') FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF @SourceType IN ( 'M' ) BEGIN -- 10.2 Is the connectorProvider consistent with the source type? IF NOT (@connectorProvider IN ('M', 'I')) BEGIN ROLLBACK TRANSACTION RAISERROR( '%s is not a valid connector provider,update failed.',16,-1, @connectorProvider) END -- EXTERNAL SOURCE ADD BRANCH -- if true, we will be installing a new child record if (@originalConnectorProvider <> @connectorProvider) BEGIN DELETE FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbListExternalSourceMuse] WHERE [dbo].[DbListExternalSourceMuse].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END -- if this WAS not an external database or there was some problem IF NOT ( @originalConnectorProvider IN ('I','M') ) BEGIN -- Clear any existing parent record. DELETE FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END -- add the parent record INSERT INTO [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[Notes], [dbo].[DbListExternalSource].[VendorName]) VALUES (@connectorProvider, @ConnectorType, @DbVerNo, @Free, @notes, @VendorName) IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END IF ( @originalConnectorProvider <> @connectorProvider ) BEGIN -- get the connector provider updated UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[ConnectorProvider] = @connectorProvider, [dbo].[DbListExternalSource].[Notes] = @notes, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[Free] = @Free, [dbo].[DbListExternalSource].[VendorName]=@VendorName WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo END ELSE BEGIN -- EXTERNAL SOURCE UPDATE BRANCH UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[VendorName] = @VendorName, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[Free] = @Free, [dbo].[DbListExternalSource].[Notes] = @notes WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF ( @@ERROR <> 0 ) BEGIN ROLLBACK TRANSACTION RETURN END END END end -- EXTERNAL SOURCE UPDATE END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Update Database Attributes' IF @MultiSegment=0 BEGIN --It's Single Segmented and Parent not attached as a Segment. IF NOT EXISTS(SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@DbName) BEGIN EXEC [dbo].[EAIP_FixSingleSegment_70] @DbVerNo, @DbName, @DisplayName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, @DbLabel, 'Fix Single Segment' END END COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetDbPromoteSegmentList_80(@DbVerNo int) RETURNS varchar(8000) AS BEGIN DECLARE @Query varchar(255) SET @Query = '' --If any Segment does not contain a date i.e. NULL then just return IF EXISTS (SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] = @DbVerNo AND [dbo].[DbSegment].[ProductionDate] IS NULL) RETURN @Query --If only One Segment exists for the give Db then just return IF ( (SELECT COUNT([dbo].[DbSegment].[SegName]) FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] = @DbVerNo) = 1) RETURN @Query --Get the records that meatch the latest Production Date SELECT @Query = @Query + [dbo].[DbSegment].[SegName] + '|' FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] = @DbVerNo and [dbo].[DbSegment].[ProductionDate] = (Select MAX([dbo].[DbSegment].[ProductionDate]) from [dbo].[DbSegment] where [dbo].[DbSegment].[DbVerNo] = @DbVerNo) IF Len(@Query) > 0 SET @Query = substring(@Query, 1, len(@Query)-1) RETURN @Query END
CREATE PROCEDURE [dbo].[EAUI_DetachInterfaceExpander_90] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @ControlName varchar(50)) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceExpander] WHERE [dbo].[InterfaceExpander].[InterfaceID]= @InterfaceID AND [dbo].[InterfaceExpander].[Version]=@Version AND [dbo].[InterfaceExpander].[ControlName]=@ControlName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Detach Expander', @InterfaceID,@Version, @ControlName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[DDS_UpdateDatabaseNewFormat_96]( @UserID nvarchar(255), @UserIP varchar(15), @DbGroupName varchar(100), @DbGroupLabel varchar(100), @xmlDoc XML, @updateCnt INT OUTPUT ) AS BEGIN SET NOCOUNT ON DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SET @updateCnt=0 DECLARE @lastModifiedDate VARCHAR(100) SELECT @lastModifiedDate = e.[epcInfo].value('@lastModifiedDate' , 'varchar(100)') FROM @xmlDoc.nodes('epcInfo') AS e(epcInfo) -- ################################################################################### -- Lets get the database names, labels and versions -- ################################################################################### DECLARE @dbName VARCHAR(100) DECLARE @dbLabel VARCHAR(100) DECLARE @dbVer INT DECLARE @dbs TABLE ( DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, DbVerNo INT ) INSERT INTO @dbs SELECT d.[database].value('@dbname', 'varchar(100)'), d.[database].value('@dblabel', 'varchar(100)'), NULL FROM @xmlDoc.nodes('epcInfo/database') AS d([database]) UPDATE @dbs SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --SELECT * FROM @dbs -- ################################################################################### -- Shread the Volumes -- ################################################################################### DECLARE @volumes TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, Volume VARCHAR(100), EpkPath VARCHAR(500) ) INSERT INTO @volumes SELECT 0 AS DbVerNo, v.volumes.value('data(../../@dbname)[1]', 'VARCHAR(100)') AS DBName, v.volumes.value('data(../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, v.volumes.value('@volume', 'varchar(100)') AS Volume, v.volumes.value('@epkPath', 'varchar(100)') AS EpkPath FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo') AS v(volumes) UPDATE @volumes SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @volumes -- ################################################################################### -- Get a complete list of volumes, segments -- ################################################################################### DECLARE @VolSegments TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, SegName varchar(10) NOT NULL, Volume varchar(20) NOT NULL ) INSERT INTO @VolSegments SELECT 0 AS DbVerNo, s.segments.value('data(../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, s.segments.value('data(../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, s.segments.value('@name', 'varchar(10)') AS SegName, s.segments.value('data(../../@volume)[1]', 'varchar(20)') AS Volume FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo/segments/segment') AS s(segments) UPDATE @VolSegments SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @VolSegments -- ################################################################################### -- Shread the thesauruses -- ################################################################################### DECLARE @thesauruses TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, Volume VARCHAR(100), segName VARCHAR(100), ThesNumber INT, userControlled BIT, storeKWIC BIT, ThesFile VARCHAR(100) ) INSERT INTO @thesauruses SELECT 0 AS DbVerNo, t.thesaurus.value('data(../../../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, t.thesaurus.value('data(../../../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, t.thesaurus.value('data(../../../../@volume)[1]', 'varchar(100)') AS Volume, t.thesaurus.value('data(../../@name)[1]', 'varchar(100)') AS segName, t.thesaurus.value('@no', 'INT') AS ThesNumber, CASE (t.thesaurus.value('@userControlled', 'char(1)')) WHEN 'y' THEN 1 ELSE 0 END AS userControlled, CASE (t.thesaurus.value('@storeKWIC', 'char(1)')) WHEN 'y' THEN 1 ELSE 0 END AS storeKWIC, t.thesaurus.value('.', 'varchar(100)') AS ThesFile FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo/segments/segment/thesauruses/thesaurus') AS t(thesaurus) UPDATE @thesauruses SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @thesauruses -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- At this point, we have shreaded all the XML into tables and can do our updates -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ BEGIN TRY BEGIN TRANSACTION -- ################################################################################### -- Process the Volumes -- ################################################################################### -- =============================================================== -- 1) Add any new volumes to the database -- =============================================================== INSERT INTO [dbo].[DbVolume] ( [e].[DbVerNo], [e].[Volume], [e].[EpkPath], [e].[LastUpdateDate] ) SELECT w.DbVerNo, w.Volume, w.EpkPath, @lastModifiedDate FROM @volumes w LEFT JOIN [dbo].[DbVolume] e ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume WHERE e.Volume IS NULL SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing volumes that are no longer needed -- =============================================================== DELETE [dbo].[DbVolume] FROM [dbo].[DbVolume] AS e LEFT JOIN @volumes AS w ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume WHERE w.Volume IS NULL AND e.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 3) Update any volumes that have changed -- =============================================================== UPDATE [dbo].[DbVolume] SET [EpkPath] = w.EpkPath, [LastUpdateDate] = @lastModifiedDate FROM [dbo].[DbVolume] AS e INNER JOIN @volumes AS w ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume WHERE e.EpkPath <> w.EpkPath SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- Process the thesaurus -- ################################################################################### -- ================================================= -- 1) Add any new thesaurus to the database -- ================================================= INSERT INTO [dbo].[DbThesaurus] ([e].[DbVerNo], [e].[SegName], [e].[Volume], [e].[ThesNumber], [e].[ThesFile], [e].[UserControlled], [e].[StoreKWIC]) SELECT w.DbVerNo, w.segName, w.Volume, w.ThesNumber, w.ThesFile, w.userControlled, w.storeKWIC FROM @thesauruses AS w LEFT JOIN [dbo].[DbThesaurus] AS e ON e.DbVerNo = w.DbVerNo AND e.SegName = w.segName AND e.Volume = w.Volume AND e.ThesNumber = w.ThesNumber WHERE e.DbVerNo IS NULL AND w.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing thesaurus that are no longer needed -- =============================================================== DELETE [dbo].[DbThesaurus] --SELECT e.DbVerNo, e.SegName, e.Volume, e.ThesNumber, -- f.DbVerNo, f.SegName, f.Volume FROM [dbo].[DbThesaurus] AS e -- Because thesaurus entires are kept at the volume,segment level we -- have to make sure we work against the entire list of vol/Seg pairs INNER JOIN @VolSegments AS f ON e.DbVerNo = f.DbVerNo AND e.Volume = f.Volume AND e.SegName = f.SegName LEFT JOIN @thesauruses AS w ON e.DbVerNo = w.DbVerNo AND e.Volume = w.Volume AND e.SegName = w.segName AND e.ThesNumber = w.ThesNumber WHERE w.DbVerNo IS NULL SET @updateCnt = @updateCnt+@@ROWCOUNT -- ================================================= -- 3) Update any thesaurus that have changed -- ================================================= UPDATE [dbo].[DbThesaurus] SET [ThesFile] = w.ThesFile, [UserControlled] = w.userControlled, [StoreKWIC] = w.storeKWIC FROM [dbo].[DbThesaurus] AS e INNER JOIN @thesauruses AS w ON e.DbVerNo =w.DbVerNo AND e.SegName =w.segName AND e.Volume =w.Volume AND e.ThesNumber=w.ThesNumber WHERE (e.ThesFile <> w.ThesFile OR e.UserControlled <> w.userControlled OR e.StoreKWIC <> w.storeKWIC ) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- If there where changes, then we need to issue a notifyRequest and update last modified date -- ################################################################################### IF (@updateCnt > 0) BEGIN UPDATE [dbo].[DbVolume] SET [LastUpdateDate] = @lastModifiedDate FROM [dbo].[DbVolume] AS e INNER JOIN @volumes AS w ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume AND e.EpkPath = w.EpkPath WHERE LastUpdateDate <> @lastModifiedDate UPDATE [dbo].[DbList] SET [dbo].[DbList].[LastUpdateDate] = @lastModifiedDate WHERE [dbo].[DbList].[DbName]=@DbGroupName AND [dbo].[DbList].[DbLabel]=@DbGroupLabel --PRINT 'Call NotifyChanges_70: Update Count='+CONVERT(varchar(100), @updateCnt) EXEC [dbo].[EPC_NotifyChanges_70] @DbGroupName, @DbGroupLabel END -- ################################################################################### -- If we got this far, we are good and should commit the transaction -- ################################################################################### COMMIT TRANSACTION END TRY BEGIN CATCH -- Get the error info before any statements are executed SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- If there is an active transaction, roll it back IF (XACT_STATE()) <> 0 BEGIN ROLLBACK TRANSACTION; END; -- Raise the error to the caller RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetConsortiaMembers_162] (@ParentID varchar(10)) AS BEGIN Set @ParentID = RTRIM(LTRIM(@ParentID)) /* Start of Validations */ /* Validate: Customer does not exist */ IF Not Exists (Select 1 FROM [dbo].[Customer](nolock) WHERE [dbo].[Customer].[CustID] = @ParentID) Begin RaisError('The ''%s'' Customer does not exist.', 16,-1, @ParentID) Return End /* End of validation */ SELECT b.CustID, b.CustName FROM [dbo].[CustomerGroup](nolock) a JOIN [dbo].[Customer](nolock) b ON a.ChildID=b.CustID WHERE a.ParentID=@ParentID UNION SELECT b.CustID,b.CustName FROM [dbo].[Customer] (nolock) b WHERE b.CustID=@ParentID and [b].[Consortium]=0 END
CREATE PROCEDURE [dbo].[EAUI_GetSingleDisciplineDatabaseListBrowseByDbName_131] ( @DbName VARCHAR(10), @DisciplineNo INT ) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN -- since we don't have a foreign key to the DbVerNo, we need to figure out -- what the "highest" label is for a given DbName and use that DbLabel -- so that we don't get duplicates ;WITH DistinctDbNameByHighestDbLabel ( DbName, DbLabel ) AS ( SELECT dl.DbName , MIN(CASE WHEN [dl].[DbLabel] = 'live' THEN '1' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'liveQC' THEN '2' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuild' THEN '3' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuildQC' THEN '4' + [dl].[DbLabel] ELSE '5' + [dl].[DbLabel] END) AS DbLabel FROM [dbo].[DbList] dl WHERE [dl].[SourceType] IN ( 'D', 'C' ) GROUP BY dl.DbName ) SELECT dl.DbName , [dl].[DisplayName] + ' (' + dl.DbName + ')' AS DisplayName, CASE ISNULL(dd.DbName, '') WHEN '' THEN 0 ELSE 1 END AS Selected FROM [dbo].[DbList] dl JOIN DistinctDbNameByHighestDbLabel ddbn ON dl.DbName = ddbn.DbName AND dl.DbLabel = SUBSTRING(ddbn.DbLabel,2,LEN(ddbn.DbLabel) - 1) LEFT OUTER JOIN [dbo].[DbDiscipline] dd ON dd.DbName = dl.DbName AND [dd].[DisciplineNo] = @DisciplineNo WHERE [dl].[SourceType] IN ( 'D', 'C' ) AND [dl].[DbType] = 1 AND dl.DbName LIKE @DbName + '%' ORDER BY DisplayName END END
CREATE PROCEDURE [dbo].[EAUI_AttachDatabaseTopic_77] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @TopicList varchar(8000))AS BEGIN BEGIN TRANSACTION INSERT INTO [dbo].[DbTopic] ([dbo].[DbTopic].[DbVerNo], [dbo].[DbTopic].[TopicNo]) SELECT @DbVerNo, CONVERT(int,a.Item) FROM dbo.EAIF_GetItemTable_70(@TopicList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@TopicList,1,1024),'+',',') IF DATALENGTH(@TopicList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@TopicList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Add Topic', @DbName,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE Procedure [dbo].[GetCustomerDatabaseCount_100] @CustID varchar(10) AS BEGIN Declare @CurrDate datetime Set @CurrDate = GETDATE() select p.CustID, ISNULL(p.GroupID, '') AS GroupID, ISNULL(p.ProfID, '') AS ProfID ,p.ProfNo,COUNT(pd.DbVerNo) AS DbCount from [dbo].[Profile] p left outer join [dbo].[ProfDatabase] pd On p.ProfNo=pd.ProfNo where p.CustID=@CustID and (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, @CurrDate )<0) Group By p.CustID, p.GroupID,p.ProfID,p.ProfNo END
CREATE PROCEDURE [dbo].[EAIP_AddProfileDatabases_70]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @DbLabel varchar(10) Declare @PrdOffSource char(2) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @DbLabel=[dbo].[Profile].[DbLabel] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID /*9/3/2008 AW - added AccessEndDate to ProfDatabase*/ DECLARE @WorkProfDatabase1 table (ProfNo int, DbVerNo int, CtrlCustID varchar(10), Limiters varchar(100), SeqNo int identity(1,1), Mode char(1), GracePeriod int, EndDate datetime, SelDefault int, Enable bit) DECLARE @WorkProfDatabase2 table (ProfNo int, DbVerNo int, CtrlCustID varchar(10), Limiters varchar(100), SeqNo int, Mode char(1), GracePeriod int, EndDate datetime, SelDefault int, Enable bit) ------------------------ -- EBSCO Databases --------------------------- /*Use uniqueness of CustID.GroupID.ProfID in dbo.Profile to reinforce distinct row set*/ INSERT INTO @WorkProfDatabase1 (ProfNo, DbVerNo, CtrlCustID, Limiters, Mode, GracePeriod, EndDate, SelDefault, Enable) select distinct PROF.ProfNo, DBLT.DbVerNo, CSUB.CtrlCustID, ISNULL(PACK.Limiters, ''), CSUB.Mode, PRD.GracePeriod, CSUB.EndDate, 0, 0 from EASUPPORT.dbo.CustSubscription CSUB join [dbo].[Profile] PROF on PROF.CustID = CSUB.CustID join [dbo].[UserGroup] UGRP on UGRP.CustID = PROF.CustID and UGRP.GroupID = PROF.GroupID join EASUPPORT.dbo.ProductPackage PACK on PACK.PrdOffNo = CSUB.PrdOffNo join EASUPPORT.dbo.Product PRD on PRD.ProductID = PACK.ProductID join EASUPPORT.dbo.ProductInterface PRDI on PRDI.ProductID = PACK.ProductID and PRDI.InterfaceID = PROF.InterfaceID and PRDI.Version = PROF.Version join [dbo].[DbList] DBLT on DBLT.DbName = PACK.ProductID and DBLT.DbLabel = PROF.DbLabel where PROF.CustID = @CustID and PROF.GroupID = @GroupID and PROF.ProfID = @ProfID ------------------------ -- EhIS Connectors --------------------------- INSERT INTO @WorkProfDatabase1 (ProfNo, DbVerNo, CtrlCustID, Limiters, Mode, GracePeriod, EndDate, SelDefault, Enable) select distinct PROF.ProfNo, DBLT.DbVerNo, CSUB.CtrlCustID, '', CSUB.Mode, NULL, CSUB.EndDate, 0, 0 from [dbo].[Customer] cust join EASUPPORT.dbo.CustSubscription CSUB on cust.CustID=csub.CustID join [dbo].[Profile] PROF on PROF.CustID = CSUB.CustID join [dbo].[UserGroup] UGRP on UGRP.CustID = PROF.CustID and UGRP.GroupID = PROF.GroupID join EASUPPORT.dbo.ProductInterface [pi] on [pi].InterfaceID=PROF.InterfaceID and [pi].Version=PROF.Version join EASUPPORT.dbo.Product p on [pi].ProductID=p.ProductID join EASUPPORT.dbo.ProductPackage pp on p.ProductID=pp.ProductID and CSUB.PrdOffNo=pp.PrdOffNo join EASUPPORT.dbo.ProductOffering po on pp.PrdOffNo=po.PrdOffNo join [dbo].[DbList] DBLT on DBLT.SourceType = Po.SourceType join [dbo].[CustExternalDbList] edbl on dblt.DbVerNo=edbl.DbVerNo and cust.CustNo=edbl.CustNo AND edbl.Status='A' where PROF.CustID = @CustID and PROF.GroupID = @GroupID and PROF.ProfID = @ProfID ------------------------ -- Catalogs and IRs --------------------------- INSERT INTO @WorkProfDatabase1 (ProfNo, DbVerNo, CtrlCustID, Limiters, Mode, GracePeriod, EndDate, SelDefault, Enable) select distinct P.ProfNo, dbl.DbVerNo, cs.CtrlCustID, '', cs.Mode, NULL, cs.EndDate, 0, 0 from [dbo].[Profile] p join EASUPPORT.dbo.ProductInterface [pi] on p.InterfaceID=[pi].InterfaceID and p.Version=[pi].Version join EASUPPORT.dbo.ProductPackage pp on [pi].ProductID=pp.ProductID join EASUPPORT.dbo.ProductOffering po on pp.PrdOffNo=po.PrdOffNo and po.SourceType='C' Join EASUPPORT.dbo.CustSubscription cs on po.PrdOffNo=cs.PrdOffNo and p.CustID=cs.CustID join EASUPPORT.dbo.CustomerCatalogs cc on cs.CustID=cc.CustID and cs.SubscriptionNo=cc.SubscriptionNo and cs.SubscriberID=cc.SubscriberID join [dbo].[DbList] dbl on cc.DbName=dbl.DbName and dbl.DbLabel='live' where p.CustID = @CustID and p.GroupID = @GroupID and p.ProfID = @ProfID update @WorkProfDatabase1 set EndDate = dbo.fn_GetEPAccessEndDate_90(EndDate,GracePeriod,null,null) where lower(Mode) = 's' update @WorkProfDatabase1 set EndDate = dbo.fn_GetEPAccessEndDate_90(EndDate,0,0,null) where lower(Mode) = 't'/*NO grace period for trial subscription*/ /*09/11/2008 AW Issue 6181 remove duplicate DbVerNo if any. Keep the one with later End Date*/ insert into @WorkProfDatabase2 select * from @WorkProfDatabase1 delete @WorkProfDatabase1 from @WorkProfDatabase1 AS a INNER JOIN @WorkProfDatabase2 AS b ON a.DbVerNo = b.DbVerNo where datediff(hh, a.EndDate, b.EndDate) > 0 /* EADM-5742 Fix: Remove duplicate DbVerNo - Different Subscriptions for a product with End dates less than hour apart */ delete @WorkProfDatabase1 from @WorkProfDatabase1 AS w INNER JOIN (SELECT DbVerNo, Max(EndDate) AS EndDate FROM @WorkProfDatabase1 Group By DbVerNo) AS a ON w.DbVerNo=a.DbVerNo and w.EndDate<>a.EndDate -------------------------------------------------- -- set enabled based on Interface and SourceType properties -------------------------------------------------- Update @WorkProfDatabase1 set [Enable]=newEnable, [SelDefault]=newSelDefault from @WorkProfDatabase1 wpdb join (select p.ProfNo, dbl.DbVerNo, newEnable=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc.StringValue, 'Standard') = 'Standard' then wpdb.Enable when isnull(istc.StringValue, 'Standard') = 'Disable' then 0 when isnull(istc.StringValue, 'Standard') = 'Enable' then 1 end, newSelDefault=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc2.StringValue, 'Standard')= 'Standard' then wpdb.SelDefault when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from [dbo].[Profile] p join (Select @ProfNo ProfNo, DbVerNo, SeqNo, Enable, SelDefault, 0 CustomLimiter, CtrlCustID, Mode, EndDate FROM @WorkProfDatabase1) wpdb on p.ProfNo=wpdb.ProfNo join [dbo].[DbList] dbl on wpdb.DbVerNo=dbl.DbVerNo join [dbo].[InterfaceVersion] iv on (p.InterfaceID=iv.InterfaceID and p.Version=iv.Version) left outer join [dbo].[InterfacePrimaryDatabases] ip on (p.InterfaceID=ip.InterfaceID and p.Version=ip.Version and dbl.DbVerNo=ip.DbVerNo) left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseAddRule' left outer join [dbo].[InterfaceSourceTypeConfig] istc2 on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and dbl.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule') a on wpdb.DbVerNo=a.DbVerNo --EHPMEBSCOADMIN-1343: The non-searchable databases are enabled by default on the profiles -- This update would override ALL other existing business rules around "enabling" the databases on the profile. Update @WorkProfDatabase1 set [Enable]=1 from @WorkProfDatabase1 wpdb JOIN [dbo].[DbList] d ON wpdb.DbVerNo=d.DbVerNo AND d.NonSearchableDb=1 -- EhpmEbscoAdmin-1447 -- EAIF_GetHiddenProfDbList_133 returns all Databases that have been configured to not show on the Profile Database List -- For each of these Databases we need to configure them to be enabled and Selected by default for all Profiles UPDATE @WorkProfDatabase1 set [Enable]=1, [SelDefault]=1 from @WorkProfDatabase1 wpdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON wpdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS not null /*09/11/2008 AW ssue 6181 only allow current database(s) to be attached to the new ProfNo*/ begin transaction INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable], [dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter], [dbo].[ProfDatabase].[CtrlCustID], [dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate]) SELECT ProfNo, DbVerNo, MIN(SeqNo), Enable, Seldefault, 0, '', MIN(Mode), EndDate FROM @WorkProfDatabase1 where EndDate is null or datediff(hh, EndDate, getdate())<0 GROUP BY DbVerNo, EndDate, ProfNo, Enable, SelDefault if @@Error <> 0 rollback transaction else begin commit transaction UPDATE [dbo].[ProfDatabase] SET ProfDatabase.CtrlCustID=dbo.EAIF_AppendCtrlCustID_70(b.CtrlCustID, a.CtrlCustID) FROM @WorkProfDatabase1 AS a INNER JOIN [dbo].[ProfDatabase] AS b ON b.ProfNo=a.ProfNo AND a.DbVerNo=b.DbVerNo --add hidden limiters defined for the Product Offering to the ProfDLimiters2 DECLARE @WRK_ProfDbLimiter2 TABLE (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int, SeqNo int) DECLARE @DbVerNo int DECLARE @LimiterList varchar(100) DECLARE @IntfScreenNo int DECLARE C1_C CURSOR FOR SELECT wt.DbVerNo, wt.Limiters, ins.IntfScreenNo FROM @WorkProfDatabase1 wt join [dbo].[Profile] p on p.ProfNo=@ProfNo join [dbo].[InterfaceScreen] ins on p.InterfaceID = ins.InterfaceID AND p.Version=ins.Version WHERE ([wt].[EndDate] is null or datediff(hh, [wt].[EndDate], getdate())<0) AND wt.Limiters <> '' OPEN C1_C FETCH NEXT FROM C1_C INTO @DbVerNo,@LimiterList,@IntfScreenNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @WRK_ProfDbLimiter2(ProfNo,DbVerNo,IntfScreenNo,LimiterNo,SeqNo) SELECT @ProfNo,@DbVerNo,@IntfScreenNo, ll.LimiterNo,-1 FROM dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a INNER JOIN [dbo].[LimiterList] AS ll ON a.Item = ll.LimiterId WHERE ll.DbLabel=@DbLabel IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C RETURN END END FETCH NEXT FROM C1_C INTO @DbVerNO,@LimiterList,@IntfScreenNo END CLOSE C1_C DEALLOCATE C1_C UPDATE @WRK_ProfDbLimiter2 SET [SeqNo] = dbl.SeqNo FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[DbLimiter] AS dbl ON a.DbVerNo=dbl.DbVerNo AND dbl.LimiterNo=a.LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue],[dbo].[ProfDbLimiter2].[SeqNo]) SELECT distinct ProfNo,DbVerNo,IntfScreenNo,LimiterNo,0,'On',SeqNo FROM @WRK_ProfDbLimiter2 end END
CREATE PROCEDURE [dbo].[EAUI_GetLocalMessageColList_70] (@CustID varchar(20)) AS BEGIN SELECT [dbo].[Collection].[ColID], [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EATL_UpdateGlobalDocType_77](@UserID nvarchar(20), @UserIP varchar(10), @DocTypeID varchar(10), @Caption nvarchar(255), @MouseOverText nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @DocTypeNo int SELECT @DocTypeNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID IF @DocTypeNo is null RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DocTypeCaption] WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo AND [dbo].[DocTypeCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[DocTypeCaption] SET [dbo].[DocTypeCaption].[Caption]=@Caption,[dbo].[DocTypeCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo AND [dbo].[DocTypeCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) DocType Caption' END ELSE BEGIN INSERT INTO [dbo].[DocTypeCaption] ([dbo].[DocTypeCaption].[DocTypeNo],[dbo].[DocTypeCaption].[LangCode],[dbo].[DocTypeCaption].[Caption],[dbo].[DocTypeCaption].[MouseOverText]) VALUES (@DocTypeNo,@Lang,@Caption,@MouseOverText) SET @LogFlag ='Translate(Insert) DocType Caption' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'DocTypes',@LogFlag, @DocTypeID,'Lang:', @Lang, 'Caption:', @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDBSortOptions_70]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN declare @dbVerNo int select @dbVerNo = isnull(s.PhysDbVerNo, d.DbVerNo) FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbName=@ShortDBName AND d.DbLabel=@Label SELECT [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[Hide] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo] = @dbVerNo ORDER BY [dbo].[DbSort].[SeqNo] END
Create Procedure [dbo].[EAUI_GetGroupList_100](@CustID varchar(10)) AS Begin DECLARE @ParamNo int declare @DefValue varchar(4000) declare @Val varchar(4000) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' SELECT [ug].[GroupID], [ug].[GroupName], isnull(isnull([val].[ParamValue], [dval].[DefValue]),@DefValue) from [dbo].[Customer] c join [dbo].[UserGroup] ug on c.CustID=ug.CustID left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70([c].[CustType]) WHERE c.CustID = @CustID and isnull(isnull([val].[ParamValue], [dval].[DefValue]),@DefValue)=1 ORDER BY [ug].[GroupName] End
--IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'EAIP_UpdateMasterTitleISSN_70') --BEGIN -- DROP PROCEDURE dbo.EAIP_UpdateMasterTitleISSN_70 --END --GO CREATE PROCEDURE [dbo].[EAIP_UpdateMasterTitleISSN_70]( @TitleNo int, @NewTitle nvarchar(430), @NewISSN varchar(20), @NewSource varchar(10) ) AS BEGIN DECLARE @OldISSN varchar(20) DECLARE @OldTitle nvarchar(430) DECLARE @OldSource varchar(10) SELECT @OldISSN=[dbo].[MasterTitle].[ISSN], @OldTitle=[dbo].[MasterTitle].[Title], @OldSource=[dbo].[MasterTitle].[Source] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[TitleNo]=@TitleNo IF @OldSource <> @NewSource AND @OldSource <> 'EPDB' AND @OldSource<> 'usage' AND @OldSource<> 'ui' AND @NewSource <> 'ui' -- overwrite not allowed RETURN BEGIN TRANSACTION IF @OldISSN IS NULL OR @NewISSN is NULL OR @OldISSN <> @NewISSN OR @OldTitle <> @NewTitle BEGIN UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[Title]=@NewTitle,[dbo].[MasterTitle].[ISSN]=@NewISSN, [dbo].[MasterTitle].[Source]=@NewSource, [dbo].[MasterTitle].[TitleChecksum]=checksum(isnull(Lower(RTrim(@NewTitle)),'')) WHERE [dbo].[MasterTitle].[TitleNo] = @TitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE EASUPPORT.dbo.MarcTitle SET [EASUPPORT].[dbo].[MarcTitle].[Title]=@NewTitle, [EASUPPORT].[dbo].[MarcTitle].[ISSN]=@NewISSN, [EASUPPORT].[dbo].[MarcTitle].[DateModified] = getdate() WHERE [EASUPPORT].[dbo].[MarcTitle].[TitleNo] = @TitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[MatchTitle] SET [dbo].[MatchTitle].[MatchTitle]=dbo.EAIF_GetMatchTitle_70(@NewTitle,@NewISSN) WHERE [dbo].[MatchTitle].[MatchTitle]=dbo.EAIF_GetMatchTitle_70(@OldTitle,@OldISSN) AND [dbo].[MatchTitle].[TitleNo]=@TitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
Create PROCEDURE [dbo].[EAUI_UpdateSingleDisciplineDatabase_131] ( @UserID NVARCHAR(20) , @UserIP VARCHAR(15) , @DisciplineNo INT , @DbName VARCHAR(10) , @IsSelected BIT ) AS BEGIN DECLARE @DisciplineCode VARCHAR(10) SELECT @DisciplineCode = [dbo].[DisciplineList].[DisciplineCode] FROM [dbo].[DisciplineList] WHERE [dbo].[DisciplineList].[DisciplineNo] = @DisciplineNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DisciplineNo, @DisciplineCode, 'Update Single Discipline Database', 'DbName:', @DbName, 'IsSelected:', @IsSelected IF (@IsSelected = 1) BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[DbDiscipline] WHERE [dbo].[DbDiscipline].[DisciplineNo] = @DisciplineNO AND [dbo].[DbDiscipline].[DbName] = @DbName) BEGIN INSERT INTO [dbo].[DbDiscipline] ([dbo].[DbDiscipline].[DisciplineNo], [dbo].[DbDiscipline].[DbName]) VALUES (@DisciplineNo, @DbName) END END ELSE BEGIN DELETE FROM dbo.DbDiscipline WHERE [dbo].[DbDiscipline].[DisciplineNo] = @DisciplineNo AND [dbo].[DbDiscipline].[DbName] = @DbName END END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseListBrowseByDisplayName_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseListBrowseByDisplayName_70](@DbLabel varchar(10), @DisplayName nvarchar(200),@SourceTypeList varchar(10)) as BEGIN IF @DbLabel = 'custom' SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType join dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item join EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType left outer join [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel not in ('live', 'liveQC', 'rebuild', 'rebuildQC') AND l.DisplayName Like @DisplayName + '%' --AND l.SourceType = @SourceType ORDER BY l.DisplayName ELSE SELECT distinct l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType join dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item join EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType left outer join [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel = @DbLabel AND l.DisplayName Like @DisplayName + '%' --AND l.SourceType = @SourceType ORDER BY l.DisplayName END
CREATE PROCEDURE [dbo].[EAIP_UpdateCustomParamTblProfValues_161] (@UserID nvarchar(20), @UserIP varchar(15), @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @ParamName varchar(100), @LangCode VARCHAR(10), @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ProfNo INT DECLARE @ParamNo INT DECLARE @TableParamValue XML IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] cpt JOIN [dbo].[CustomParamList] cpl ON cpt.ParamNo=cpl.ParamNo WHERE [cpl].[ParamName]=@ParamName) SET @LangCode = '' ELSE IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMValues] cpt JOIN [dbo].[CustomParamList] cpl ON cpt.ParamNo=cpl.ParamNo WHERE [cpl].[ParamName]=@ParamName AND [cpt].[LangCode] = @LangCode ) SET @LangCode = 'en' SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]=@ParamName SET @TableParamValue=convert(xml,@ParamValue) EXEC [dbo].[EAUI_UpdateCustomParamTblProfValues_90] @UserID, @UserIP, @ProfNo, @ParamNo, @LangCode, @TableParamValue END
CREATE PROCEDURE [dbo].[EAIP_GetProfileNo_141] (@CustID varchar(10), @GroupID varchar (10),@ProfID varchar(10)) AS IF EXISTS (SELECT 1 from [dbo].[Profile] where [dbo].[Profile].[CustID] = @CustID and [dbo].[Profile].[GroupID] = @GroupID and [dbo].[Profile].[ProfID] = @ProfID) SELECT [dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID] = @CustID and [dbo].[Profile].[GroupID] = @GroupID and [dbo].[Profile].[ProfID] = @ProfID ELSE SELECT -1
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabase_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @DisplayName nvarchar(100), @DSFamilyName varchar(100), @DbGroup varchar(20)=null, @ContentType smallint=1, @MultiSegment bit=0, @EnforceSimUsage bit=0, @ShowStats bit=1, @ShowOnDDSConsole bit=1, @WebClient bit=1, @WinClient bit=1, @CharClient bit=1, @Z3950Client bit=1) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName]=@DisplayName, [dbo].[DbList].[DSFamilyName]=@DSFamilyName, [dbo].[DbList].[DbGroup]=@DbGroup,[dbo].[DbList].[ContentType]=@ContentType,[dbo].[DbList].[MultiSegment]=@MultiSegment, [dbo].[DbList].[EnforceSimUsage]=@EnforceSimUsage,[dbo].[DbList].[ShowStats]=@ShowStats, [dbo].[DbList].[ShowOnDDSConsole]=@ShowOnDDSConsole,[dbo].[DbList].[WebClient]=@WebClient, [dbo].[DbList].[WinClient]=@WinClient,[dbo].[DbList].[CharClient]=@CharClient,[dbo].[DbList].[Z3950Client]=@Z3950Client WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Update Database Attributes' IF @MultiSegment=0 BEGIN --It's Single Segmented and Parent not attached as a Segment. IF NOT EXISTS(SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@DbName) BEGIN EXEC [dbo].[EAIP_FixSingleSegment_70] @DbVerNo, @DbName, @DisplayName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIP, @DbName, @DbLabel, 'Fix Single Segment' END END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetDbShortDescription_102](@DbVerNo INT) RETURNS NVARCHAR(2000) AS BEGIN DECLARE @paramNo int DECLARE @xmlShortDesc xml; --DECLARE @ShortDesc nvarchar(2000); Select @paramNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription' select @xmlShortDesc = [dbo].[DbParamXmlValues].[ParamValue] from [dbo].[DbParamXmlValues] join [dbo].[DbParamList] on [dbo].[DbParamList].[ParamNo] = [dbo].[DbParamXmlValues].[ParamNo] where [dbo].[DbParamList].[ParamName]='shortDescription' AND [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo RETURN @xmlShortDesc.value('(/shortDescriptions/shortDescription[@lang = "en"])[1]', 'nvarchar(2000)') END
CREATE PROCEDURE [dbo].[EAUI_DetachMultiDbAuthority_90] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @MultiDbAuthId varchar(10)) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceMultiDbAuthList] WHERE [dbo].[InterfaceMultiDbAuthList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceMultiDbAuthList].[Version]=@Version AND [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID]=@MultiDbAuthId IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Detach MultiDbAuth', @InterfaceID,@Version,@MultiDbAuthId COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[DDS_UpdateDatabaseOldFormat_96]( @UserID nvarchar(255), @UserIP varchar(15), @DbGroupName varchar(100), @DbGroupLabel varchar(100), @xmlDoc XML, @updateCnt INT OUTPUT ) AS BEGIN SET NOCOUNT ON DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SET @updateCnt=0 DECLARE @lastModifiedDate VARCHAR(100) SELECT @lastModifiedDate = e.[epcInfo].value('@lastModifiedDate' , 'varchar(100)') FROM @xmlDoc.nodes('epcInfo') AS e(epcInfo) -- ################################################################################### -- Lets get the database names, labels and versions -- ################################################################################### DECLARE @dbName VARCHAR(100) DECLARE @dbLabel VARCHAR(100) DECLARE @dbVer INT DECLARE @dbs TABLE ( DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, DbVerNo INT ) INSERT INTO @dbs SELECT d.[database].value('@dbname', 'varchar(100)'), d.[database].value('@dblabel', 'varchar(100)'), NULL FROM @xmlDoc.nodes('epcInfo/database') AS d([database]) UPDATE @dbs SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --SELECT * FROM @dbs -- ################################################################################### -- Shread the dbforms -- ################################################################################### DECLARE @dbForms TABLE ( DbVerNo INT NOT NULL, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, FormNumber INT NOT NULL, FormName VARCHAR(100) NOT NULL, Encoding VARCHAR(10) NOT NULL, Category CHAR(1) NOT NULL ) INSERT INTO @dbForms SELECT 0 AS DbVerNo, d.dbForms.value('data(../../@dbname)[1]', 'VARCHAR(100)') AS DBName, d.dbForms.value('data(../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, d.dbForms.value('@no', 'INT') AS FormNumber, d.dbForms.value('@name', 'VARCHAR(100)') AS FormName, d.dbForms.value('@encoding', 'VARCHAR(10)') AS Encoding, d.dbForms.value('@category', 'CHAR(1)') AS Category FROM @xmlDoc.nodes('epcInfo/database/dbForms/dbForm') AS d(dbForms) UPDATE @dbForms SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @dbForms -- ################################################################################### -- Shread the Volumes -- ################################################################################### DECLARE @volumes TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, Volume VARCHAR(100), EpkPath VARCHAR(500) --Segments XML ) INSERT INTO @volumes SELECT 0 AS DbVerNo, v.volumes.value('data(../../@dbname)[1]', 'VARCHAR(100)') AS DBName, v.volumes.value('data(../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, v.volumes.value('@volume', 'varchar(100)') AS Volume, v.volumes.value('@epkPath', 'varchar(100)') AS EpkPath --v.volumes.query('segments') AS Segments FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo') AS v(volumes) UPDATE @volumes SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @volumes -- ################################################################################### -- Get the segments for the first volume (and only the first volume. others are dups) -- ################################################################################### DECLARE @segmemts TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, SegName varchar(10) NOT NULL, Volume varchar(20) NOT NULL, EpsFile varchar(255) NULL, EpdFile varchar(255) NULL, EpiFile varchar(255) NULL, EpfFile varchar(255) NULL, JumpFile varchar(255) NULL, LookupDir varchar(255) NULL, EplFile varchar(255) NULL, EpgFile varchar(255) NULL, EpuFile varchar(255) NULL, ImageServerURL varchar(255) NULL ) INSERT INTO @segmemts SELECT 0 AS DbVerNo, s.segments.value('data(../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, s.segments.value('data(../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, s.segments.value('@name', 'varchar(10)') AS SegName, s.segments.value('data(../../@volume)[1]', 'varchar(20)') AS Volume, s.segments.query('eps').value('.', 'varchar(255)') AS Epsfile, s.segments.query('epd').value('.', 'varchar(255)') AS EpdFile, s.segments.query('epi').value('.', 'varchar(255)') AS EpiFile, s.segments.query('epf').value('.', 'varchar(255)') AS EpfFile, s.segments.query('jump').value('.', 'varchar(255)') AS JumpFile, s.segments.query('lookup').value('.', 'varchar(255)') AS LookupDir, s.segments.query('epl').value('.', 'varchar(255)') AS EplFile, s.segments.query('epg').value('.', 'varchar(255)') AS EpgFile, s.segments.query('epu').value('.', 'varchar(255)') AS EpuFile, s.segments.query('imageURL').value('.', 'varchar(255)') AS ImageServerURL FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo/segments/segment') AS s(segments) UPDATE @segmemts SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) -- The shreding puts in an empty string '' instead of NULL, so we have to fix it UPDATE @segmemts SET JumpFile = NULL WHERE JumpFile= '' UPDATE @segmemts SET EplFile = NULL WHERE EplFile= '' UPDATE @segmemts SET EpuFile = NULL WHERE EpuFile= '' --select * from @segmemts -- ################################################################################### -- Shread the filed tag attributes -- ################################################################################### DECLARE @fieldTags TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, SegName VARCHAR(10) NOT NULL, FieldTag CHAR(2) NOT NULL, Description2 NVARCHAR(200), IndexType VARCHAR(10), Category INT, FieldNumbers VARCHAR(255), ThesNumber INT, SeqNo SMALLINT NOT NULL, i INT IDENTITY(1,1) -- this is a working field to build the seqNo ) INSERT INTO @fieldTags ( DbVerNo, DbName, DbLabel, SegName, FieldTag, Description2, IndexType, Category, FieldNumbers, ThesNumber, SeqNo) SELECT 0 AS DbVerNo, f.fieldTag.value('data(../../../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, f.fieldTag.value('data(../../../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, f.fieldTag.value('data(../../@name)[1]', 'varchar(10)') AS SegName, f.fieldTag.value('@tag', 'varchar(255)') AS FieldTag, f.fieldTag.value('@desc', 'nvarchar(200)') AS Description2, f.fieldTag.value('@indexType', 'varchar(10)') AS IndexType, f.fieldTag.value('@category', 'INT') AS Category, f.fieldTag.value('@numbers', 'varchar(255)') AS FieldNumbers, f.fieldTag.value('@thesaurusNumber', 'SMALLINT') AS ThesNumber, 0 AS SeqNo FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo[1]/segments/segment/fieldTags/fieldTag') AS f(fieldTag) UPDATE @fieldTags SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) UPDATE @fieldTags SET ThesNumber = NULL WHERE ThesNumber=0 -- This will provide seqNo for the items as they where added into the table -- NOTE: While testing seems to shred the XML in order, it is not a given UPDATE @fieldTags SET SeqNo = a.i-b.aSeqNo FROM @fieldTags a JOIN ( SELECT DbVerNo, SegName, MIN(i)-1 AS aSeqNo FROM @fieldTags GROUP BY DbVerNo, SegName ) b ON a.DbVerNo=b.DbVerNo AND a.SegName=b.SegName --select * from @fieldTags -- ################################################################################### -- Shread the bibMaps -- ################################################################################### DECLARE @bibMaps TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, SegName VARCHAR(10) NOT NULL, BibField INT NULL, FieldTag VARCHAR(2) NULL, SeqNo INT NULL, i INT IDENTITY(1,1) -- this is a working field to build the seqNo ) INSERT INTO @bibMaps SELECT 0 AS DbVerNo, b.bibmaps.value('data(../../../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, b.bibmaps.value('data(../../../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, b.bibmaps.value('data(../../@name)[1]', 'varchar(10)') AS SegName, b.bibmaps.value('@field', 'INT') AS BibField, b.bibmaps.value('@tag', 'varchar(2)') AS FieldTag, 0 AS SeqNo FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo[1]/segments/segment/bibMaps/bibMap') AS b(bibmaps) UPDATE @bibMaps SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) -- This will provide seqNo for the items as they where added into the table -- NOTE: While testing seems to shred the XML in order, it is not a given UPDATE @bibMaps SET SeqNo = a.i-b.aSeqNo FROM @bibMaps a JOIN ( SELECT DbVerNo, SegName, MIN(i)-1 AS aSeqNo FROM @bibMaps GROUP BY DbVerNo, SegName ) b ON a.DbVerNo=b.DbVerNo AND a.SegName=b.SegName --select * from @bibMaps -- ################################################################################### -- Get a complete list of volumes, segments -- ################################################################################### DECLARE @VolSegments TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, SegName varchar(10) NOT NULL, Volume varchar(20) NOT NULL ) INSERT INTO @VolSegments SELECT 0 AS DbVerNo, s.segments.value('data(../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, s.segments.value('data(../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, s.segments.value('@name', 'varchar(10)') AS SegName, s.segments.value('data(../../@volume)[1]', 'varchar(20)') AS Volume FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo/segments/segment') AS s(segments) UPDATE @VolSegments SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @VolSegments -- ################################################################################### -- Shread the thesauruses -- ################################################################################### DECLARE @thesauruses TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, Volume VARCHAR(100), segName VARCHAR(100), ThesNumber INT, userControlled BIT, storeKWIC BIT, ThesFile VARCHAR(255) ) INSERT INTO @thesauruses SELECT 0 AS DbVerNo, t.thesaurus.value('data(../../../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, t.thesaurus.value('data(../../../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, t.thesaurus.value('data(../../../../@volume)[1]', 'varchar(100)') AS Volume, t.thesaurus.value('data(../../@name)[1]', 'varchar(100)') AS segName, t.thesaurus.value('@no', 'INT') AS ThesNumber, CASE (t.thesaurus.value('@userControlled', 'char(1)')) WHEN 'y' THEN 1 ELSE 0 END AS userControlled, CASE (t.thesaurus.value('@storeKWIC', 'char(1)')) WHEN 'y' THEN 1 ELSE 0 END AS storeKWIC, t.thesaurus.value('.', 'varchar(255)') AS ThesFile FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo/segments/segment/thesauruses/thesaurus') AS t(thesaurus) UPDATE @thesauruses SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) --select * from @thesauruses -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- At this point, we have shreaded all the XML into tables and can do our updates -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ BEGIN TRY BEGIN TRANSACTION -- ################################################################################### -- Process the dbforms -- ################################################################################### -- =============================================================== -- 1) Add any new dbForms to the database -- =============================================================== INSERT INTO dbo.DbForm (DbVerNo, FormNumber, FormName, Encoding, Category ) SELECT w.DbVerNo, w.FormNumber, w.FormName, w.Encoding, w.Category FROM @dbForms w LEFT JOIN dbo.DbForm e ON w.DbVerNo=e.DbVerNo AND w.FormNumber=e.FormNumber WHERE e.DbVerNo IS NULL SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing dbForms that are no longer needed -- =============================================================== DELETE dbo.DbForm FROM dbo.DbForm AS e LEFT JOIN @dbForms AS w ON w.DbVerNo=e.DbVerNo AND w.FormNumber=e.FormNumber WHERE w.FormNumber IS NULL AND e.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 3) Update any dbForms that have changed -- =============================================================== UPDATE dbo.DbForm SET FormName = w.FormName, Encoding = w.Encoding, Category = w.Category FROM dbo.DbForm AS e INNER JOIN @dbForms AS w ON w.DbVerNo=e.DbVerNo AND w.FormNumber=e.FormNumber WHERE e.FormName <> w.FormName OR e.Encoding <> w.Encoding OR e.Category <> w.Category SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- Process the Volumes -- ################################################################################### -- =============================================================== -- 1) Add any new volumes to the database -- =============================================================== INSERT INTO dbo.DbVolume ( DbVerNo, Volume, EpkPath, LastUpdateDate ) SELECT w.DbVerNo, w.Volume, w.EpkPath, @lastModifiedDate FROM @volumes w LEFT JOIN dbo.DbVolume e ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume WHERE e.Volume IS NULL SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing volumes that are no longer needed -- =============================================================== DELETE dbo.DbVolume FROM dbo.DbVolume AS e LEFT JOIN @volumes AS w ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume WHERE w.Volume IS NULL AND e.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 3) Update any volumes that have changed -- =============================================================== UPDATE dbo.DbVolume SET EpkPath = w.EpkPath, LastUpdateDate = @lastModifiedDate FROM dbo.DbVolume AS e INNER JOIN @volumes AS w ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume WHERE e.EpkPath <> w.EpkPath SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- Process the Segments -- ################################################################################### -- ================================================= -- 1) Add any new segments to the database -- ================================================= INSERT INTO dbo.DbSegFileInfo ( DbVerNo, SegName, Volume, LookupDir, JumpFile, EpgFile, EpdFile, EpiFile, EpuFile, EplFile, EpsFile, EpfFile, ImageServerURL ) SELECT w.DbVerNo, w.SegName, w.Volume, w.LookupDir, w.JumpFile, w.EpgFile, w.EpdFile, w.EpiFile, w.EpuFile, w.EplFile, w.EpsFile, w.EpfFile, w.ImageServerURL FROM @segmemts AS w LEFT JOIN dbo.DbSegFileInfo AS e ON e.DbVerNo = w.DbVerNo AND e.SegName = w.SegName AND e.Volume = w.Volume WHERE e.DbVerNo IS NULL AND w.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing segments that are no longer needed -- =============================================================== DELETE dbo.DbSegFileInfo --SELECT e.DbVerNo, e.SegName, e.Volume, w.DbVerNo, w.SegName, w.Volume FROM dbo.DbSegFileInfo AS e INNER JOIN @segmemts AS f ON e.DbVerNo = f.DbVerNo AND e.Volume = f.Volume LEFT JOIN @segmemts AS w ON e.DbVerNo = w.DbVerNo AND e.Volume = w.Volume AND e.SegName = w.SegName WHERE w.DbVerNo IS NULL AND e.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ================================================= -- 3) Update any segments that have changed -- ================================================= UPDATE dbo.DbSegFileInfo SET LookupDir = w.LookupDir, JumpFile = w.JumpFile, EpgFile = w.EpgFile, EpdFile = w.EpdFile, EpiFile = w.EpiFile, EpuFile = w.EpuFile, EplFile = w.EplFile, EpsFile = w.EpsFile, EpfFile = w.EpfFile, ImageServerURL = w.ImageServerURL FROM dbo.DbSegFileInfo AS e INNER JOIN @segmemts AS w ON e.DbVerNo =w.DbVerNo AND e.SegName =w.SegName AND e.Volume =w.Volume WHERE ( e.LookupDir <> w.LookupDir OR e.EpgFile <> w.EpgFile OR e.EpdFile <> w.EpdFile OR e.EpiFile <> w.EpiFile OR e.EpsFile <> w.EpsFile OR e.EpfFile <> w.EpfFile OR e.ImageServerURL <> w.ImageServerURL OR ( ((e.EplFile IS NULL) AND (w.EplFile IS NOT NULL)) OR ((e.EplFile IS NOT NULL) AND (w.EplFile IS NULL)) OR (e.EplFile <> w.EplFile) ) OR ( ((e.EpuFile IS NULL) AND (w.EpuFile IS NOT NULL)) OR ((e.EpuFile IS NOT NULL) AND (w.EpuFile IS NULL)) OR (e.EpuFile <> w.EpuFile) ) OR ( ((e.JumpFile IS NULL) AND (w.JumpFile IS NOT NULL)) OR ((e.JumpFile IS NOT NULL) AND (w.JumpFile IS NULL)) OR (e.JumpFile <> w.JumpFile) ) ) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- Process the thesaurus -- ################################################################################### -- ================================================= -- 1) Add any new thesaurus to the database -- ================================================= INSERT INTO dbo.DbThesaurus (DbVerNo, SegName, Volume, ThesNumber, ThesFile, UserControlled, StoreKWIC) SELECT w.DbVerNo, w.segName, w.Volume, w.ThesNumber, w.ThesFile, w.userControlled, w.storeKWIC FROM @thesauruses AS w LEFT JOIN dbo.DbThesaurus AS e ON e.DbVerNo = w.DbVerNo AND e.SegName = w.segName AND e.Volume = w.Volume AND e.ThesNumber = w.ThesNumber WHERE e.DbVerNo IS NULL AND w.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing thesaurus that are no longer needed -- =============================================================== DELETE dbo.DbThesaurus --SELECT e.DbVerNo, e.SegName, e.Volume, e.ThesNumber, -- f.DbVerNo, f.SegName, f.Volume FROM dbo.DbThesaurus AS e -- Because thesaurus entires are kept at the volume,segment level we -- have to make sure we work against the entire list of vol/Seg pairs INNER JOIN @VolSegments AS f ON e.DbVerNo = f.DbVerNo AND e.Volume = f.Volume AND e.SegName = f.SegName LEFT JOIN @thesauruses AS w ON e.DbVerNo = w.DbVerNo AND e.Volume = w.Volume AND e.SegName = w.segName AND e.ThesNumber = w.ThesNumber WHERE w.DbVerNo IS NULL SET @updateCnt = @updateCnt+@@ROWCOUNT -- ================================================= -- 3) Update any thesaurus that have changed -- ================================================= UPDATE dbo.DbThesaurus SET ThesFile = w.ThesFile, UserControlled = w.userControlled, StoreKWIC = w.storeKWIC FROM dbo.DbThesaurus AS e INNER JOIN @thesauruses AS w ON e.DbVerNo =w.DbVerNo AND e.SegName =w.segName AND e.Volume =w.Volume AND e.ThesNumber=w.ThesNumber WHERE (e.ThesFile <> w.ThesFile OR e.UserControlled <> w.userControlled OR e.StoreKWIC <> w.storeKWIC ) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- Process the field tags -- ################################################################################### -- ================================================= -- 1) Add any new fieldTags to the database -- ================================================= INSERT INTO dbo.DbFieldTag ( DbVerNo, SegName, FieldTag, Description2, IndexType, Category, FieldNumbers, ThesNumber, SeqNo) SELECT w.DbVerNo, w.SegName, w.FieldTag, w.Description2, w.IndexType, w.Category, w.FieldNumbers, w.ThesNumber, w.SeqNo FROM @fieldTags AS w LEFT JOIN dbo.DbFieldTag AS e ON e.DbVerNo=w.DbVerNo AND e.SegName=w.SegName AND e.FieldTag=w.FieldTag WHERE e.DbVerNo IS NULL AND w.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing FieldTag that are no longer needed -- =============================================================== DELETE dbo.DbFieldTag FROM dbo.DbFieldTag AS e LEFT JOIN @fieldTags AS w ON e.DbVerNo=w.DbVerNo AND e.SegName=w.SegName AND e.FieldTag=w.FieldTag WHERE w.DbVerNo IS NULL AND e.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ================================================= -- 3) Update any FieldTags that have changed -- ================================================= UPDATE dbo.DbFieldTag SET Description2 = w.Description2, IndexType = w.IndexType, Category = w.Category, FieldNumbers = w.FieldNumbers, ThesNumber = w.ThesNumber, SeqNo = w.SeqNo FROM dbo.DbFieldTag AS e INNER JOIN @fieldTags AS w ON e.DbVerNo = w.DbVerNo AND e.SegName = w.SegName AND e.FieldTag = w.FieldTag WHERE (w.DbVerNo IN (SELECT DbVerNo FROM @dbs)) AND ( e.Description2 <> w.Description2 OR e.IndexType <> w.IndexType OR e.Category <> w.Category OR e.FieldNumbers <> w.FieldNumbers OR e.ThesNumber <> w.ThesNumber OR e.SeqNo <> w.SeqNo ) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- Process the bibMaps -- ################################################################################### -- ================================================= -- 1) Add any new bibMaps to the database -- ================================================= INSERT INTO dbo.DbBibMap ( DbVerNo, SegName, BibField, FieldTag, SeqNo) SELECT w.DbVerNo, w.SegName, w.BibField, w.FieldTag, w.SeqNo FROM @bibMaps AS w LEFT JOIN dbo.DbBibMap AS e ON e.DbVerNo=w.DbVerNo AND e.SegName=w.SegName AND e.BibField = w.BibField WHERE e.DbVerNo IS NULL AND w.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- =============================================================== -- 2) Remove any existing bibMaps that are no longer needed -- =============================================================== DELETE dbo.DbBibMap FROM dbo.DbBibMap AS e LEFT JOIN @bibMaps AS w ON e.DbVerNo=w.DbVerNo AND e.SegName=w.SegName AND e.BibField = w.BibField WHERE w.DbVerNo IS NULL AND e.DbVerNo IN (SELECT DbVerNo FROM @dbs) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ================================================= -- 3) Update any bibMaps that have changed -- ================================================= UPDATE dbo.DbBibMap SET FieldTag = w.FieldTag, SeqNo = w.SeqNo FROM dbo.DbBibMap AS e INNER JOIN @bibMaps AS w ON e.DbVerNo = w.DbVerNo AND e.SegName = w.SegName AND e.BibField = w.BibField WHERE (w.DbVerNo IN (SELECT DbVerNo FROM @dbs)) AND ( e.FieldTag <> w.FieldTag OR e.SeqNo <> w.SeqNo ) SET @updateCnt = @updateCnt+@@ROWCOUNT -- ################################################################################### -- If there where changes, then we need to issue a notifyRequest -- ################################################################################### IF (@updateCnt > 0) BEGIN UPDATE dbo.DbVolume SET LastUpdateDate = @lastModifiedDate FROM dbo.DbVolume AS e INNER JOIN @volumes AS w ON w.DbVerNo=e.DbVerNo AND w.Volume=e.Volume AND e.EpkPath = w.EpkPath WHERE e.LastUpdateDate <> @lastModifiedDate UPDATE dbo.DbList SET LastUpdateDate = @lastModifiedDate WHERE DbName=@DbGroupName AND DbLabel=@DbGroupLabel --PRINT 'Call NotifyChanges_70: Update Count='+CONVERT(varchar(100), @updateCnt) EXEC EPC_NotifyChanges_70 @DbGroupName, @DbGroupLabel END -- ################################################################################### -- If we got this far, we are good and should commit the transaction -- ################################################################################### COMMIT TRANSACTION END TRY BEGIN CATCH -- Get the error info before any statements are executed SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- If there is an active transaction, roll it back IF (XACT_STATE()) <> 0 BEGIN ROLLBACK TRANSACTION; END; -- Raise the error to the caller RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetContentFilterList_181] AS SELECT [dbo].[ContentFilterList].[ContentFilterNo] ,[dbo].[ContentFilterList].[ContentFilterListID] ,[dbo].[ContentFilterList].[ContentFilterListDesc] ,[dbo].[ContentFilterList].[ContentFilterType] ,[dbo].[ContentFilterList].[CreateDate] ,[dbo].[ContentFilterList].[LastUpdatedDate] FROM [dbo].[ContentFilterList] Order by [dbo].[ContentFilterList].[ContentFilterListID]
CREATE PROCEDURE [dbo].[EAUI_GetSingleDisciplineDatabaseListBrowseByDisplayName_131] ( @DisplayName NVARCHAR(100), @DisciplineNo INT ) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN -- since we don't have a foreign key to the DbVerNo, we need to figure out -- what the "highest" label is for a given DbName and use that DbLabel -- so that we don't get duplicates ;WITH DistinctDbNameByHighestDbLabel ( DbName, DbLabel ) AS ( SELECT dl.DbName , MIN(CASE WHEN [dl].[DbLabel] = 'live' THEN '1' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'liveQC' THEN '2' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuild' THEN '3' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuildQC' THEN '4' + [dl].[DbLabel] ELSE '5' + [dl].[DbLabel] END) AS DbLabel FROM [dbo].[DbList] dl WHERE [dl].[SourceType] IN ( 'D', 'C' ) GROUP BY dl.DbName ) SELECT dl.DbName , [dl].[DisplayName] + ' (' + dl.DbName + ')' AS DisplayName, CASE ISNULL(dd.DbName, '') WHEN '' THEN 0 ELSE 1 END AS Selected FROM [dbo].[DbList] dl JOIN DistinctDbNameByHighestDbLabel ddbn ON dl.DbName = ddbn.DbName AND dl.DbLabel = SUBSTRING(ddbn.DbLabel,2,LEN(ddbn.DbLabel) - 1) LEFT OUTER JOIN [dbo].[DbDiscipline] dd ON dd.DbName = dl.DbName AND [dd].[DisciplineNo] = @DisciplineNo WHERE [dl].[SourceType] IN ( 'D', 'C' ) AND [dl].[DbType] = 1 AND [dl].[DisplayName] LIKE @DisplayName + '%' ORDER BY DisplayName END END
CREATE PROCEDURE [dbo].[EAUI_AttachDbInterfaceBrowseOptions_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @OptionList varchar(2000) ) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[DbInterfaceBrowseOption].[SeqNo])+1 FROM [dbo].[DbInterfaceBrowseOption] WHERE [dbo].[DbInterfaceBrowseOption].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceBrowseOption].[IntfScreenNo]=@ScreenNo SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) BEGIN TRANSACTION INSERT INTO [dbo].[DbInterfaceBrowseOption] ([dbo].[DbInterfaceBrowseOption].[DbVerNo], [dbo].[DbInterfaceBrowseOption].[IntfScreenNo], [dbo].[DbInterfaceBrowseOption].[BrowseOptionNo], [dbo].[DbInterfaceBrowseOption].[Show], [dbo].[DbInterfaceBrowseOption].[SeqNo]) SELECT @DbVerNo, @ScreenNo, CONVERT(int,a.Item), 1, a.Num FROM dbo.EAIF_GetEnumValueTable_70(@OptionList,'+',@NextSeqNo,1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@OptionList,1,1024),'+',',') IF DATALENGTH(@OptionList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@OptionList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'BrowseOptions','Add DBInterface Browse Options', @DbName,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetCustomerParam_100](@CustId varchar(10), @Category varchar(20)) AS BEGIN IF @Category='' OR @Category is null SET @Category='%' DECLARE @TargetNo int DECLARE @CustType Char(1) SELECT @TargetNo=[dbo].[Customer].[CustNo], @CustType=[dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustId SELECT l.ParamName, l.ParamType, ISNULL(ISNULL(ISNULL(v.ParamValue, cpcrd.DefValue),l.DefValue),'') AS ParamValue FROM [dbo].[CustomParamList] l LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] cpcrd ON cpcrd.ParamNo =l.ParamNo AND cpcrd.CustType = @CustType LEFT OUTER JOIN [dbo].[CustomParamScalarValues] v ON l.ParamNo = v.ParamNo AND v.TargetNo=@TargetNo WHERE l.Category like @Category AND l.ParamLevel = 'C' END
/*Rephrase begin/rollback/commit transaction clauses*/ CREATE PROCEDURE [dbo].[EAIP_AddProfileWithDatabases_70]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @ProfPwd nvarchar(10), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @STMode char(1), @DbLabel varchar(10), @ProfName nvarchar(100), @DefLangCode varchar(10)) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_AddProfile_70] @CustID, @GroupID, @ProfID, @ProfPwd, @InterfaceID,@Version,@MarketID,@STMode,@DbLabel,@ProfName,@DefLangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END else commit transaction begin transaction EXEC [dbo].[EAIP_AddProfileDatabases_70] @CustID, @GroupID, @ProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END else COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitle_70] (@ColNo int, @TitleNo as int) AS BEGIN SELECT l.ColNo, m.TitleNo, c.ColName, m.Title, l.Subscribe, y.MsgText as YesMsg, n.MsgText as NoMsg, l.Notes, l.SummaryHoldings, l.CallNumber, m.ISSN FROM [dbo].[LocalTitle] l JOIN [dbo].[MasterTitle] m on l.TitleNo = m.TitleNo JOIN [dbo].[Collection] c on l.ColNo = c.ColNo LEFT OUTER JOIN [dbo].[YesMessage] y on l.YesMsgNo = y.YesMsgNo LEFT OUTER JOIN [dbo].[NoMessage] n on l.NoMsgNo = n.NoMsgNo WHERE l.ColNo = @ColNo and l.TitleNo = @TitleNo and c.IsDeleted = 0 END
CREATE PROCEDURE EATL_UpdateGlobalDocType_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DocTypeID VARCHAR(10) ,Caption NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #Objects ( DocTypeID ,Caption ,MouseOverText ) SELECT m.c.value('(./DocTypeId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DocTypeID VARCHAR(10) ,@Caption NVARCHAR(255) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DocTypeID = DocTypeID ,@Caption = Caption ,@MouseOverText = MouseOverText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalDocType_77] @UserID ,@UserIP ,@DocTypeID ,@Caption ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
--sql content merged from file: \StoredProcedures\EPCS_GetDbSources_78.sql CREATE PROCEDURE [dbo].[EPCS_GetDbSources_78] (@DbName varchar(10)) AS BEGIN DECLARE @DbVerNo int --Get DbVerNo SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName and [dbo].[DbList].[DbLabel] = 'live' SELECT dl.DbName AS ShortDbName, tt.TargetType, dst.SLCollID, tt.Category FROM [dbo].[DbSourceTarget] dst INNER JOIN [dbo].[DbList] dl ON dst.SourceDbNo = dl.DbVerNo INNER JOIN [dbo].[DbSourceTargetTypeList] tt ON tt.TargetType = dst.TargetType WHERE dst.TargetDbNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetGroupList_70](@CustID varchar(10)) AS BEGIN SELECT [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupName] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustID ORDER BY [dbo].[UserGroup].[GroupName] END
CREATE PROCEDURE [dbo].[EAIP_UpdateMDbLimiter_91] ( @LimiterNo int, @LimiterId varchar(20), @DbLabel varchar(10), @ControlType smallint, @LogicalOpCode varchar(3), @SearchString varchar(4000), @AutoAdd bit, @Description nvarchar(100), @EnableQueryMask BIT, @QueryMaskId varchar(20), @ControlTemplate nvarchar(MAX), @UserId NVARCHAR(20) = NULL, @UserIp VARCHAR(15) = NULL) AS BEGIN Begin Try Begin Transaction UPDATE [dbo].[MDbLimiterList] SET [dbo].[MDbLimiterList].[DbLabel] = @DbLabel, [dbo].[MDbLimiterList].[ControlType] = @ControlType, [dbo].[MDbLimiterList].[LogicalOpCode] = @LogicalOpCode, [dbo].[MDbLimiterList].[SearchString]=@SearchString, [dbo].[MDbLimiterList].[AutoAdd] = @AutoAdd, [dbo].[MDbLimiterList].[Description] = @Description, [dbo].[MDbLimiterList].[EnableQueryMask] = @EnableQueryMask, [dbo].[MDbLimiterList].[QueryMaskId] = @QueryMaskId, [dbo].[MDbLimiterList].[ControlTemplate] = @ControlTemplate WHERE [dbo].[MDbLimiterList].[LimiterNo] = @LimiterNo IF @AutoAdd = 1 BEGIN DELETE [dbo].[InterfaceMDbLimiterList] WHERE [dbo].[InterfaceMDbLimiterList].[LimiterNo] = @LimiterNo AND [dbo].[InterfaceMDbLimiterList].[IntfScreenNo] IN (Select [is].[IntfScreenNo] from [dbo].[InterfaceScreen] [is] where [is].IntfScreenNo=[dbo].[InterfaceMDbLimiterList].[IntfScreenNo] and [is].[AutoAddMDbLimiter]=1) END Commit TRANSACTION IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDBLimiters', 'Update Limiter', @LimiterId, @Description END End Try Begin catch Rollback Transaction End CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateSiteParamScalarValue_100](@UserID nvarchar(20), @UserIP varchar(15),@SiteID varchar(10), @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN DECLARE @CustLogName nvarchar(50) DECLARE @ParamName varchar(100) SELECT @CustLogName=dbo.EAIF_GetCustName_70(@SiteID), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'SiteGroup','Modify Site Scalar Parameter',@CustLogName,@ParamName,@ParamValue EXEC [dbo].[EAIP_UpdateSiteParamScalarValue_100] @SiteID, @ParamNo, @ParamValue END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseListBrowseByDisplayName_Paged_203]( @DbLabel varchar(10) ,@DisplayName nvarchar(200) ,@SourceTypeList varchar(10) ,@pageIndex INT = 0 ,@pagSize INT = 10 ) AS BEGIN IF @DbLabel = 'custom' SELECT distinct DbVerNo, DisplayName, DbName, DbLabel, DbType, ContentType, SourceType, SourceName, SubsetDbCount FROM ( SELECT distinct ROW_NUMBER() OVER(ORDER BY [DisplayName]) AS RowNr, l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a ON l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos ON a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel not in ('live', 'liveQC', 'rebuild', 'rebuildQC') AND l.DisplayName Like @DisplayName + '%' ) dbl WHERE RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize ELSE SELECT DbVerNo, DisplayName, DbName, DbLabel, DbType, ContentType, SourceType, SourceName, SubsetDbCount FROM ( SELECT distinct ROW_NUMBER() OVER(ORDER BY [DisplayName]) AS RowNr, l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, t.Description as DbType, c.Description as ContentType, l.SourceType, SourceName=case when l.SourceType='C' and l.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end, Case when dbs.PhysDbVerNo is null then 0 Else 1 end as SubsetDbCount FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a on l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos on a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs on l.DbVerNo=dbs.PhysDbVerNo WHERE l.DbLabel = @DbLabel AND l.DisplayName Like @DisplayName + '%' )dbl WHERE RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize END
/****************************************************************************/ /** corrected setting for Show and DefValue Def##777 *****/ CREATE PROCEDURE [dbo].[EAIP_UpdateDbInterfaceLimiterOrderAutoAdd_76] ( @DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterList varchar(8000), @OrderList varchar(8000)) AS BEGIN IF @GroupNo=-1 SELECT @GroupNo=null -- limiters that are not in DbInterfaceLimiters have to be added first INSERT INTO [dbo].[DbInterfaceLimiter] ([dil].[DbVerNo], [dil].[IntfScreenNo], [dil].[LimiterNo], [dil].[Show], [dil].[DefValue], [dil].[GroupNo], [dil].[SeqNo]) SELECT @DbVerNo, @ScreenNo, [a].[Item], ins.LimiterShow, dbl.DefValue, @GroupNo, 0 FROM dbo.EAIF_GetItemTable_70(@LimiterList,'+')a LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON a.Item = dil.LimiterNo AND [dil].[DbVerNo]=@DbVerNo AND [dil].[IntfScreenNo]=@ScreenNo AND ([dil].[GroupNo] is null OR [dil].[GroupNo]=@GroupNo) INNER JOIN [dbo].[DbLimiter] dbl ON dbl.LimiterNo = a.Item CROSS JOIN [dbo].[InterfaceScreen] ins WHERE dbl.DbVerNo=@DbVerNo AND ins.IntfScreenNo=@ScreenNo AND dil.LimiterNo is null IF @@ERROR <> 0 RETURN EXEC [dbo].[EAIP_UpdateDbInterfaceLimiterOrderNoAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo, @LimiterList, @OrderList END /****************************************************************************************/ /** rempoved sp_xml_preparedocument *****/
CREATE PROCEDURE [dbo].[EAIP_GetProfileParamByCategory_70](@Category varchar(50), @ProfNo int) AS BEGIN DECLARE @InterfaceId varchar(10) DECLARE @Version varchar(10) DECLARE @MarketId varchar(20) DECLARE @STMode char(1) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT lst.ParamName as 'ExportName', ISNULL(convert(varchar(4000),val.ParamValue), ISNULL(convert(varchar(2000),dfl.DefValue), convert(varchar(2000),lst.DefValue))) as 'ParamValue', lst.ParamType as 'DataType' FROM [dbo].[CustomParamCategory] ctg INNER JOIN [dbo].[CustomParamList] lst ON ctg.Category=@Category AND ctg.ParamNo=lst.ParamNo LEFT OUTER JOIN [dbo].[CustomParamDefaults] dfl ON lst.ParamNo=dfl.ParamNo AND dfl.InterfaceID=@InterfaceID AND dfl.Version=@Version AND dfl.MarketID=@MarketId AND dfl.STMode=@STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON lst.ParamNo=val.ParamNo AND val.TargetNo=@ProfNo AND val.ParamLevel='P' INNER JOIN [dbo].[InterfaceParamList] int ON lst.ParamNo=int.ParamNo AND int.InterfaceID=@InterfaceID AND int.Version=@Version END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseAuthorityOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @AuthDbVerNoList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN UPDATE [dbo].[DbAuthority] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbAuthority] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@AuthDbVerNoList, @SeqNoList,'+') b ON a.AuthDbVerNo=convert(int,b.Item) WHERE a.MainDbVerNo = @DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Reorder Authorities' END
CREATE FUNCTION [dbo].[EAIF_GetDbVerNo_70](@DbName varchar(10), @DbLabel varchar(10)) RETURNS int AS BEGIN RETURN ( SELECT [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel ) END
CREATE PROCEDURE [dbo].[EAUI_DeteleDbInterfaceLimiter_76](@UserID nvarchar(20), @UserIP varchar(20), @DbVerNo int, @LimiterNo int, @ScreenNo int, @GroupNo int) AS BEGIN DECLARE @LimiterId varchar(2) DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) DECLARE @Interface varchar(10) DECLARE @Version varchar(10) DECLARE @ScreenDescr nvarchar(255) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID], @Version =[dbo].[InterfaceScreen].[Version], @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo BEGIN TRANSACTION DELETE FROM [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ( [dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo]=@GroupNo ) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Delete Limiter','Limiter ID:',@LimiterId, @Interface, @Version, @ScreenDescr COMMIT TRANSACTION END
Create Procedure DEPLOY_US21106 as Begin /* US21106 - Explora (SCRIPT): Create Explora Educator's Edition Profile */ /* Insert records into Backup_Inserted_Profiles_For_Explora_20150605 table the Proflies associated with InterfaceID ehed prior to the insert */ If not exists (select 1 from dbo.InterfaceVersion where InterfaceID='ehed' and Version='live') Begin Raiserror('Interface/Version ehed/live does not exist. Interface needs to exists prior to running this script',16,-1) Return End IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Backup_Inserted_Profiles_For_Explora_20150605]') AND type ='U') BEGIN CREATE TABLE [dbo].[Backup_Inserted_Profiles_For_Explora_20150605] ( [CustID] [varchar](10) NOT NULL, [GroupID] [varchar](10) NOT NULL, [ProfID] [varchar](10) NOT NULL, [MarketID] [varchar](20) NOT NULL, [ProfName] [nvarchar](100) NOT NULL, [Inserted] [bit] Default 0, CONSTRAINT [PK_Backup_Inserted_Profiles_For_Explora_20150605] PRIMARY KEY NONCLUSTERED ([CustID], [GroupID], [ProfID]) ) Insert Backup_Inserted_Profiles_For_Explora_20150605 SELECT DISTINCT p1.CustID, p1.GroupID, 'ehed' AS ProfID, c.MarketID, 'Explora Educator' + char(39) + 's Edition' AS ProfName, 0 FROM dbo.Profile p1 with (NOLOCK) JOIN dbo.Customer c with (NOLOCK) ON p1.CustID=c.CustID AND CustType in ('S', 'T') LEFT OUTER JOIN dbo.Profile p2 with (NOLOCK) ON p1.CustID=p2.CustID AND p1.GroupID = p2.GroupID AND p2.InterfaceID='ehed' join dbo.ProfDatabase pdb with (NOLOCK) on p1.ProfNo=pdb.ProfNo and pdb.AccessEndDate>=GetDate() join dbo.DbList dbl with (NOLOCK) on pdb.DbVerNo=dbl.DbVerNo and DbName in ('eric', 'trh', 'tfh', 'ehh') WHERE p1.InterfaceID IN ('ehcs', 'ehpl', 'ehk5', 'src_ic') AND p2.ProfNo IS NULL order by ProfID PRINT 'Created backup table for Profile table successfully. Inserted total ' + CONVERT(VARCHAR(10), @@ROWCOUNT) + ' records into it...' DECLARE @CustID VARCHAR(10) DECLARE @GroupID VARCHAR(10) DECLARE @MarketID VARCHAR(20) DECLARE @ProfID VARCHAR(10) DECLARE @ProfName NVARCHAR(100) Declare @ProfNo int DECLARE NewProfiles CURSOR FOR SELECT CustID, GroupID, MarketID, ProfID, ProfName From Backup_Inserted_Profiles_For_Explora_20150605 Where Inserted=0 OPEN NewProfiles FETCH NEXT FROM NewProfiles INTO @CustID, @GroupID, @MarketID, @ProfID, @ProfName WHILE (@@FETCH_STATUS <> -1) BEGIN Begin Try Begin Transaction /* Insert dbo.Profile table ... */ EXEC EAUI_AddProfile_70 'sql script', '', @CustID, @GroupID, @ProfID, '', @ProfID, 'live', @MarketID, 'live', @ProfName, 'en' Select @ProfNo = ProfNo from dbo.Profile where CustID=@CustID and GroupID=@GroupID and ProfID=@ProfID /* Set Enable and SelDefault to "1" ... */ Update dbo.ProfDatabase set Enable=1, SelDefault=1 from dbo.ProfDatabase pdb join dbo.DbList dbl on pdb.DbVerNo=dbl.DbVerNo and dbl.DbName in ('eric', 'trh', 'tfh', 'ehh') where pdb.ProfNo=@ProfNo Update Backup_Inserted_Profiles_For_Explora_20150605 set Inserted=1 where CustID=@CustID and GroupID=@GroupID and ProfID=@ProfID Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION END CATCH FETCH NEXT FROM NewProfiles INTO @CustID, @GroupID, @MarketID, @ProfID, @ProfName END CLOSE NewProfiles DEALLOCATE NewProfiles PRINT 'Inserted Profile table successfully...' PRINT 'Updated ProfDatabase table set Enable=1, SelDefault=1 for Profiles inserted through the script' END ELSE BEGIN PRINT 'Backup/update script has already been run' END End
CREATE PROCEDURE [dbo].[EAIP_GetContentFilterListByID_181](@ContentFilterListId varchar(25)) AS Declare @Id varchar(25) Set @Id=LTRIM(RTRIM(@ContentFilterListId)) SELECT [dbo].[ContentFilterList].[ContentFilterNo] ,[dbo].[ContentFilterList].[ContentFilterListID] ,[dbo].[ContentFilterList].[ContentFilterListDesc] ,[dbo].[ContentFilterList].[ContentFilterType] ,[dbo].[ContentFilterList].[CreateDate] ,[dbo].[ContentFilterList].[LastUpdatedDate] FROM [dbo].[ContentFilterList] WHERE [dbo].[ContentFilterList].[ContentFilterListID]=@Id
CREATE PROCEDURE [dbo].[EAUI_GetSiteCustomLinkCollections_70](@CustID varchar(10), @Category varchar(50)) AS BEGIN SELECT [dbo].[Collection].[CustID], [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID] = @CustID AND [dbo].[Collection].[Hidden]=0 AND [dbo].[Collection].[IsDeleted] = 0 UNION ALL SELECT [a].[CustID], [a].[ColNo], [a].[ColID], [a].[ColName] FROM [dbo].[Collection] a INNER JOIN [dbo].[CustomerGroup] b ON a.CustID = b.ParentID WHERE a.IsDeleted = 0 AND b.ChildID=@CustID AND [a].[Hidden]=0 AND b.ParentID <> @CustID ORDER by [dbo].[Collection].[ColName] END
CREATE PROCEDURE [dbo].[EAUI_AttachDbInterfaceSearchOptions_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @OptionList varchar(2000) ) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[DbInterfaceSearchOption].[SeqNo])+1 FROM [dbo].[DbInterfaceSearchOption] WHERE [dbo].[DbInterfaceSearchOption].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceSearchOption].[IntfScreenNo]=@ScreenNo SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) BEGIN TRANSACTION INSERT INTO [dbo].[DbInterfaceSearchOption] ([dbo].[DbInterfaceSearchOption].[DbVerNo], [dbo].[DbInterfaceSearchOption].[IntfScreenNo], [dbo].[DbInterfaceSearchOption].[SearchOptionNo], [dbo].[DbInterfaceSearchOption].[Show], [dbo].[DbInterfaceSearchOption].[SeqNo]) SELECT @DbVerNo, @ScreenNo, CONVERT(int,a.Item), 1, a.Num FROM dbo.EAIF_GetEnumValueTable_70(@OptionList,'+',@NextSeqNo,1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@OptionList,1,1024),'+',',') IF DATALENGTH(@OptionList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@OptionList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'SearchOptions','Add DBInterface Search Options', @DbName,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetCustomerResources_100] -- Add the parameters for the stored procedure here @CustId varchar(10) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; DECLARE @CurrDate datetime SET @CurrDate = GETDATE() SELECT p.GroupID [GroupID] ,p.ProfID [ProfID] ,p.InterfaceID [InterfaceID] ,p.Version [InterfaceVersion] ,dl.DbName [DBName] ,dl.DisplayName [DBDisplayName] FROM [dbo].[Profile] p JOIN [dbo].[ProfDatabase] pd ON p.ProfNo = pd.ProfNo JOIN [dbo].[DbList] dl ON pd.DbVerNo = dl.DbVerNo JOIN [dbo].[CustomParamList] cpl ON cpl.ParamName = 'persistentLinkProfile' LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON p.ProfNo = cpsv.TargetNo AND cpsv.ParamNo = cpl.ParamNo LEFT OUTER JOIN [dbo].[CustomParamDefaults] cpd ON p.InterfaceID = cpd.InterfaceID AND p.Version = cpd.Version AND p.MarketID = cpd.MarketID AND p.STMode = cpd.STMode AND cpd.ParamNo = cpl.ParamNo WHERE (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= @CurrDate) AND pd.Enable = 1 AND dl.SourceType = 'D' AND (cpsv.ParamValue = '1' OR (cpsv.ParamValue IS NULL AND cpd.DefValue = '1')) AND p.CustID = @CustId ORDER BY p.SeqNo; END
CREATE PROCEDURE dbo.EAIP_AddSystemLinkUpdateRequest_171 ( @SystemLinkID VARCHAR(255), @ChangedSourceXml NVARCHAR(MAX), @UserID VARCHAR(10), @UserIP VARCHAR(25) ) AS BEGIN -- Operation to add changed system links into a status/queue table (SystemLinkUpdateStatus) -- These items will then be processed asynchronously INSERT INTO dbo.SystemLinkUpdateStatus ( [dbo].[SystemLinkUpdateStatus].[SystemLinkID], [dbo].[SystemLinkUpdateStatus].[ChangedSourceXml], [dbo].[SystemLinkUpdateStatus].[RequestTime], [dbo].[SystemLinkUpdateStatus].[UpdateStatus], [dbo].[SystemLinkUpdateStatus].[UserID], [dbo].[SystemLinkUpdateStatus].[UserIP]) VALUES ( @SystemLinkID, @ChangedSourceXml, GETDATE(), 'S', @UserID, @UserIP ); END;
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitleDate_70](@ColNo int, @TitleNo as int) AS BEGIN SELECT [dbo].[LocalDate].[FromDate], [dbo].[LocalDate].[ToDate] FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo ORDER BY [dbo].[LocalDate].[FromDate] DESC, [dbo].[LocalDate].[ToDate] DESC END
CREATE Procedure [dbo].[EATL_UpdateGlobalMultiDbSTS_90] @UserID nvarchar(20), @UserIP varchar(50), @MultiDbSTSID varchar(10), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10) as BEGIN DECLARE @LogFlag varchar(100) if not exists (select 1 from [dbo].[MultiDbSTSList] where [dbo].[MultiDbSTSList].[MultiDBSTSID]=@MultiDbSTSID) Return BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[MultiDbSTSCaption] WHERE [dbo].[MultiDbSTSCaption].[MultiDBSTSID]=@MultiDbSTSID AND [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode ) BEGIN UPDATE [dbo].[MultiDbSTSCaption] SET [dbo].[MultiDbSTSCaption].[Caption]=@Caption,[dbo].[MultiDbSTSCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[MultiDbSTSCaption].[MultiDBSTSID]=@MultiDbSTSID AND [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode SET @LogFlag ='Translate(Update) MultiDbSTS Caption' END ELSE BEGIN INSERT INTO [dbo].[MultiDbSTSCaption] ([dbo].[MultiDbSTSCaption].[MultiDBSTSID],[dbo].[MultiDbSTSCaption].[LangCode],[dbo].[MultiDbSTSCaption].[Caption],[dbo].[MultiDbSTSCaption].[MouseOverText]) VALUES (@MultiDbSTSID,@LangCode,@Caption,@MouseOverText) SET @LogFlag ='Translate(Insert) MultiDbSTS Caption' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'MultiDbSTS',@LogFlag, @MultiDbSTSID,'Lang:', @LangCode, 'Caption:', @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDbSourcesSFB_99] (@DbName varchar(10)) AS BEGIN DECLARE @DbVerNo int --Get DbVerNo SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName and [dbo].[DbList].[DbLabel] = 'live' SELECT dl.DbName AS ShortDbName, tt.TargetType, dst.SLCollID FROM [dbo].[DbSourceTarget] dst INNER JOIN [dbo].[DbList] dl ON dst.SourceDbNo = dl.DbVerNo INNER JOIN [dbo].[DbSourceTargetTypeList] tt ON tt.TargetType = dst.TargetType WHERE dst.TargetDbNo = @DbVerNo AND tt.SFBUse =1 END
CREATE PROCEDURE [dbo].[EAUI_GetGroupList_80] (@StartCaption nvarchar(255))AS BEGIN SELECT gl.GroupNo, gl.GroupID, gc.Caption FROM [dbo].[GroupList] gl INNER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo = gc.GroupNo WHERE gc.LangCode = 'en' AND gc.Caption>=@StartCaption ORDER BY gc.Caption END
CREATE PROCEDURE [dbo].[EAIP_UpdateProfile_153] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID varchar(10), @ProfPwd VARCHAR(10), @MarketID VARCHAR(20), @DbLabel VARCHAR(10), @ProfName NVARCHAR(100), @DefLangCode VARCHAR(10), @URL NVARCHAR(255) = NULL ) AS BEGIN SET @CustID = RTRIM(LTRIM(@CustID)) /* Start of Validations */ /* Validate: Profile does not exists */ IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[Profile].[ProfID] = @ProfID) BEGIN RAISERROR('The %s.%s.%s Profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END /* Validate: Language does not exists */ IF NOT EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @DefLangCode) BEGIN RAISERROR('The Language "%s" does not exist.', 16, -1, @DefLangCode) RETURN END /* Validate: Profile Style does not exists */ IF NOT EXISTS(SELECT 1 FROM EASUPPORT.dbo.MarketList WHERE [EASUPPORT].[dbo].[MarketList].[MarketID] = @MarketID) BEGIN RAISERROR('The Profile Style "%s" does not exist.', 16, -1, @MarketID) RETURN END /* Validate: Validate for valid DbLabel for Internal Customer */ DECLARE @CustType CHAR(1) SELECT @CustType = [dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID IF(@CustType = 'I' OR @CustType = 'P') BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel] = @DbLabel) BEGIN RAISERROR('The DbLevel "%s" does not exist.', 16, -1, @DbLabel) RETURN END END ELSE BEGIN SET @DbLabel = 'live' END /* Validate: Profile Password can not be blank */ IF (@ProfPwd IS NULL OR @ProfPwd = '') BEGIN RAISERROR('The Profile Password cannot be blank.', 16, -1) RETURN END /* End of Validations */ DECLARE @ProfLogName VARCHAR(40), @ProfNo INT SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[Profile].[ProfID] = @ProfID SELECT @ProfLogName = dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @SiteURL VARCHAR(255) SELECT @SiteURL = LTRIM(RTRIM(iv.SiteURL)) FROM [dbo].[Profile] p INNER JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID = iv.InterfaceID AND p.Version = iv.Version WHERE p.ProfNo = @ProfNo SELECT @URL = LTRIM(RTRIM(@URL)) BEGIN TRANSACTION IF (LOWER(@SiteURL) = LOWER(@URL) OR @URL = '') BEGIN SET @URL = NULL END UPDATE [dbo].[Profile] SET [dbo].[Profile].[ProfName] = @ProfName, [dbo].[Profile].[MarketID] = @MarketID, [dbo].[Profile].[DbLabel] = @DBLabel, [dbo].[Profile].[DefLangCode] = @DefLangCode, [dbo].[Profile].[ProfPwd] = @ProfPwd, [dbo].[Profile].[URL] = @URL WHERE [dbo].[Profile].[ProfNo] = @ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Modify Profile/Pwd', @ProfLogName, @ProfName, @MarketID, @DbLabel,@DefLangCode COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateSystemCollection_70](@UserID nvarchar(20), @UserIP varchar(15), @ColNo int, @ColName nvarchar(100), @EPFullText bit=0, @CustomLink bit=0, @SmartLink bit=0, @Category varchar(50)='other') as BEGIN DECLARE @LogColName varchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo) EXEC [dbo].[EAIP_UpdateSystemCollection_70] @ColNo, @ColName, @EPFullText, @CustomLink, @SmartLink, @Category EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'System Collection', 'Edit System Collection', @LogColName, @ColName END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseListForActivityList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseListForActivityList_70](@DbLabel varchar(10),@SourceType char(1)) as BEGIN IF (@DbLabel='live' OR @DbLabel='liveQC' OR @DbLabel='rebuild' OR @DbLabel='rebuildQC' ) SELECT [dbo].[DbList].[DisplayName] + N' (' + [dbo].[DbList].[DbName] + N')' AS DisplayName, [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel] = @DbLabel AND [dbo].[DbList].[SourceType] = @SourceType ORDER BY DisplayName ELSE SELECT [dbo].[DbList].[DisplayName] + N' (' + [dbo].[DbList].[DbName] + N')' AS DisplayName, [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel] NOT IN ( 'live', 'liveQC', 'rebuild', 'rebuildQC' ) AND [dbo].[DbList].[SourceType] = @SourceType ORDER BY DisplayName END
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceCaptions_161] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10), @Interfacename nvarchar(100), @HelpText nvarchar(255), @LinkText nvarchar(255) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode) BEGIN RAISERROR('The Language ''%s'' does not exist.',16,-1,@LangCode) RETURN END EXEC [dbo].[EAUI_UpdateInterfaceCaptions_76] @UserID, @UserIP, @InterfaceID, @Version, @LangCode, @Interfacename, @HelpText, @LinkText END
CREATE PROCEDURE [dbo].[EAIP_GetProfileParamDetails_153] (@CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @ParamName VARCHAR(100)) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char DECLARE @ProfNo INT SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID], @STMode = [dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo IF (@ProfNo IS NULL) BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceParamList] a JOIN [dbo].[CustomParamList] b ON a.ParamNo=b.ParamNo WHERE b.ParamName=@ParamName AND a.InterfaceID=@InterfaceID) BEGIN RAISERROR('The Parameter (%s) does not exist for the given profile combination %s.%s.%s.', 16,-1, @ParamName, @CustID,@GroupID,@ProfID) RETURN END ----Check parameter is Boolean/Numeric/String type --IF NOT EXISTS (SELECT 1 FROM CustomParamList WHERE ParamName=@ParamName AND ParamType IN ('N', 'B', 'S')) --BEGIN -- RAISERROR('The Parameter (%s) is not a scalar parameter type i.e. Boolean/Numeric/String.', 16,-1, @ParamName) -- RETURN --END SELECT cpl.ParamNo ,cpl.ParamName ,cpe.PromptText AS [Description] ,cpl.ParamType ,cpl.ParamLevel ,ISNULL(ISNULL(cps.ParamValue,cpd.DefValue),cpl.DefValue) AS Value ,cpe.EditGroup ,cpe.EditSubGroup ,cpe.ValueTemplate ,cpe.EditControl ,ISNULL(cpd.DefValue,'') AS DefValue ,@ProfNo AS ProfNo ,ipl.InterfaceID FROM [dbo].[CustomParamList] cpl JOIN [dbo].[CustomParamEditDetail] cpe ON cpl.ParamNo=cpe.ParamNo LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] cps ON cps.TargetNo=@ProfNo AND cps.ParamLevel='P' AND cpl.ParamNo=cps.ParamNo LEFT JOIN [dbo].[InterfaceParamList] ipl ON cpl.ParamNo=ipl.ParamNo WHERE ipl.InterfaceID=@InterfaceID AND ipl.Version=@Version AND ipl.EditLevel<>-1 AND cpe.EditControl <> '' AND cpl.ParamName=@ParamName --AND cpl.ParamType IN ('N', 'B','S') END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseBibMap_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @BibField int, @FieldTag varchar(2) ) AS BEGIN DECLARE @BibFieldAsText varchar(20) SELECT @BibFieldAsText=CONVERT(varchar,@BibField) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Bib Map', 'Segment:', @SegName,'Field:',@BibFieldAsText,'Tag:',@FieldTag UPDATE [dbo].[DbBibMap] SET [dbo].[DbBibMap].[FieldTag] = @FieldTag WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName AND [dbo].[DbBibMap].[BibField] = @BibField END
CREATE FUNCTION [dbo].[EAIF_GetDisciplineCaptions_131](@DisciplineNo INT) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions=N'' --SET @Captions=N'Caption1 Caption2 ' SELECT @Captions = @Captions + N''+[dbo].[DisciplineCaption].[Caption]+N' ' FROM [dbo].[DisciplineCaption] WHERE [dbo].[DisciplineCaption].[DisciplineNo] = @DisciplineNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_FeatureItemsReorder_80]( @UserID nvarchar(20), @UserIP varchar(30), @FeatureNo int, @ItemList varchar(8000), @SeqNoList varchar(8000))AS BEGIN DECLARE @Category varchar(20) DECLARE @Name varchar(50) SELECT @Category=[dbo].[FeatureList].[Category], @Name=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo BEGIN TRANSACTION UPDATE dbo.FeatureValues SET [SeqNo] = CONVERT(int,b.Value) FROM dbo.FeatureValues a INNER JOIN dbo.EAIF_GetItemValueTable_70(@ItemList, @SeqNoList,'+') b ON a.ItemNo=CONVERT(int, b.Item) WHERE a.FeatureNo=@FeatureNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID, @UserIP, 'Features', 'Reorder Feature Items', @Category, @Name COMMIT TRANSACTION END
Create Procedure [dbo].[DEPLOY_US31712] as Begin /* DEPLOY_US31712 - Explora - (SCRIPT) Explora Migration to regional Interfaces ) */ IF EXISTS (SELECT * FROM sys.objects WHERE [sys].[objects].[object_id] = OBJECT_ID(N'[dbo].[Backup_Inserted_Profiles_For_Explora_US31712]') AND [sys].[objects].[type] ='U') BEGIN PRINT ' Update script has been run. Run Rollback script , Delete Back up file and re run script' return END /* Insert records into Backup_Inserted_Profiles_For_Explora_US31712 table the Proflies associated with InterfaceID's ehkc,ehka,ehan prior to the insert */ If not exists (select 1 from [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[InterfaceID]='ehkc' and [dbo].[InterfaceVersion].[Version]='live') Begin Raiserror('Interface/Version ehkc/live does not exist. Interface needs to exists prior to running this script',16,-1) Return End If not exists (select 1 from [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[InterfaceID]='ehka' and [dbo].[InterfaceVersion].[Version]='live') Begin Raiserror('Interface/Version ehka/live does not exist. Interface needs to exists prior to running this script',16,-1) Return End If not exists (select 1 from [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[InterfaceID]='ehan' and [dbo].[InterfaceVersion].[Version]='live') Begin Raiserror('Interface/Version ehan/live does not exist. Interface needs to exists prior to running this script',16,-1) Return End IF NOT EXISTS (SELECT * FROM sys.objects WHERE [sys].[objects].[object_id] = OBJECT_ID(N'[dbo].[Backup_Inserted_Profiles_For_Explora_US31712]') AND [sys].[objects].[type] ='U') BEGIN CREATE TABLE [dbo].[Backup_Inserted_Profiles_For_Explora_US31712] ( [CustID] [varchar](10) NOT NULL, [GroupID] [varchar](10) NOT NULL, [ProfID] [varchar](10) NOT NULL, [MarketID] [varchar](20) NOT NULL, [InterfaceName] [nvarchar](100) NOT NULL, [Inserted] [bit] Default 0, CONSTRAINT [PK_Backup_Inserted_Profiles_For_Explora_US31712] PRIMARY KEY NONCLUSTERED ([CustID], [GroupID], [ProfID]) ) Declare @TempTable TABLE ( [CustID] [varchar](10) NOT NULL, [GroupID] [varchar](10) NOT NULL, [ProfID] [varchar](10) NOT NULL, [MarketID] [varchar](20) NOT NULL, [InterfaceName] [nvarchar](100)) INSERT INTO @TempTable SELECT DISTINCT p1.CustID, p1.GroupID, 'ehkc' as ProfID, c.MarketID,'Explora Primary - Canada' AS InterfaceName FROM [dbo].[Profile] p1 with (NOLOCK) JOIN [dbo].[Customer] c with (NOLOCK) ON p1.CustID=c.CustID AND ([c].[CustType] = 'S' or [c].[CustType] = 'T') LEFT OUTER JOIN [dbo].[Profile] p2 with (NOLOCK) ON p1.CustID=p2.CustID AND p1.GroupID = p2.GroupID AND p2.ProfID ='ehkc' WHERE (p1.InterfaceID ='ehcs' AND p1.Version='live' ) AND p2.ProfNo IS NULL UNION SELECT DISTINCT p1.CustID, p1.GroupID, 'ehka' as ProfID, c.MarketID,'Explora Primary - Australia/New Zealand' AS InterfaceName FROM [dbo].[Profile] p1 with (NOLOCK) JOIN [dbo].[Customer] c with (NOLOCK) ON p1.CustID=c.CustID AND ([c].[CustType] = 'S' or [c].[CustType] = 'T') JOIN [dbo].[CustAddress] ca with (NOLOCK) ON c.CustID = ca.CustID LEFT OUTER JOIN [dbo].[Profile] p2 with (NOLOCK) ON p1.CustID=p2.CustID AND p1.GroupID = p2.GroupID AND p2.ProfID ='ehka' WHERE (p1.InterfaceID= 'ehk5' AND p1.Version='live' AND (ca.CountryID='AUS' or ca.CountryID ='NZL')) AND p2.ProfNo IS NULL UNION SELECT DISTINCT p1.CustID, p1.GroupID, 'ehan' as ProfID, c.MarketID,'Explora - Australia/New Zealand' AS InterfaceName FROM [dbo].[Profile] p1 with (NOLOCK) JOIN [dbo].[Customer] c with (NOLOCK) ON p1.CustID=c.CustID AND ([c].[CustType] = 'S' or [c].[CustType] = 'T') JOIN [dbo].[CustAddress] ca with (NOLOCK) ON c.CustID = ca.CustID LEFT OUTER JOIN [dbo].[Profile] p2 with (NOLOCK) ON p1.CustID=p2.CustID AND p1.GroupID = p2.GroupID AND p2.ProfID ='ehan' WHERE (p1.InterfaceID IN ('src_ic', 'ehpl') AND p1.Version='live' AND (ca.CountryID='AUS' or ca.CountryID ='NZL')) AND p2.ProfNo IS NULL ORDER BY ProfID INSERT INTO [dbo].[Backup_Inserted_Profiles_For_Explora_US31712] select Distinct t.CustID, t.GroupID, t.ProfID, t.MarketID, t.InterfaceName, 0 from @TempTable t PRINT 'Created backup table for Profile table successfully. Inserted total ' + CONVERT(VARCHAR(10), @@ROWCOUNT) + ' records into it...' END DECLARE @CustID VARCHAR(10) DECLARE @GroupID VARCHAR(10) DECLARE @MarketID VARCHAR(20) DECLARE @NewInterfaceID VARCHAR(10) DECLARE @NewInterfaceName NVARCHAR(100) Declare @NewProfNo int DECLARE NewProfiles CURSOR FOR SELECT [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[CustID], [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[GroupID], [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[MarketID], [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[ProfID], [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[InterfaceName] From [dbo].[Backup_Inserted_Profiles_For_Explora_US31712] Where [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[Inserted]=0 OPEN NewProfiles FETCH NEXT FROM NewProfiles INTO @CustID, @GroupID, @MarketID, @NewInterfaceID, @NewInterfaceName WHILE (@@FETCH_STATUS <> -1) BEGIN Begin Try Begin Transaction /* Insert Profile table ... */ EXEC [dbo].[EAUI_AddProfile_70] 'sql script', '', @CustID, @GroupID, @NewInterfaceID, '', @NewInterfaceID, 'live', @MarketID, 'live', @NewInterfaceName, 'en' Select @NewProfNo = [dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID and [dbo].[Profile].[GroupID]=@GroupID and [dbo].[Profile].[ProfID]=@NewInterfaceID /* Update the profDatabase of the newly added profile based on the setting of the superseeded profdatabase */ /* If the Database is enabled or SelectDefaulted on any superseded profdatabases, the new profdatabase would */ /* be updated with the same */ If @NewInterfaceID='ehkc' begin -- Update the Enable column Update pdbn set [Enable]=isnull(p2.Enable,0) from [dbo].[ProfDatabase] pdbn left OUTER JOIN (SELECT DISTINCT a.DbVerNo, a.Enable FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] p ON a.ProfNo=p.ProfNo WHERE p.CustID=@custID AND p.GroupID=@GroupID AND p.InterfaceID='ehcs' AND a.Enable =1) p2 ON pdbn.DbVerNo=p2.DbVerNo and p2.DbVerNo is not null where pdbn.ProfNo=@NewProfNo -- Update the Default selected Update pdbn set [SelDefault]=isnull(p2.SelDefault,0) from [dbo].[ProfDatabase] pdbn left OUTER JOIN (SELECT DISTINCT a.DbVerNo, a.Enable , a.SelDefault FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] p ON a.ProfNo=p.ProfNo WHERE p.CustID=@custID AND p.GroupID=@GroupID AND p.InterfaceID='ehcs' AND a.SelDefault =1) p2 ON pdbn.DbVerNo=p2.DbVerNo and p2.DbVerNo is not null where pdbn.ProfNo=@NewProfNo end If @NewInterfaceID='ehka' begin -- Update the Enable column Update pdbn set [Enable]=isnull(p2.Enable,0) from [dbo].[ProfDatabase] pdbn left OUTER JOIN (SELECT DISTINCT a.DbVerNo, a.Enable FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] p ON a.ProfNo=p.ProfNo WHERE p.CustID=@custID AND p.GroupID=@GroupID AND p.InterfaceID='ehk5' AND a.Enable =1) p2 ON pdbn.DbVerNo=p2.DbVerNo and p2.DbVerNo is not null where pdbn.ProfNo=@NewProfNo -- Update the Default selected Update pdbn set [SelDefault]=isnull(p2.SelDefault,0) from [dbo].[ProfDatabase] pdbn left OUTER JOIN (SELECT DISTINCT a.DbVerNo, a.Enable , a.SelDefault FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] p ON a.ProfNo=p.ProfNo WHERE p.CustID=@custID AND p.GroupID=@GroupID AND p.InterfaceID='ehk5' AND a.SelDefault =1) p2 ON pdbn.DbVerNo=p2.DbVerNo and p2.DbVerNo is not null where pdbn.ProfNo=@NewProfNo end If @NewInterfaceID='ehan' begin -- Update the Enable column Update pdbn set [Enable]=isnull(p2.Enable,0) from [dbo].[ProfDatabase] pdbn left OUTER JOIN (SELECT DISTINCT a.DbVerNo, a.Enable FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] p ON a.ProfNo=p.ProfNo WHERE p.CustID=@custID AND p.GroupID=@GroupID AND p.InterfaceID in ('src_ic','ehpl') AND a.Enable =1) p2 ON pdbn.DbVerNo=p2.DbVerNo and p2.DbVerNo is not null where pdbn.ProfNo=@NewProfNo -- Update the Default selected Update pdbn set [SelDefault]=isnull(p2.SelDefault,0) from [dbo].[ProfDatabase] pdbn left OUTER JOIN (SELECT DISTINCT a.DbVerNo, a.Enable , a.SelDefault FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] p ON a.ProfNo=p.ProfNo WHERE p.CustID=@custID AND p.GroupID=@GroupID AND p.InterfaceID in ('src_ic','ehpl') AND a.SelDefault =1) p2 ON pdbn.DbVerNo=p2.DbVerNo and p2.DbVerNo is not null where pdbn.ProfNo=@NewProfNo end Update [dbo].[Backup_Inserted_Profiles_For_Explora_US31712] set [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[Inserted]=1 where [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[CustID]=@CustID and [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[GroupID]=@GroupID and [dbo].[Backup_Inserted_Profiles_For_Explora_US31712].[ProfID]=@NewInterfaceID Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION END CATCH FETCH NEXT FROM NewProfiles INTO @CustID, @GroupID, @MarketID, @NewInterfaceID, @NewInterfaceName END CLOSE NewProfiles DEALLOCATE NewProfiles PRINT 'Inserted New Profiles successfully...' PRINT 'Updated ProfDatabase table for the newly added profile based on the settings on superseeded profile' END
CREATE PROCEDURE [dbo].[EAIP_GetContentFilterListItem_181](@ContentFilterItemNo INT) AS SELECT [cfli].[ContentFilterItemNo], [cfl].[ContentFilterListID], [cfli].[ContentFilterItemSearchConceptID], [cfli].[ContentFilterItemSearchTerm] FROM [dbo].[ContentFilterListItems] cfli JOIN [dbo].[ContentFilterList] cfl ON cfl.ContentFilterNo = cfli.ContentFilterNo WHERE cfli.ContentFilterItemNo=@ContentFilterItemNo
CREATE PROCEDURE [dbo].[EAUI_GetSiteLevelSubGroupEditParamList_100] (@SiteID varchar(10), @EditGroup varchar(100), @EditLevel int, @SubGroup varchar(100)) AS BEGIN DECLARE @CustNo int DECLARE @CustType Char(1) Select @CustNo=[dbo].[Customer].[CustNo],@CustType=[dbo].[Customer].[CustType] from [dbo].[Customer] Where [dbo].[Customer].[CustID]=@SiteID SELECT distinct e.ParamNo ,c.ParamName ,e.PromptText ,e.HelpText ,e.EditSubGroup ,e.EditControl ,e.ValueTemplate ,ISNULL(ISNULL(d.ParamValue,t.DefValue),c.DefValue) AS Value ,case when (Select [cpsv].[ParamValue] from [dbo].[CustomParamScalarValues] cpsv where [cpsv].[TargetNo]=@CustNo and [cpsv].[ParamLevel] = 'C' and cpsv.ParamNo=e.ParamNo) is null then 1 else 0 end as IsDefault ,c.ParamType ,ISNULL(e.ProcInfo,'') AS ProcInfo ,CASE ISNULL(pl.ParentParamNo,'') WHEN '' THEN 0 ELSE 1 END AS HasChildParams ,e.SeqNo ,ISNULL(e.HintText,'') AS HintText ,HasXmlFields = Case when exists (select 1 from [dbo].[CustomParamXmlFields] cpxf where cpxf.ParamNo=e.ParamNo) then '1' Else '0' End ,e.HierarchyDisplayOptions ,IsNull(c.DefValuePrefix,N'') as DefValuePrefix FROM [dbo].[CustomParamEditDetail] e inner join [dbo].[CustomParamList] c on (c.ParamNo = e.ParamNo) LEFT OUTER JOIN [dbo].[CustomParamList] pl ON c.ParamNo = pl.ParentParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = @CustNo AND d.ParamLevel = 'C' AND d.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] t ON t.ParamNo =c.ParamNo AND t.CustType = @CustType WHERE e.EditGroup = @EditGroup AND e.EditLevel >= @EditLevel AND e.EditSubGroup = @SubGroup UNION ALL SELECT distinct e.ParamNo ,c.ParamName ,e.PromptText ,e.HelpText ,e.EditSubGroup ,e.EditControl ,e.ValueTemplate ,ISNULL(ISNULL(d.ParamValue,t.DefValue),c.DefValue) AS Value ,case when (Select [cpsv].[ParamValue] from [dbo].[CustomParamScalarValues] cpsv where [cpsv].[TargetNo]=@CustNo and [cpsv].[ParamLevel] = 'C' and cpsv.ParamNo=e.ParamNo) is null then 1 else 0 end as IsDefault ,c.ParamType ,ISNULL(e.ProcInfo,'') AS ProcInfo ,CASE ISNULL(pl.ParentParamNo,'') WHEN '' THEN 0 ELSE 1 END AS HasChildParams ,e.SeqNo ,ISNULL(e.HintText,'') AS HintText ,HasXmlFields = Case when exists (select 1 from [dbo].[CustomParamXmlFields] cpxf where cpxf.ParamNo=e.ParamNo) then '1' Else '0' End ,e.HierarchyDisplayOptions ,IsNull(c.DefValuePrefix,N'') as DefValuePrefix FROM [dbo].[CustomParamEmailEditDetail] e inner join [dbo].[CustomParamEmailList] c on (c.ParamNo = e.ParamNo) LEFT OUTER JOIN [dbo].[CustomParamEmailList] pl ON c.ParamNo = pl.ParentParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = @CustNo AND d.ParamLevel = 'C' AND d.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] t ON t.ParamNo =c.ParamNo AND t.CustType = @CustType WHERE e.EditGroup = @EditGroup AND e.EditLevel >= @EditLevel AND e.EditSubGroup = @SubGroup ORDER BY e.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AttachDbLimiter_70] ( @UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int, @LimiterNo int, @ResFlag int, @SearchString varchar(255), @SeqNo smallint, @LangCode varchar(10), @Caption nvarchar(100), @MouseOverText nvarchar(255) ) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivityOld_70] @UserId, @UserIp, 'EAUI_AttachDbLimiter_70', @DbVerNo, @LimiterNo IF EXISTS (SELECT 1 FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiter].[LimiterNo] = @LimiterNo ) BEGIN RAISERROR('The LimiterNo %d and DbVerNo %d key already exists in DbLimiter', 16,-1, @LimiterNo, @DbVerNo) ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbLimiter] ([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo], [dbo].[DbLimiter].[ResFlag] , [dbo].[DbLimiter].[SearchString], [dbo].[DbLimiter].[SeqNo]) VALUES (@DbVerNo, @LimiterNo, @ResFlag, @SearchString, @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbLimiterCaption] ([dbo].[DbLimiterCaption].[DbVerNo], [dbo].[DbLimiterCaption].[LimiterNo], [dbo].[DbLimiterCaption].[LangCode], [dbo].[DbLimiterCaption].[Caption], [dbo].[DbLimiterCaption].[MouseOverText]) VALUES (@DbVerNo, @LimiterNo, @LangCode, @Caption, @MouseOverText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--[GetCustomers] 'flipma',2,1000 CREATE PROCEDURE [dbo].[GetCustomers] (@ProductContext VARCHAR(10), @PageIdx VARCHAR(10), @PageSize VARCHAR(10)) AS BEGIN DECLARE @NewPageIdx INT, @NewPageSize INT, @DbName VARCHAR(10), @TotalCount INT=0, @ProductContextCode VARCHAR(10) --Check if the page index is passed IF (LEN(RTRIM(LTRIM(COALESCE(@PageIdx, '')))) <= 0) BEGIN RAISERROR (N'Page Index is required', 16, 1) RETURN END --Check if the page size is passed IF (LEN(RTRIM(LTRIM(COALESCE(@PageSize, '')))) <= 0) BEGIN RAISERROR (N'Page Size is required', 16, 1) RETURN END --Check if the page index is not a numeric IF (ISNUMERIC(@PageIdx)=0) BEGIN RAISERROR (N'Page Index should be numeric', 16, 1) RETURN END --Check if the page size is not a numeric IF (ISNUMERIC(@PageSize)=0) BEGIN RAISERROR (N'Page Size should be numeric', 16, 1) RETURN END SET @NewPageIdx = CAST(@PageIdx AS INT) SET @NewPageSize = CAST(@PageSize AS INT) --** Check the page index and size IF @NewPageIdx < 1 OR @NewPageSize < 1 BEGIN RAISERROR ('PageIndex and PageSize can not be less than 1', 16, 1); RETURN END --Check if the product context is passed IF (@ProductContext IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@ProductContext, '')))) <= 0) BEGIN RAISERROR (N'Product Context is required', 16, 1) RETURN END If(OBJECT_ID('tempdb..#tmpcustomers') Is Not Null) DROP TABLE #tmpcustomers CREATE TABLE #tmpcustomers ( CustId VARCHAR(10), CustName NVARCHAR(200), CountryId VARCHAR(3), SubdivisionId VARCHAR(200), City VARCHAR(80), PostalCode VARCHAR(15), Address1 VARCHAR(80), Address2 VARCHAR(80), Address3 VARCHAR(80), AccessEndDate DATETIME ); IF @ProductContext='ebma' BEGIN SET @ProductContextCode='ebookMob' SET @DbName='nlebk' END ELSE IF @ProductContext='flipma' BEGIN SET @ProductContextCode='flipster' SET @DbName='eon' END ;with CTE as ( SELECT distinct c.CustID,c.CustName FROM [dbo].[Customer] c WITH (NOLOCK) JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE d.Product=@ProductContextCode AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND c.CustType <> 'I' ) INSERT INTO #tmpcustomers ( #tmpcustomers.[CustId], #tmpcustomers.[CustName], #tmpcustomers.[CountryId], #tmpcustomers.[SubdivisionId], #tmpcustomers.[City], #tmpcustomers.[PostalCode], #tmpcustomers.[Address1], #tmpcustomers.[Address2], #tmpcustomers.[Address3]) SELECT CTE.CustID,[CTE].[CustName], ca.CountryID, ca.State AS SubdivisionId, [ca].[City], [ca].[PostalCode], [ca].[Address1], [ca].[Address2], [ca].[Address3] FROM CTE JOIN dbo.CustAddress ca WITH (NOLOCK) ON cte.CustID=ca.CustID JOIN dbo.Country ct WITH (NOLOCK) ON ct.CountryID=ca.CountryID UPDATE tc SET [tc].[AccessEndDate]=pd.AccessEndDate FROM #tmpcustomers tc JOIN [dbo].[Profile] p1 WITH (NOLOCK) ON tc.CustId=p1.CustID JOIN [dbo].[ProfDatabase] pd WITH(NOLOCK) ON p1.ProfNo = pd.ProfNo JOIN [dbo].[DbList] db WITH (NOLOCK) ON pd.DbVerNo = db.DbVerNo WHERE p1.ProfID=@ProductContext and db.DbName=@DbName AND db.DbLabel='live' ;WITH CustCTE AS ( SELECT Distinct ROW_NUMBER() over( order by #tmpcustomers.[CustId]) as seq, #tmpcustomers.[CustId], #tmpcustomers.[CustName], #tmpcustomers.[CountryId], #tmpcustomers.[SubdivisionId], #tmpcustomers.[City], #tmpcustomers.[PostalCode], #tmpcustomers.[Address1], #tmpcustomers.[Address2], #tmpcustomers.[Address3], count(#tmpcustomers.[CustId]) OVER() as TotalCount, #tmpcustomers.[AccessEndDate] FROM #tmpcustomers WITH (NOLOCK) ) --Get customers along with access end date for the the given context (Ebooks/Flipster) SELECT [CustCTE].[seq], [CustCTE].[CustId], [CustCTE].[CustName], [CustCTE].[CountryId], [CustCTE].[SubdivisionId], [CustCTE].[City], [CustCTE].[PostalCode], [CustCTE].[Address1], [CustCTE].[Address2], [CustCTE].[Address3],[CustCTE].[TotalCount], [CustCTE].[AccessEndDate] FROM CustCTE WITH (NOLOCK) WHERE [CustCTE].[seq] between (@NewPageIdx-1) * @NewPageSize+1 and ((@NewPageIdx-1) * @NewPageSize +(@NewPageSize)) ORDER BY [CustCTE].[CustId] END
CREATE PROCEDURE [dbo].[EAIP_AddUpdateIndexDataConnector] ( @DbVerNo INT, @ID VARCHAR(255), @ProxyForResult BIT, @ProxyForSearch BIT, @ConnectorURL NVARCHAR(255) = null, @KeyValuePairs NVARCHAR(255) = null ) AS BEGIN UPDATE [dbo].[DbListExternalSourceIndexData] SET [dbo].[DbListExternalSourceIndexData].[ExternalDbID] = @ID, [dbo].[DbListExternalSourceIndexData].[ProxyForResult]=@ProxyForResult, [dbo].[DbListExternalSourceIndexData].[ProxyForSearch]= @ProxyForSearch, [dbo].[DbListExternalSourceIndexData].[ConnectorURL] =@ConnectorURL, [dbo].[DbListExternalSourceIndexData].[KeyValuePairs]=@KeyValuePairs WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo IF (@@ROWCOUNT = 0) BEGIN INSERT INTO [dbo].[DbListExternalSourceIndexData] ([dbo].[DbListExternalSourceIndexData].[DbVerNo], [dbo].[DbListExternalSourceIndexData].[ExternalDbID], [dbo].[DbListExternalSourceIndexData].[ProxyForResult],[dbo].[DbListExternalSourceIndexData].[ProxyForSearch],[dbo].[DbListExternalSourceIndexData].[ConnectorURL],[dbo].[DbListExternalSourceIndexData].[KeyValuePairs]) VALUES (@DbVerNo, @ID,@ProxyForResult,@ProxyForSearch,@ConnectorURL,@KeyValuePairs) END END
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitleListByISSN_103] ( @ColNo int, @Origin as varchar(20) = '', @StartRowIndex int = 1, @EndRowIndex int = 11 ) AS BEGIN DECLARE @SharedColNo int SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM [dbo].[Collection] Where [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 IF @SharedColNo<>0 SELECT @ColNo=@SharedColNo DECLARE @RecCount int= 0; if (@StartRowIndex = 1) BEGIN if (@Origin = '') SELECT @RecCount = count(*) FROM [dbo].[LocalTitle] l WHERE l.ColNo = @ColNo ELSE SELECT @RecCount = count(*) FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo and m.ISSN like @Origin + '%' END IF @RecCount > 10000 -- return empty recordset --RAISERROR ('Search returns over 10,000 records, please use filter to limit number of records.',16,-1) SELECT l.ColNo, m.TitleNo, m.Title, m.ISSN FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE 1 = 0 ELSE SELECT [TEMPMO].[ColNo], [TEMPMO].[TitleNo], [TEMPMO].[Title], [TEMPMO].[ISSN] FROM ( SELECT TOP (@EndRowIndex) l.ColNo, m.TitleNo, m.Title, m.ISSN, ROW_NUMBER() OVER (ORDER BY m.ISSN) as RowNumber FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo and m.ISSN like @Origin + '%' ) AS TEMPMO where [TEMPMO].[RowNumber] >= @StartRowIndex END
CREATE PROCEDURE EATL_UpdateGlobalMultiDbSTS_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,MultiDbSTSID VARCHAR(10) ,Caption NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #Objects ( MultiDbSTSID ,Caption ,MouseOverText ) SELECT m.c.value('(./MultiDbStsId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@MultiDbSTSID VARCHAR(10) ,@Caption NVARCHAR(255) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @MultiDbSTSID = MultiDbSTSID ,@Caption = Caption ,@MouseOverText = MouseOverText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalMultiDbSTS_90] @UserID ,@UserIP ,@MultiDbSTSID ,@Caption ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDbSubjects_70](@DbShortName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo = dbo.EAIF_GetDbVerNo_70(@DbShortName, @DbLabel) DECLARE @ParamNo int SELECT @ParamNO = dbo.EAIF_GetDbParamNumber_70('dbSubjects') SELECT [dbo].[DbParamXmlValues].[ParamValue] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo ORDER BY [dbo].[DbParamXmlValues].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetGroupListByID_80] (@StartID varchar(12))AS BEGIN SELECT gl.GroupNo, gl.GroupID, gc.Caption FROM [dbo].[GroupList] gl INNER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo = gc.GroupNo WHERE gc.LangCode = 'en' AND gl.GroupID>=@StartID ORDER BY gl.GroupID END
CREATE Procedure [dbo].[EAIP_UpdateProfileFeatureValues_102] (@UserID Nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @ItemNo int, @ItemType char(1), @FieldsXML nvarchar(max) ) AS Begin DECLARE @LoggingProfile varchar(30), @InterfaceID varchar(20), @Version varchar(10), @IntfSelMode char(1), @IntfVisibleItemCount smallint, @FeatureType char(1), @IntfSeqNo smallint Select @IntfSeqNo=[dbo].[InterfaceFeatureValues].[SeqNo] from [dbo].[InterfaceFeatureValues] where [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo and [dbo].[InterfaceFeatureValues].[ItemNo]=@ItemNo SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) Begin Try Begin Transaction MERGE [dbo].[ProfFeatureValues] as Target Using (Select @ProfNo as ProfNo, @InterfaceFeatureNo as InterfaceFeatureNo, @ItemNo as ItemNo, @ItemType as ItemType, CAST(@FieldsXML as XML) as FieldXML) as Source On (Target.ProfNo=Source.ProfNo and Target.InterfaceFeatureNo=Source.InterfaceFeatureNo and Target.ItemNo=Source.ItemNo and Target.ItemType =Source.ItemType) When matched Then Update set Target.FieldValueXml= Source.FieldXML When Not matched by target Then Insert ([ProfNo], [InterfaceFeatureNo], [ItemNo], [ItemType],[FieldValueXml],[Show],[SeqNo]) Values (Source.ProfNo, Source.InterfaceFeatureNo, Source.ItemNo, Source.ItemType, Source.FieldXML,1,@IntfSeqNo); EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Modify profile feature / feature item', @LoggingProfile, @InterfaceFeatureNo, @ItemNo, @ItemType Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE PROCEDURE [dbo].[EAUI_UpdateTblParamInterfaceItemsNoAutoAdd_101]( @UserID nvarchar(20),@UserIP varchar(15), @ParamNo int, @InterfaceID varchar(10), @Version varchar(10),@AttacheItemList varchar(8000)) AS BEGIN BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[CustomParamTblItemsInterface]([i].[ParamNo],[i].[InterfaceID], [i].[Version],[i].[ItemID]) SELECT @ParamNo,@InterfaceID , @Version, a.Item FROM dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a Left outer join [dbo].[CustomParamTblItemsInterface] i ON a.Item = i.ItemID AND i.ParamNo=@ParamNo AND i.InterfaceID=@InterfaceID AND i.Version=@Version WHERE i.ItemID is null INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'Interface', 'Add Tbl Parameter Item', @ParamNo,@InterfaceID , @Version, a.Item, NULL FROM dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a Left outer join [dbo].[CustomParamTblItemsInterface] i ON a.Item = i.ItemID AND i.ParamNo=@ParamNo AND i.InterfaceID=@InterfaceID AND i.[Version]=@Version WHERE i.ItemID is null DELETE [dbo].[CustomParamTblItemsInterface] FROM [dbo].[CustomParamTblItemsInterface] i Left outer join dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a ON i.ItemID=a.Item WHERE a.Item is null AND [i].[ParamNo]=@ParamNo AND [i].[InterfaceID]=@InterfaceID ANd [i].[Version]=@Version INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'Interfcae', 'Delete Tbl Parameter Item', @ParamNo, @InterfaceID , @Version, a.Item, NULL FROM [dbo].[CustomParamTblItemsInterface] i Left outer join dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a ON i.ItemID=a.Item WHERE a.Item is null AND [i].[ParamNo]=@ParamNo AND [i].[InterfaceID]=@InterfaceID ANd [i].[Version]=@Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END
CREATE Procedure [dbo].[EAUI_GetDatabaseMDbAuthorities_90](@DbVerNo int) AS SELECT mdbal.MultiDbAuthID, mdbac.LinkText AS Caption, mdbal.Description FROM [dbo].[DBMultiDbAuthList] dbmdb INNER JOIN [dbo].[MultiDbAuthList] mdbal ON dbmdb.MultiDbAuthID = mdbal.MultiDbAuthID INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON mdbal.MultiDbAuthID = mdbac.MultiDbAuthID AND mdbac.LangCode = 'en' WHERE dbmdb.DbVerNo = @DbVerNo ORDER BY mdbal.MultiDbAuthID
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceParamDefaults_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ParamName VARCHAR(100), @MarketID VARCHAR(20), @PayingValue NVARCHAR(2000), @TrialValue NVARCHAR(2000), @UpdateProfileDefaults BIT ) AS BEGIN DECLARE @ParamNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName) BEGIN RAISERROR('The Parameter %s does not exist.', 16,-1, @ParamName) RETURN END SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName IF (@UpdateProfileDefaults = 0) BEGIN EXEC [dbo].[EAUI_UpdateInterfaceParameterDefault_70] @UserID, @UserIP, @InterfaceID, @Version, @MarketID, 'S', @ParamNo, @PayingValue EXEC [dbo].[EAUI_UpdateInterfaceParameterDefault_70] @UserID, @UserIP, @InterfaceID, @Version, @MarketID, 'T', @ParamNo, @TrialValue END ELSE BEGIN EXEC [dbo].[EAUI_UpdateInterfaceParameterNewProfileDefault_92] @UserID, @UserIP, @InterfaceID, @Version, @MarketID, 'S', @ParamNo, @PayingValue EXEC [dbo].[EAUI_UpdateInterfaceParameterNewProfileDefault_92] @UserID, @UserIP, @InterfaceID, @Version, @MarketID, 'T', @ParamNo, @TrialValue END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Edit Parameter/New Profile DefaultValues', @InterfaceID, @MarketID, @ParamName, @PayingValue END
CREATE PROCEDURE [dbo].[EAIP_GetProfileParamList_153] (@CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10)) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char DECLARE @ExcludeParamsTable TABLE ( ParamNo int) DECLARE @ProfNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID) BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID], @STMode = [dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo -- Admin 10.0.Some parameters have dependency on other parameter value /table value. -- If it does not meet the dependency business rules, exclude it from the listing. Insert into @ExcludeParamsTable Select [dbo].[EAIF_GetProfileParamsTobeExcluded_133].[ParamNo] from dbo.EAIF_GetProfileParamsTobeExcluded_133 (@InterfaceID,@Version,@ProfNo,1) SELECT cpl.ParamNo ,cpl.ParamName ,cpe.PromptText AS [Description] ,cpl.ParamType ,cpl.ParamLevel --,b.EditControl ,ISNULL(ISNULL(cps.ParamValue,cpd.DefValue),cpl.DefValue) AS Value ,cpe.EditGroup ,cpe.EditSubGroup ,cpe.ValueTemplate ,cpe.EditControl ,ISNULL(cpd.DefValue,'') AS DefValue ,@ProfNo AS ProfNo ,ipl.InterfaceID FROM [dbo].[CustomParamList] cpl JOIN [dbo].[CustomParamEditDetail] cpe ON cpl.ParamNo=cpe.ParamNo --AND cpl.ParamLevel='P' LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] cps ON cps.TargetNo=@ProfNo AND cps.ParamLevel='P' AND cpl.ParamNo=cps.ParamNo LEFT JOIN @ExcludeParamsTable ep ON ep.ParamNo = cpl.ParamNo LEFT JOIN [dbo].[InterfaceParamList] ipl ON cpl.ParamNo=ipl.ParamNo WHERE ipl.InterfaceID=@InterfaceID AND ipl.Version=@Version AND ipl.EditLevel<>-1 AND ep.ParamNo IS NULL AND cpe.EditControl <> '' AND cpl.ParamType NOT IN ('X','D','T') END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseBibMapOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @BibFieldList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN UPDATE [dbo].[DbBibMap] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbBibMap] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@BibFieldList, @SeqNoList,'+') b ON a.BibField=convert(int,b.Item) WHERE a.DbVerNo = @DbVerNo AND a.SegName = @SegName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Reorder Bib Maps', 'Segment:', @SegName END
Create Function dbo.EAIF_GetDocTypeNoList_90(@MDbSTSID varchar(10)) Returns varchar(max) as begin Declare @DocTypeNoList varchar(max) set @DocTypeNoList='' Select @DocTypeNoList=@DocTypeNoList + convert(varchar(max), a.DocTypeNo) + '+' from (Select distinct dtmdbsl.DocTypeNo from [dbo].[MultiDbSTSList] mdbsl join [dbo].[DocTypeMultiDbSTSList] dtmdbsl On mdbsl.MultiDBSTSID=dtmdbsl.MultiDbSTSID join [dbo].[DbDocType] dbdt on dtmdbsl.DocTypeNo=dbdt.DocTypeNo join [dbo].[DbList] dbl on dbdt.DbVerNo=dbl.DbVerNo Where mdbsl.MultiDBSTSID=@MDbSTSID) as a return @DocTypeNoList end
CREATE PROCEDURE [dbo].[EAUI_GetAdminDatabaseVersion_70] AS BEGIN DECLARE @VersionStr varchar(255) SET @VersionStr = dbo.EAIF_GetAdminParamValue_70('eaDbVersion') IF @VersionStr = '' SELECT 'EBSCOadmin Database Version' else SELECT @VersionStr END
Create Procedure [dbo].[DEPLOY_US37749] as Begin /* US37749 - Creating the eBooks Mobile App Profile */ /* Insert records into Backup_Inserted_Profiles_For_ebma_20150724 table */ If not exists (select 1 from [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[InterfaceID]='ebma' and [dbo].[InterfaceVersion].[Version]='live') Begin Raiserror('Interface/Version ebma/live does not exist. Interface needs to exists prior to running this script',16,-1) Return End IF NOT EXISTS (SELECT * FROM sys.objects WHERE [sys].[objects].[object_id] = OBJECT_ID(N'[dbo].[Backup_Inserted_Profiles_For_ebma_20150724]') AND [sys].[objects].[type] ='U') BEGIN CREATE TABLE [dbo].[Backup_Inserted_Profiles_For_ebma_20150724] ( [CustID] [varchar](10) NOT NULL, [GroupID] [varchar](10) NOT NULL, [ProfID] [varchar](10) NOT NULL, [MarketID] [varchar](20) NOT NULL, [ProfName] [nvarchar](100) NOT NULL, [Inserted] [bit] Default 0, CONSTRAINT [PK_BBackup_Inserted_Profiles_For_ebma_20150724] PRIMARY KEY NONCLUSTERED ([CustID], [GroupID], [ProfID]) ) Declare @OptOutCustomers table (CustID varchar(10)) Declare @OptInCustomers table (CustID varchar(10)) Create table #AllCustomers (CustID varchar(10) PRIMARY KEY CLUSTERED, MarketID varchar(20)) Insert @OptOutCustomers (CustID) Values ('brisbane') Insert @OptOutCustomers (CustID) Values ('s6671444') Insert @OptOutCustomers (CustID) Values ('s8989762') Insert @OptOutCustomers (CustID) Values ('s9211935') Insert @OptOutCustomers (CustID) Values ('bre1') Insert @OptOutCustomers (CustID) Values ('s9058720') Insert @OptOutCustomers (CustID) Values ('s8931884') Insert @OptOutCustomers (CustID) Values ('s5519424') Insert @OptOutCustomers (CustID) Values ('frl1') Insert @OptOutCustomers (CustID) Values ('s9059341') Insert @OptOutCustomers (CustID) Values ('next') Insert @OptOutCustomers (CustID) Values ('nasc') Insert @OptOutCustomers (CustID) Values ('s8420204') Insert @OptOutCustomers (CustID) Values ('s4168826') Insert @OptInCustomers (CustID) Values ('s3499149') Insert @OptInCustomers (CustID) Values ('s7412195') Insert @OptInCustomers (CustID) Values ('s4585983') Insert @OptInCustomers (CustID) Values ('ns015732') Insert @OptInCustomers (CustID) Values ('s4842115') Insert @OptInCustomers (CustID) Values ('s1265514') Insert @OptInCustomers (CustID) Values ('ns196470') Insert @OptInCustomers (CustID) Values ('s5471353') Insert @OptInCustomers (CustID) Values ('s8501817') Insert @OptInCustomers (CustID) Values ('s3958036') Insert @OptInCustomers (CustID) Values ('s2467822') Insert @OptInCustomers (CustID) Values ('s1193469') Insert @OptInCustomers (CustID) Values ('s1106744') Insert @OptInCustomers (CustID) Values ('s3890019') Insert @OptInCustomers (CustID) Values ('s4184378') Insert @OptInCustomers (CustID) Values ('s1152723') Insert @OptInCustomers (CustID) Values ('s8857100') Insert @OptInCustomers (CustID) Values ('s5566955') Insert @OptInCustomers (CustID) Values ('ns196470') Insert @OptInCustomers (CustID) Values ('cls25') Insert @OptInCustomers (CustID) Values ('s6118772') Insert @OptInCustomers (CustID) Values ('s5713741') Insert @OptInCustomers (CustID) Values ('ketter') Insert @OptInCustomers (CustID) Values ('s8250832') Insert @OptInCustomers (CustID) Values ('s8429696') Insert @OptInCustomers (CustID) Values ('ns009443') Insert @OptInCustomers (CustID) Values ('s9918178') Insert @OptInCustomers (CustID) Values ('ns056320') Insert @OptInCustomers (CustID) Values ('s9272381') Insert @OptInCustomers (CustID) Values ('s7269180') Insert @OptInCustomers (CustID) Values ('s8227872') Insert @OptInCustomers (CustID) Values ('s3584045') Insert @OptInCustomers (CustID) Values ('s9002706') Insert @OptInCustomers (CustID) Values ('ns231836') Insert @OptInCustomers (CustID) Values ('ns082845') Insert @OptInCustomers (CustID) Values ('s2682248') Insert @OptInCustomers (CustID) Values ('s5093988') Insert @OptInCustomers (CustID) Values ('ns210478') Insert @OptInCustomers (CustID) Values ('s6115181') Insert @OptInCustomers (CustID) Values ('ns128664') Insert @OptInCustomers (CustID) Values ('s5794689') Insert @OptInCustomers (CustID) Values ('ns009716') Insert @OptInCustomers (CustID) Values ('ns233023') Insert @OptInCustomers (CustID) Values ('s5205063') Insert @OptInCustomers (CustID) Values ('s1226075') Insert @OptInCustomers (CustID) Values ('001-800') Insert @OptInCustomers (CustID) Values ('s4165981') Insert @OptInCustomers (CustID) Values ('s8441008') Insert @OptInCustomers (CustID) Values ('s6259500') Insert @OptInCustomers (CustID) Values ('ns128671') Insert @OptInCustomers (CustID) Values ('s8908063') Insert @OptInCustomers (CustID) Values ('ns187615') Insert @OptInCustomers (CustID) Values ('s7977384') Insert @OptInCustomers (CustID) Values ('ns010430') Insert @OptInCustomers (CustID) Values ('ns237123') Insert @OptInCustomers (CustID) Values ('ns073749') Insert @OptInCustomers (CustID) Values ('s5072451') Insert @OptInCustomers (CustID) Values ('s1190956') Insert @OptInCustomers (CustID) Values ('s8509503') Insert @OptInCustomers (CustID) Values ('s5616511') Insert @OptInCustomers (CustID) Values ('s4138019') Insert @OptInCustomers (CustID) Values ('ns074373') Insert @OptInCustomers (CustID) Values ('ns023773') Insert @OptInCustomers (CustID) Values ('ns192677') Insert @OptInCustomers (CustID) Values ('s5243299') Insert @OptInCustomers (CustID) Values ('ns243822') Insert @OptInCustomers (CustID) Values ('s2436356') Insert @OptInCustomers (CustID) Values ('s8863710') Insert @OptInCustomers (CustID) Values ('ns074118') Insert @OptInCustomers (CustID) Values ('s9004519') Insert @OptInCustomers (CustID) Values ('s2860656') Insert @OptInCustomers (CustID) Values ('ns227439') Insert @OptInCustomers (CustID) Values ('s7622234') Insert @OptInCustomers (CustID) Values ('s1215636') Insert @OptInCustomers (CustID) Values ('ns023451') Insert @OptInCustomers (CustID) Values ('s2512462') Insert @OptInCustomers (CustID) Values ('genmotor') Insert @OptInCustomers (CustID) Values ('s9393345') Insert @OptInCustomers (CustID) Values ('s4955052') Insert @OptInCustomers (CustID) Values ('s2955310') Insert @OptInCustomers (CustID) Values ('s5531415') Insert @OptInCustomers (CustID) Values ('s9060498') Insert @OptInCustomers (CustID) Values ('logchir') Insert @OptInCustomers (CustID) Values ('s9001925') Insert @OptInCustomers (CustID) Values ('s3812907') Insert @OptInCustomers (CustID) Values ('s1110059') Insert @OptInCustomers (CustID) Values ('s1173400') Insert @OptInCustomers (CustID) Values ('s2759300') Insert @OptInCustomers (CustID) Values ('ns124893') Insert @OptInCustomers (CustID) Values ('s6406031') Insert @OptInCustomers (CustID) Values ('s7358853') Insert @OptInCustomers (CustID) Values ('s2966977') Insert @OptInCustomers (CustID) Values ('ns012246') Insert @OptInCustomers (CustID) Values ('s3855824') Insert @OptInCustomers (CustID) Values ('s6276916') Insert @OptInCustomers (CustID) Values ('s7553314') Insert @OptInCustomers (CustID) Values ('ns019019') Insert @OptInCustomers (CustID) Values ('s7369174') Insert @OptInCustomers (CustID) Values ('s1201207') Insert @OptInCustomers (CustID) Values ('ns071523') Insert @OptInCustomers (CustID) Values ('ns072046') Insert @OptInCustomers (CustID) Values ('ns072011') Insert @OptInCustomers (CustID) Values ('ns072018') Insert @OptInCustomers (CustID) Values ('s6974141') Insert @OptInCustomers (CustID) Values ('s5616422') Insert @OptInCustomers (CustID) Values ('ns023539') Insert @OptInCustomers (CustID) Values ('s5940188') Insert @OptInCustomers (CustID) Values ('s1070948') Insert @OptInCustomers (CustID) Values ('s2625162') Insert @OptInCustomers (CustID) Values ('s7108731') Insert @OptInCustomers (CustID) Values ('ns011508') Insert @OptInCustomers (CustID) Values ('cls81') Insert @OptInCustomers (CustID) Values ('ns144640') Insert @OptInCustomers (CustID) Values ('s4013844') Insert @OptInCustomers (CustID) Values ('s9349767') Insert @OptInCustomers (CustID) Values ('s4365628') Insert @OptInCustomers (CustID) Values ('s3584045') Insert @OptInCustomers (CustID) Values ('s8992238') Insert @OptInCustomers (CustID) Values ('s2825741') Insert @OptInCustomers (CustID) Values ('s8650296') Insert @OptInCustomers (CustID) Values ('s1220447') Declare @DbVerNo int Select @DbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]='nlebk' and [dbo].[DbList].[DbLabel]='live' Insert #AllCustomers select c.CustID, c.MarketID from [dbo].[Customer] c with (NOLOCK) Join @OptInCustomers oic on c.CustID=oic.CustID union select c.CustID, c.MarketID from [dbo].[Customer] c with (NOLOCK) Left Outer Join @OptOutCustomers ooc on c.CustID=ooc.CustID where c.CustType in ('S', 'T') and c.MarketID in ('public', 'academic', 'school') and ooc.CustID is null Insert [dbo].[Backup_Inserted_Profiles_For_ebma_20150724] SELECT DISTINCT p1.CustID, p1.GroupID, 'ebma' AS ProfID, c.MarketID, 'eBooks Mobile App' AS ProfName, 0 FROM [dbo].[Profile] p1 with (NOLOCK) JOIN #AllCustomers c ON p1.CustID=c.CustID LEFT OUTER JOIN [dbo].[Profile] p2 with (NOLOCK) ON p1.CustID=p2.CustID AND p1.GroupID = p2.GroupID AND p2.InterfaceID='ebma' join [dbo].[ProfDatabase] pdb with (NOLOCK) on p1.ProfNo=pdb.ProfNo and DbVerNo=@DbVerNo and pdb.AccessEndDate>=GetDate() WHERE p2.ProfNo IS NULL order by ProfID PRINT 'Created backup table for Profile table successfully. Inserted total ' + CONVERT(VARCHAR(10), @@ROWCOUNT) + ' records into it...' End DECLARE @CustID VARCHAR(10) DECLARE @GroupID VARCHAR(10) DECLARE @MarketID VARCHAR(20) DECLARE @ProfID VARCHAR(10) DECLARE @ProfName NVARCHAR(100) Declare @ProfNo int Declare @changeLanguageParamNo int Declare @durableLinkAuthOrderParamNo int Select @changeLanguageParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='changeLanguage' Select @durableLinkAuthOrderParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkAuthOrder' DECLARE NewProfiles CURSOR FOR SELECT [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[CustID], [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[GroupID], [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[MarketID], [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[ProfID], [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[ProfName] From [dbo].[Backup_Inserted_Profiles_For_ebma_20150724] Where [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[Inserted]=0 OPEN NewProfiles FETCH NEXT FROM NewProfiles INTO @CustID, @GroupID, @MarketID, @ProfID, @ProfName WHILE (@@FETCH_STATUS <> -1) BEGIN Begin Try Begin Transaction /* Insert Profile table ... */ EXEC [dbo].[EAUI_AddProfile_70] 'sql script', '', @CustID, @GroupID, @ProfID, '', @ProfID, 'live', @MarketID, 'live', @ProfName, 'en' Select @ProfNo = [dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID and [dbo].[Profile].[GroupID]=@GroupID and [dbo].[Profile].[ProfID]=@ProfID /* Set Enable and SelDefault to "1" ... */ Update [dbo].[ProfDatabase] set [Enable]=1, [SelDefault]=1 from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo and dbl.DbName='nlebk' where pdb.ProfNo=@ProfNo exec [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @changeLanguageParamNo, '1' exec [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @durableLinkAuthOrderParamNo, 'cookie,ip,url,uid' Update [dbo].[Backup_Inserted_Profiles_For_ebma_20150724] set [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[Inserted]=1 where [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[CustID]=@CustID and [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[GroupID]=@GroupID and [dbo].[Backup_Inserted_Profiles_For_ebma_20150724].[ProfID]=@ProfID Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION END CATCH FETCH NEXT FROM NewProfiles INTO @CustID, @GroupID, @MarketID, @ProfID, @ProfName END CLOSE NewProfiles DEALLOCATE NewProfiles Drop Table #AllCustomers PRINT 'Inserted Profile table successfully...' PRINT 'Updated ProfDatabase table set Enable=1, SelDefault=1 for Profiles inserted through the script' End
CREATE PROCEDURE [dbo].[EAIP_GetContentFilterListItems_181](@ContentFilterId VARCHAR(25)) AS SELECT [cfli].[ContentFilterItemNo], [cfl].[ContentFilterListID], [cfli].[ContentFilterItemSearchConceptID], [cfli].[ContentFilterItemSearchTerm] FROM [dbo].[ContentFilterListItems] cfli JOIN [dbo].[ContentFilterList] cfl ON cfl.ContentFilterNo = cfli.ContentFilterNo WHERE cfl.ContentFilterListID=@ContentFilterId ORDER BY cfli.ContentFilterItemNo
CREATE PROCEDURE [dbo].[EAUI_GetSiteList_70] (@ParentID varchar(10)) AS BEGIN SELECT b.CustID, b.CustName, CASE WHEN LEN(b.CustName)>30 THEN substring( b.CustName, 1, 30)+'...' ELSE substring( b.CustName, 1, 30) END as FormattedName, CASE WHEN LEN(b.CustName)>40 THEN substring( b.CustName, 1, 40)+'...' ELSE substring( b.CustName, 1, 40) END + ' (' + b.CustID + ')' AS CustNameAndID FROM [dbo].[CustomerGroup] a JOIN [dbo].[Customer] b ON a.ChildID=b.CustID WHERE a.ParentID=@ParentID ORDER BY b.CustName END
CREATE PROCEDURE [dbo].[EAUI_AttachGlobalDbSearchTags_82](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10),@Version varchar(10),@TagList varchar(8000)) AS BEGIN BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceSearchTags]([dbo].[InterfaceSearchTags].[InterfaceID],[dbo].[InterfaceSearchTags].[Version],[dbo].[InterfaceSearchTags].[Tag]) SELECT @InterfaceID,@Version, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@TagList,'+') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceDbSearchTags','Attach Tags', @InterfaceID ,@Version,@TagList COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetCustomersByCountryCode] ( @ProductContext VARCHAR(10), @CountryCode VARCHAR(10), @PageIdx VARCHAR(10), @PageSize VARCHAR(10) ) AS BEGIN DECLARE @NewPageIdx INT, @NewPageSize INT --Check if the country code is passed IF (@CountryCode IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@CountryCode, '')))) <= 0) BEGIN RAISERROR (N'Country code is required', 16, 1) RETURN END --Check if the page index is passed IF (LEN(RTRIM(LTRIM(COALESCE(@PageIdx, '')))) <= 0) BEGIN RAISERROR (N'Page Index is required', 16, 1) RETURN END --Check if the page size is passed IF (LEN(RTRIM(LTRIM(COALESCE(@PageSize, '')))) <= 0) BEGIN RAISERROR (N'Page Size is required', 16, 1) RETURN END --Check if the page index is not a numeric IF (ISNUMERIC(@PageIdx)=0) BEGIN RAISERROR (N'Page Index should be numeric', 16, 1) RETURN END --Check if the page size is not a numeric IF (ISNUMERIC(@PageSize)=0) BEGIN RAISERROR (N'Page Size should be numeric', 16, 1) RETURN END SET @NewPageIdx = CAST(@PageIdx AS INT) SET @NewPageSize = CAST(@PageSize AS INT) --** Check the page index and size IF @NewPageIdx < 1 OR @NewPageSize < 1 BEGIN RAISERROR ('PageIndex and PageSize can not be less than 1', 16, 1); RETURN END --Check if the product context is passed IF (@ProductContext IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@ProductContext, '')))) <= 0) BEGIN RAISERROR (N'Product Context is required', 16, 1) RETURN END IF @ProductContext='ebma' SET @ProductContext='ebookMob' ELSE IF @ProductContext='flipma' SET @ProductContext='flipster' ;with CTE as ( SELECT Distinct ROW_NUMBER() over( order by c.CustName) as seq , c.CustID, c.CustName , count(c.CustID) OVER() AS 'TotalCount' FROM [dbo].[Customer] c WITH (NOLOCK) JOIN dbo.CustAddress ca ON c.CustID=ca.CustID JOIN dbo.Country ct ON ct.CountryID=ca.CountryID JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE ca.CountryID=@CountryCode AND d.Product=@ProductContext AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND c.CustType <> 'I' ) SELECT [CTE].[CustID],[CTE].[CustName], [CTE].[TotalCount] FROM CTE WHERE [CTE].[seq] between (@NewPageIdx-1) * @NewPageSize+1 and ((@NewPageIdx-1) * @NewPageSize +(@NewPageSize)); END
CREATE PROCEDURE [dbo].[EAIP_AddUpdateMuseConnector] ( @DbVerNo INT, @ID VARCHAR(255) ) AS BEGIN UPDATE [dbo].[DbListExternalSourceMuse] SET [dbo].[DbListExternalSourceMuse].[ExternalDbID] = @ID WHERE [dbo].[DbListExternalSourceMuse].[DbVerNo] = @DbVerNo IF (@@ROWCOUNT = 0) BEGIN INSERT INTO [dbo].[DbListExternalSourceMuse] ([dbo].[DbListExternalSourceMuse].[DbVerNo], [dbo].[DbListExternalSourceMuse].[ExternalDbID]) VALUES (@DbVerNo, @ID) END END
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitleListByTitle_103] ( @colNoPrm INT ,@originPrm AS NVARCHAR(430) = '' ,@startRowIndexPrm INT = 1 ,@endRowIndexPrm INT = 11 ) AS BEGIN DECLARE @ColNo INT = @colNoPrm ,@Origin NVARCHAR(430) = @originPrm ,@StartRowIndex INT = @startRowIndexPrm ,@EndRowIndex INT = @endRowIndexPrm; DECLARE @SharedColNo INT; SELECT @SharedColNo = [dbo].[Collection].[SharedFrom] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0; IF @SharedColNo <> 0 SELECT @ColNo = @SharedColNo; DECLARE @RecCount INT = 0; SET @Origin = LTRIM(RTRIM(@Origin)); IF (@StartRowIndex = 1) BEGIN IF (@Origin = '') SELECT @RecCount = COUNT(1) FROM [dbo].[LocalTitle] l WHERE l.ColNo = @ColNo; ELSE SELECT @RecCount = COUNT(1) FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo AND m.Title LIKE @Origin + N'%'; END; IF @RecCount > 10000 --Return empty recordset, returning single record with empty values will not work because it will have record count of 1. SELECT l.ColNo ,m.TitleNo ,m.Title ,m.ISSN FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE 1 = 0; ELSE SELECT [TEMPMO].[ColNo] ,[TEMPMO].[TitleNo] ,[TEMPMO].[Title] ,[TEMPMO].[ISSN] FROM ( SELECT l.ColNo ,m.TitleNo ,m.Title ,m.ISSN ,ROW_NUMBER() OVER ( ORDER BY m.Title ,m.TitleNo ) AS RowNumber FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo AND (@Origin = N'' OR m.Title LIKE @Origin + N'%') ) AS TEMPMO WHERE [TEMPMO].[RowNumber] BETWEEN @StartRowIndex AND @EndRowIndex; END;
CREATE PROCEDURE [dbo].[EATL_UpdateGlobalTopic_77](@UserID nvarchar(20), @UserIP varchar(10), @TopicID varchar(10), @Caption nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @TopicNo int SELECT @TopicNo=[dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID IF @TopicNo is null RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[TopicCaption] WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo AND [dbo].[TopicCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[TopicCaption] SET [dbo].[TopicCaption].[Caption]=@Caption WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo AND [dbo].[TopicCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Topic Caption' END ELSE BEGIN INSERT INTO [dbo].[TopicCaption] ([dbo].[TopicCaption].[TopicNo],[dbo].[TopicCaption].[LangCode],[dbo].[TopicCaption].[Caption]) VALUES (@TopicNo,@Lang,@Caption) SET @LogFlag ='Translate(Insert) Topic Caption' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Topics',@LogFlag, @TopicID,'Lang:', @Lang, 'Caption:', @Caption COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EPCS_GetDBTags_70.sql CREATE PROCEDURE [dbo].[EPCS_GetDBTags_70]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN DECLARE @DbVerNo int Select @DbVerNo= dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) DECLARE @SegName varchar(10) Select Top 1 @SegName = [dbo].[DbSegment].[SegName] from [dbo].[DbSegment] where [dbo].[DbSegment].[DbVerNo] = @DbVerNo ORDER BY [dbo].[DbSegment].[SeqNo] SELECT a.FieldTag, a.Description2, b.Description As Category, a.IndexType, NewSeqNo=CASE [a].[Category] WHEN 5 THEN 1 ELSE [a].[SeqNo] END FROM [dbo].[DbFieldTag] a INNER JOIN [dbo].[IntValueMap] b ON a.Category =b.FieldCode WHERE a.DbVerNo = @DbVerNo AND b.FieldName='DbFieldTagType' AND a.SegName = @SegName ORDER BY Category, NewSeqNo, a.Description2 END
CREATE PROCEDURE [dbo].[EAUI_GetGroupListForCopy_70](@CustID varchar(10)) AS BEGIN SELECT [dbo].[UserGroup].[GroupID],[dbo].[UserGroup].[GroupName] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustID AND [dbo].[UserGroup].[GroupID] <> 'main' END
--sql content merged from file: \StoredProcedures\EAIP_UpdateProfileParamScalarValue_70.sql CREATE PROCEDURE [dbo].[EAIP_UpdateProfileParamScalarValue_70](@ProfNo int, @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN Declare @Prefix nvarchar(255) Declare @Value nvarchar(4000) select @Prefix= [cpd].[DefValuePrefix] from [dbo].[CustomParamDefaults] cpd join [dbo].[Profile] p on cpd.InterfaceID=p.InterfaceID and cpd.Version=p.Version and cpd.MarketID=p.MarketID and cpd.STMode=p.STMode where p.ProfNo=@ProfNo and [cpd].[ParamNo]=@ParamNo if @Prefix is not null and @Prefix <> '' Begin if (CharIndex(@Prefix, @ParamValue)=1) set @Value=LTrim(Substring(@ParamValue, Len(@Prefix)+1, Len(@ParamValue)-Len(@Prefix))) else set @Value=@ParamValue End else Select @Value=@ParamValue IF (SELECT [b].[DefValue] FROM dbo.Profile AS a INNER JOIN dbo.CustomParamDefaults AS b ON a.InterfaceID=b.InterfaceID AND a.Version=b.Version AND a.MarketID=b.MarketID and a.STMode=b.STMode WHERE a.ProfNo=@ProfNo AND b.ParamNo = @ParamNo) = @Value -- Do not change this, please see Aboo before changing this line -- EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @ProfNo,'P',@ParamNo ELSE EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @ProfNo,'P',@ParamNo,@Value END
/****** Table Parameters: StoredProcedure [dbo].[EAUI_UpdateTblParamInterfaceItemsNoAutoAdd_103] EHPMEBSCOADMIN-735 : Win Security Patch - Limit maximum number of rows in grid to 250 ******/ CREATE PROCEDURE [dbo].[EAUI_UpdateTblParamInterfaceItemsNoAutoAdd_103]( @UserID nvarchar(20),@UserIP varchar(15), @ParamNo int, @InterfaceID varchar(10), @Version varchar(10),@AttacheItemList varchar(8000), @DbUnSelectedList varchar(8000)) AS BEGIN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; BEGIN TRY BEGIN TRANSACTION if (LEN(@AttacheItemList) > 0) INSERT INTO [dbo].[CustomParamTblItemsInterface]([i].[ParamNo],[i].[InterfaceID], [i].[Version],[i].[ItemID]) SELECT @ParamNo,@InterfaceID , @Version, a.Item FROM dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a Left outer join [dbo].[CustomParamTblItemsInterface] i ON a.Item = i.ItemID AND i.ParamNo=@ParamNo AND i.InterfaceID=@InterfaceID AND i.Version=@Version WHERE i.ItemID is null and a.Item<>'' INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'Interface', 'Add Tbl Parameter Item', @ParamNo,@InterfaceID , @Version, a.Item, NULL FROM dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a Left outer join [dbo].[CustomParamTblItemsInterface] i ON a.Item = i.ItemID AND i.ParamNo=@ParamNo AND i.InterfaceID=@InterfaceID AND i.[Version]=@Version WHERE i.ItemID is null -- remove the custom values, if we are deleting the parameter we do not need them -- JIra EADM-3188.Interface Parameter 'Search Modes' : Modified values at interface level are retained after removing item then add item back from global level. delete [dbo].[CustomParamTblInterfaceValues] from [dbo].[CustomParamTblInterfaceValues] i join dbo.EAIF_GetItemTable_70(@DbUnSelectedList,'+') a ON i.ItemID=a.Item and [i].[ParamNo] = @ParamNo AND [i].[InterfaceID]=@InterfaceID ANd [i].[Version]=@Version -- EBSCOadmin EADM-3216 delete [dbo].[CustomParamTblInterfaceSMValues] from [dbo].[CustomParamTblInterfaceSMValues] i join dbo.EAIF_GetItemTable_70(@DbUnSelectedList,'+') a ON i.ItemID=a.Item and [i].[ParamNo] = @ParamNo AND [i].[InterfaceID]=@InterfaceID ANd [i].[Version]=@Version DELETE [dbo].[CustomParamTblItemsInterface] FROM [dbo].[CustomParamTblItemsInterface] i join dbo.EAIF_GetItemTable_70(@DbUnSelectedList,'+') a ON i.ItemID=a.Item AND [i].[ParamNo]=@ParamNo AND [i].[InterfaceID]=@InterfaceID ANd [i].[Version]=@Version --DELETE CustomParamTblItemsInterface --FROM CustomParamTblItemsInterface i -- Left outer join dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a ON -- i.ItemID=a.Item --WHERE a.Item is null AND ParamNo=@ParamNo AND InterfaceID=@InterfaceID ANd [Version]=@Version INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'Interface', 'Delete Tbl Parameter Item', @ParamNo, @InterfaceID , @Version, a.Item, NULL FROM [dbo].[CustomParamTblItemsInterface] i Left outer join dbo.EAIF_GetItemTable_70(@AttacheItemList,'+') a ON i.ItemID=a.Item WHERE a.Item is null AND [i].[ParamNo]=@ParamNo AND [i].[InterfaceID]=@InterfaceID ANd [i].[Version]=@Version COMMIT TRANSACTION END TRY BEGIN CATCH -- Get the error info before any statements are executed SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- If there is an active transaction, roll it back IF (XACT_STATE()) <> 0 BEGIN ROLLBACK TRANSACTION; END; -- Raise the error to the caller RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetDatabasePickupLocationList_141]( @DbVerNo int) AS BEGIN SELECT [dbo].[DbPickupLocation].[LocationID], [dbo].[DbPickupLocation].[DisplayName] FROM dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@DbVerNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceParamEditLevel_161](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ParamName varchar(100), @EditLevel int, @Mode char(1)) AS BEGIN DECLARE @ParamNo INT SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]=@ParamName EXEC [dbo].[EAUI_UpdateInterfaceParamEditLevel_76] @UserID, @UserIP, @InterfaceID, @Version, @ParamNo, @EditLevel, @Mode END
Create PROCEDURE [dbo].[EAIP_GetProfileParamScalarValue_97] (@ProfNo int, @ParamName varchar(100)) AS BEGIN DECLARE @Value nvarchar(4000) SELECT @Value = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,@ParamName) SELECT @Value END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseDocTypes_77] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @DocTypeNo int, @SearchString varchar(1500), @TargetDb varchar(10)) AS BEGIN DECLARE @DocTypeSearchStr varchar(255) DECLARE @DbName varchar(30) DECLARE @DbShortName varchar(10) DECLARE @DocTypeID varchar(10) DECLARE @DocTypeCaption nvarchar(255) SELECT @DocTypeSearchStr= dtl.SearchString, @DocTypeID=dtl.DocTypeID, @DocTypeCaption = dtc.Caption FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo WHERE dtl.DocTypeNo=@DocTypeNo AND dtc.LangCode='en' SELECT @DbShortName=[dbo].[DbList].[DbName], @DbName=[dbo].[DbList].[DbName]+'('+[dbo].[DbList].[DbLabel]+')' FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo IF @DocTypeSearchStr=@SearchString SET @SearchString = null ELSE IF @DbShortName<>@TargetDb BEGIN RAISERROR ('Search String cannot be modified if the target database is different from the main database.',16,1) RETURN END BEGIN TRANSACTION UPDATE [dbo].[DbDocType] SET [dbo].[DbDocType].[SearchString]=@SearchString, [dbo].[DbDocType].[TargetDb]=@TargetDb WHERE [dbo].[DbDocType].[DbVerNo]=@DbVerNo AND [dbo].[DbDocType].[DocTypeNo]=@DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Update DbDocType', @DbName ,@DocTypeID,@DocTypeCaption, @TargetDb,@SearchString COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetDomainFromURL(@URL NVARCHAR(MAX)) RETURNS NVARCHAR(255) AS BEGIN SET @URL = RTRIM(LTRIM(@URL)) --drop url schema SET @URL = CASE WHEN CHARINDEX('http://', @URL) > 0 THEN SUBSTRING(@URL, CHARINDEX('http://', @URL) + LEN('http://'), LEN(@URL)) WHEN CHARINDEX('https://', @URL) > 0 THEN SUBSTRING(@URL, CHARINDEX('https://', @URL) + LEN('https://'), LEN(@URL)) ELSE @URL END --drop the ending after firt / or ? SET @URL = SUBSTRING(@URL, 1, CASE WHEN CHARINDEX('/', @URL) > 0 THEN CHARINDEX('/', @URL) -1 WHEN CHARINDEX('?', @URL) > 0 THEN CHARINDEX('?', @URL) -1 ELSE LEN(@URL) END) --drop www. IF CHARINDEX('www.', @URL) = 1 SET @URL = SUBSTRING(@URL, 1 + LEN('www.'), LEN(@URL)) RETURN @URL END
CREATE PROCEDURE [dbo].[EAUI_GetAdminPlinkUrl_81] AS BEGIN select dbo.EAIF_GetConfigApplicationParamScalarValue_70( 'eadmin','adminPlinkUrl' ) END
CREATE PROCEDURE [dbo].[EACOPY_LoadFromXmlDbInfo_99](@CopyToDbName varchar(10), @CopyToDbLabel varchar(10), @xmlDoc xml, @ExcludeList xml , @AllowObjectUpdate char(1), @AllowCopyAcrossVersions char(1), @UserId varchar(20), @UserIp varchar(15), @verbose char(1)) AS BEGIN SET NOCOUNT ON --Error handling variable declarations DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; --Logging variable declarations DECLARE @Category varchar(50); DECLARE @Activity varchar(100); DECLARE @Param1 varchar(1024); -- variables to receive values from cursor DECLARE @AuthDbName varchar(10); DECLARE @AuthDbLabel varchar(10); DECLARE @AuthDbType smallint; DECLARE @CopyFromDbName varchar(10); DECLARE @CopyFromSourceType char(1); DECLARE @CopyFromDbLabel varchar(10); DECLARE @CopyFromDSFamily varchar(100); DECLARE @CopyToAuthDbName varchar(10); DECLARE @DblistXml xml; DECLARE @FKErrorXml xml; DECLARE @FkErrors bit; BEGIN TRY -- validate if name change will exceed 10 characters and raise error DECLARE @DbNameValidaionMessage varchar(2000); SET @FkErrors = 0; -- Get @CopyToDbVerNo to use in further updates DECLARE @CopyToDbVerNo int; SELECT @CopyToDbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @CopyToDbName AND [dbo].[DbList].[DbLabel] = @CopyToDbLabel; -- @AllowObjectUpdate if N then validate and raise error if CopyToDbName and CopyToDbLabel exist IF (@AllowObjectUpdate = 'N' AND @CopyToDbVerNo IS NOT NULL) BEGIN RAISERROR ('Updates to existing object data is not allowed. Data already exists for DbName %s and DbLabel %s.',16, 1, @CopyToDbName, @CopyToDbLabel); RETURN END -- Version check IF (@AllowCopyAcrossVersions <> 'Y') BEGIN DECLARE @CopyFromEADbVersion varchar(20); DECLARE @CopyToEADbVersion varchar(20); DECLARE @EADbVersion varchar(255); SET @EADbVersion = dbo.EAIF_GetAdminParamValue_70('eaDbVersion'); SELECT @CopyToEADbVersion = LTRIM(SUBSTRING(@EADbVersion, CHARINDEX('--', @EADbVersion)+2, LEN(@EADbVersion)-CHARINDEX('--', @EADbVersion)+2)); -- eadbversion="9.9.25.0" SELECT @CopyFromEADbVersion = s.[object].value('@eadbversion', 'varchar(20)') FROM @xmlDoc.nodes('object') AS s([object]); IF (@CopyFromEADbVersion <> @CopyToEADbVersion) BEGIN RAISERROR ('Source database version %s does not match with targetdatabase version %s, copy request failed.',16, 1, @CopyFromEADbVersion, @CopyToEADbVersion); RETURN END END -- Get DbName from primary node SELECT @CopyFromDbName = s.[DbList].value('@DbName', 'varchar(10)') , @CopyFromSourceType = s.[DbList].value('@SourceType', 'char(1)') FROM @xmlDoc.nodes('object/primary/DbList/r') AS s([DbList]); IF @CopyFromSourceType = 'M' BEGIN RAISERROR ('EA Copy does not allow copying connector databases (SourceType M).',16, 1); RETURN END IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'DbAuthority') BEGIN -- Create a string of all databases that will result in over 10 character DbName on copy SELECT @DbNameValidaionMessage = (SELECT s.[DbList].value('@DbName', 'varchar(10)') + ', ' FROM @xmlDoc.nodes('object/support/DbAuthority/DbList/r') AS s([DbList]) WHERE s.[DbList].value('@DbType', 'smallint') IN (2,7) AND LEN(dbo.EACOPY_GetNewAuthorityDbName_99(@CopyFromDbName , @CopyToDbName , s.[DbList].value('@DbName', 'varchar(10)'))) > 10 FOR XML PATH ('')); IF @DbNameValidaionMessage IS NOT NULL BEGIN RAISERROR ('Following authority databases will result in DB names over 10 characters: %s copy request failed.',16, 1, @DbNameValidaionMessage); RETURN END END -- subset data is only copied if CopyFromDbName and CopyToDbName are the same, if they are different, add DbSubset to @ExcludeList IF (@CopyFromDbName != @CopyToDbName) BEGIN IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'DbSubset') BEGIN IF (@ExcludeList IS NULL) SELECT @ExcludeList = ''; ELSE SET @ExcludeList.modify('insert into (/exclude[1]) ') END END -- if copying 'primary' database which is a subset database, -- verify that parent DbName, DbLabel and DSFamily all exist on target server, otherwise fail with error message IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'DbSubset') BEGIN -- check if the database being copied IS a subset database IF EXISTS (SELECT 1 FROM @xmlDoc.nodes('object/primary/DbList/r/DbSubset/r') AS s([DbList])) BEGIN -- get the physical database info DECLARE @PhysDbName varchar(10); DECLARE @PhysDbLabel varchar(10); --DECLARE @PhysDSFamily varchar(100); DECLARE @SubsetDSFamily varchar(100); -- get the parent DbName and DbLabel and Subset DSFamilyName and verify that a record exists for those values SELECT @PhysDbName = s.[DbList].value('@PhysDbName', 'varchar(10)') , @PhysDbLabel = s.[DbList].value('@PhysDbLabel', 'varchar(10)') FROM @xmlDoc.nodes('object/primary/DbList/r/DbSubset/r') AS s([DbList]); SELECT @SubsetDSFamily = s.[DbList].value('@DSFamilyName', 'varchar(100)') FROM @xmlDoc.nodes('object/primary/DbList/r') AS s([DbList]); -- make sure the parent db exists IF NOT EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @PhysDbName AND [dbo].[DbList].[DbLabel] = @CopyToDbLabel AND [dbo].[DbList].[DSFamilyName] = @SubsetDSFamily) BEGIN RAISERROR ('Physical database for this subset database should exist in same label from same DS Family on target server: %s-%s for DSFamily %s.',16, 1, @PhysDbName, @CopyToDbLabel, @SubsetDSFamily); RETURN END -- if copying to the same name, update the parent label in the XML IF (@CopyFromDbName = @CopyToDbName) BEGIN SET @xmlDoc.modify('replace value of (object/primary/DbList/r/DbSubset/r/@PhysDbLabel)[1] with sql:variable("@CopyToDbLabel")'); END END END BEGIN TRANSACTION SELECT @Category = 'DbInfo Copy'; SELECT @Param1 = 'From DbName: ' + @CopyFromDbName + ' to DbName:' + @CopyToDbName + ' DbLabel: ' + @CopyToDbLabel; SELECT @Activity = 'Begin Create/Update DbInfo'; EXECUTE [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, @Category, @Activity, @Param1, NULL, NULL, NULL; IF (@verbose = 'Y') BEGIN SELECT @Activity = 'Create/Update DbInfo'; EXECUTE [dbo].[EACOPY_LogActivityXml_99] @UserId, @UserIp, @Category, @Activity, @xmlDoc, NULL; END IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'dbauthority') BEGIN -- Declare cursor to process authority records DECLARE DbAuthority_cursor CURSOR FOR SELECT s.[DbList].value('@DbName', 'varchar(10)'), s.[DbList].value('@DbLabel', 'varchar(10)'), s.[DbList].value('@DbType', 'smallint') FROM @xmlDoc.nodes('object/support/DbAuthority/DbList/r') AS s([DbList]) FOR READ ONLY; OPEN DbAuthority_cursor FETCH NEXT FROM DbAuthority_cursor INTO @AuthDbName, @AuthDbLabel, @AuthDbType; WHILE @@FETCH_STATUS = 0 BEGIN -- SELECT @AuthDbName, @AuthDbLabel, @AuthDbType; -- find the @CopyToAuthDbName using @AuthDbName for @AuthDbType 2 and 7 IF (@AuthDbType = 2 OR @AuthDbType = 7) BEGIN -- Rename logic -- Find CopyFromDbName -- If @AuthDbName starts with CopyFromDbName then remove prefix -- do not remove prefix, add prefix CopyToDbName SET @CopyToAuthDbName = dbo.EACOPY_GetNewAuthorityDbName_99(@CopyFromDbName , @CopyToDbName , @AuthDbName); END ELSE SET @CopyToAuthDbName = @AuthDbName; -- query object/support/DbAuthority/DbList SELECT @DblistXml =@xmlDoc.query('object/support/DbAuthority/DbList[r/@DbName=sql:variable("@AuthDbName")][r/@DbLabel=sql:variable("@AuthDbLabel")]'); -- Call procedure to load dblist for authority from xml EXEC dbo.EACOPY_AUTO_LoadFromXmlDbList @CopyToAuthDbName, @CopyToDbLabel, @DblistXml,@ExcludeList, @FKErrorXml OUT; IF (@FKErrorXml IS NOT NULL) BEGIN SET @FkErrors = 1; SELECT @Activity = 'DbInfo: Could not copy some records because required data does not exist in parent table(s).'; --DbInfo: Records with foreign Key Errors EXECUTE [dbo].[EACOPY_LogActivityXml_99] @UserId, @UserIp, @Category, @Activity, @DblistXml, @FKErrorXml; SELECT @FKErrorXml = NULL; END -- Get the next authority record. FETCH NEXT FROM DbAuthority_cursor INTO @AuthDbName, @AuthDbLabel, @AuthDbType; END CLOSE DbAuthority_cursor DEALLOCATE DbAuthority_cursor END -- Retrieve DbList node for primary SELECT @DblistXml =@xmlDoc.query('object/primary/DbList'); EXEC dbo.EACOPY_AUTO_LoadFromXmlDbList @CopyToDbName, @CopyToDbLabel, @DblistXml,@ExcludeList, @FKErrorXml OUT; -- Get @CopyToDbVerNo to use in further updates SELECT @CopyToDbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @CopyToDbName AND [dbo].[DbList].[DbLabel] = @CopyToDbLabel; -- Update DSFamilyName of db being copied if CopyFromDbName matches DSFamilyName UPDATE [dbo].[DbList] SET [dbo].[DbList].[DSFamilyName] = @CopyToDbName FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @CopyToDbVerNo AND [dbo].[DbList].[DSFamilyName] = @CopyFromDbName; -- Update DSFamilyName for authority databases of DbType 2 and 7 UPDATE [dbo].[DbList] SET [dbo].[DbList].[DSFamilyName] = @CopyToDbName FROM [dbo].[DbList] INNER JOIN [dbo].[DbAuthority] da ON da.AuthDbVerNo = [dbo].[DbList].[DbVerNo] WHERE [dbo].[DbList].[DbType] in (2,7) AND da.MainDbVerNo = @CopyToDbVerNo; -- Update SegName for CopyToDb and associated authority databases IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'dbsegment') BEGIN UPDATE [dbo].[DbSegment] SET [dbo].[DbSegment].[SegName] = STUFF([dbo].[DbSegment].[SegName], 1, LEN(@CopyFromDbName), @CopyToDbName) FROM [dbo].[DbSegment] WHERE CHARINDEX(@CopyFromDbName, [dbo].[DbSegment].[SegName]) = 1 AND ([dbo].[DbSegment].[DbVerNo] = @CopyToDbVerNo OR [dbo].[DbSegment].[DbVerNo] IN ( SELECT [dbo].[DbAuthority].[AuthDbVerNo] FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @CopyToDbVerNo ) ) END -- Update Publisher (Authority records do not have DbPublisher records) IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'dbpublisher') BEGIN UPDATE [dbo].[DbPublisher] SET [dbo].[DbPublisher].[DbName] = UPPER(@CopyToDbName) WHERE [dbo].[DbPublisher].[DbVerNo] = @CopyToDbVerNo; END -- Update DbParamScalarValues subjectHeadingDbName and issueDbName -- If they param value matches CopyFromDbName IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'dbparamscalarvalues') BEGIN UPDATE sv SET [sv].[ParamValue] = @CopyToDbName FROM [dbo].[DbParamScalarValues] sv INNER JOIN [dbo].[DbParamList] l ON l.ParamNo = sv.ParamNo WHERE [l].[ParamName] IN ('subjectHeadingDbName', 'issueDbName') AND [sv].[ParamValue] = @CopyFromDbName AND ([sv].[DbVerNo] = @CopyToDbVerNo OR [sv].[DbVerNo] IN ( SELECT [dbo].[DbAuthority].[AuthDbVerNo] FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @CopyToDbVerNo ) ) END -- if copying subset databases that are part of the parent db record IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'DbSubset') BEGIN -- first copy the subset authorities IF NOT EXISTS(SELECT 1 FROM @ExcludeList.nodes('exclude/table') AS s([Exclude]) WHERE s.[Exclude].value('@name', 'varchar(255)') = 'dbauthority') BEGIN -- Declare cursor to process authority records DECLARE DbAuthority_cursor CURSOR FOR SELECT s.[DbList].value('@DbName', 'varchar(10)'), s.[DbList].value('@DbLabel', 'varchar(10)'), s.[DbList].value('@DbType', 'smallint') FROM @xmlDoc.nodes('subsetAuthority/DbAuthority/DbList/r') AS s([DbList]) FOR READ ONLY; OPEN DbAuthority_cursor FETCH NEXT FROM DbAuthority_cursor INTO @AuthDbName, @AuthDbLabel, @AuthDbType; WHILE @@FETCH_STATUS = 0 BEGIN -- SELECT @AuthDbName, @AuthDbLabel, @AuthDbType; -- find the @CopyToAuthDbName using @AuthDbName for @AuthDbType 2 and 7 --IF (@AuthDbType = 2 OR @AuthDbType = 7) --BEGIN -- -- Rename logic -- -- Find CopyFromDbName -- -- If @AuthDbName starts with CopyFromDbName then remove prefix -- -- do not remove prefix, add prefix CopyToDbName -- SET @CopyToAuthDbName = dbo.EACOPY_GetNewAuthorityDbName_99(@CopyFromDbName , @CopyToDbName , @AuthDbName); --END --ELSE -- don't need to rename per Rakesh SET @CopyToAuthDbName = @AuthDbName; -- query object/support/DbAuthority/DbList SELECT @DblistXml =@xmlDoc.query('subsetAuthority/DbAuthority/DbList[r/@DbName=sql:variable("@AuthDbName")][r/@DbLabel=sql:variable("@AuthDbLabel")]'); -- Call procedure to load dblist for authority from xml EXEC dbo.EACOPY_AUTO_LoadFromXmlDbList @CopyToAuthDbName, @CopyToDbLabel, @DblistXml,@ExcludeList, @FKErrorXml OUT; IF (@FKErrorXml IS NOT NULL) BEGIN SET @FkErrors = 1; SELECT @Activity = 'DbInfo: Could not copy some records because required data does not exist in parent table(s).'; --DbInfo: Records with foreign Key Errors EXECUTE [dbo].[EACOPY_LogActivityXml_99] @UserId, @UserIp, @Category, @Activity, @DblistXml, @FKErrorXml; SELECT @FKErrorXml = NULL; END -- Get the next authority record. FETCH NEXT FROM DbAuthority_cursor INTO @AuthDbName, @AuthDbLabel, @AuthDbType; END CLOSE DbAuthority_cursor DEALLOCATE DbAuthority_cursor END -- next copy the subset databases for the primary database DECLARE @SubsetDbName varchar(10); DECLARE @SubsetDbLabel varchar(10); --DECLARE @SubsetDSFamily varchar(100); -- if allowing object update, remove any existing subset databases IF (@AllowObjectUpdate = 'Y') BEGIN -- remove all the subset dbs (before adding any back) DELETE FROM [dbo].[DbSubset] WHERE [dbo].[DbSubset].[PhysDbVerNo] = @CopyToDbVerNo END DECLARE DbSubset_cursor CURSOR FOR SELECT s.[DbList].value('@DbName', 'varchar(10)'), s.[DbList].value('@DbLabel', 'varchar(10)'), s.[DbList].value('@DSFamilyName', 'varchar(100)') FROM @xmlDoc.nodes('object/subset/DbSubset/DbList/r') AS s([DbList]) FOR READ ONLY; OPEN DbSubset_cursor; FETCH NEXT FROM DbSubset_cursor INTO @SubsetDbName, @SubsetDbLabel, @SubsetDSFamily; WHILE @@FETCH_STATUS = 0 BEGIN -- check that subset db doesn't already exist if we're not allowing overrides IF (@AllowObjectUpdate = 'N') BEGIN IF EXISTS (SELECT [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @SubsetDbName AND [dbo].[DbList].[DbLabel] = @CopyToDbLabel) --@SubsetDbLabel) BEGIN RAISERROR ('Updates to existing object data is not allowed. Data already exists for DbName %s and DbLabel %s which is a subset database for %s-%s',16, 1, @SubsetDbName, @SubsetDbLabel, @CopyToDbName, @CopyToDbLabel); RETURN END END -- query object/subset/DbSubset/DbList SELECT @DblistXml =@xmlDoc.query('object/subset/DbSubset/DbList[r/@DbName=sql:variable("@SubsetDbName")][r/@DbLabel=sql:variable("@SubsetDbLabel")]'); -- if the copy to name is the same as the copy from name, replace the PhysDbLabel in the subset db XML with the CopyToDbLabel IF (@CopyFromDbName = @CopyToDbName) BEGIN --SET @DblistXml.modify('replace value of (/DbList/r/DbSubset/r/@PhysDbName)[1] with sql:variable("@CopyToDbName")'); SET @DblistXml.modify('replace value of (/DbList/r/DbSubset/r/@PhysDbLabel)[1] with sql:variable("@CopyToDbLabel")'); END -- perform the copy EXEC dbo.EACOPY_AUTO_LoadFromXmlDbList @SubsetDbName, @CopyToDbLabel, @DblistXml, @ExcludeList, @FKErrorXml OUT; -- not sure if the DSFamily will ever need to be updated because subset dbs only get copied if copytoname = copyfromname -- Get @CopyToDbVerNo to use in further updates SELECT @CopyToDbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @SubsetDbName AND [dbo].[DbList].[DbLabel] = @CopyToDbLabel; -- Update DSFamilyName of db being copied if CopyFromDbName matches DSFamilyName UPDATE [dbo].[DbList] SET [dbo].[DbList].[DSFamilyName] = @CopyToDbName FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @CopyToDbVerNo AND [dbo].[DbList].[DSFamilyName] = @CopyFromDbName; -- Update DSFamilyName for authority databases of DbType 2 and 7 UPDATE [dbo].[DbList] SET [dbo].[DbList].[DSFamilyName] = @CopyToDbName FROM [dbo].[DbList] INNER JOIN [dbo].[DbAuthority] da ON da.AuthDbVerNo = [dbo].[DbList].[DbVerNo] WHERE [dbo].[DbList].[DbType] in (2,7) AND da.MainDbVerNo = @CopyToDbVerNo; IF (@FKErrorXml IS NOT NULL) BEGIN SET @FkErrors = 1; SELECT @Activity = 'DbInfo: Could not copy some subset records because required data does not exist in parent table(s).'; --DbInfo: Records with foreign Key Errors EXECUTE [dbo].[EACOPY_LogActivityXml_99] @UserId, @UserIp, @Category, @Activity, @DblistXml, @FKErrorXml; SELECT @FKErrorXml = NULL; END -- Get the next subset record. FETCH NEXT FROM DbSubset_cursor INTO @SubsetDbName, @SubsetDbLabel, @SubsetDSFamily; END -- while CLOSE DbSubset_cursor DEALLOCATE DbSubset_cursor END -- if IF (@FKErrorXml IS NOT NULL) BEGIN SET @FkErrors = 1; SELECT @Activity = 'DbInfo: Could not copy some records because required data does not exist in parent table(s).'; --DbInfo: Records with foreign Key Errors EXECUTE [dbo].[EACOPY_LogActivityXml_99] @UserId, @UserIp, @Category, @Activity, @DblistXml, @FKErrorXml; SELECT @FKErrorXml = NULL; END SELECT @Activity = 'End Create/Update DbInfo'; EXECUTE [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, @Category, @Activity, @Param1, NULL, NULL, NULL; COMMIT TRANSACTION --ROLLBACK TRANSACTION DECLARE @message xml; IF (@FkErrors = 0) Select @message = '
success '; ELSE Select @message = 'DbInfo: Could not copy some records because required data does not exist in parent table(s). Details are available in the log. '; SELECT @message; END TRY BEGIN CATCH -- Get the error info before any statements are executed SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- If there is an active transaction, roll it back IF (XACT_STATE()) <> 0 BEGIN ROLLBACK TRANSACTION; END; IF (SELECT CURSOR_STATUS('global','DBAuthority_cursor')) >=0 BEGIN select 'deallocate authority cursor' CLOSE DBAuthority_cursor DEALLOCATE DBAuthority_cursor END IF (SELECT CURSOR_STATUS('global','DBSubset_cursor')) >=0 BEGIN select 'deallocate subset cursor' CLOSE DBSubset_cursor DEALLOCATE DBSubset_cursor END -- Raise the error to the caller RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetContentVerticalByID_162] ( @ContentVerticalID VARCHAR(20)) AS BEGIN SELECT c.ContentVerticalID, c.ContentVerticalName, c.Description, c.ExternalSource, c.ExternalIndexName, CASE WHEN icvt.IntfCVTypeNo IS NULL THEN 0 ELSE 1 END as 'IntFlag' FROM dbo.ContentVerticalType c LEFT OUTER JOIN [dbo].[InterfaceCVType] icvt ON c.ContentVerticalNo = icvt.ContentVerticalNo WHERE c.ContentVerticalID=@ContentVerticalID GROUP BY c.ContentVerticalID, c.ContentVerticalName, c.Description, c.ExternalSource, c.ExternalIndexName, CASE WHEN icvt.IntfCVTypeNo IS NULL THEN 0 ELSE 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetSiteListSortedByCustID_70] ( @ParentID as varchar(20), @Origin as varchar(100) = '') AS BEGIN SELECT TOP 1000 b.CustID, b.CustName FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Customer] b ON a.ChildID=b.CustID WHERE a.ParentID=@ParentID AND a.ChildID<>[a].[ParentID] AND b.CustID >=@Origin Order By b.CustID END
Create Procedure [dbo].[EAUI_AttachInterfaceDbFeature_103](@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @FeatureNoList varchar(max)) as Begin Begin try Begin transaction Insert [dbo].[InterfaceDbFeatures] ([dbo].[InterfaceDbFeatures].[InterfaceID], [dbo].[InterfaceDbFeatures].[Version], [dbo].[InterfaceDbFeatures].[FeatureNo]) select @InterfaceID, @Version, CONVERT(smallint,a.Item) from dbo.EAIF_GetItemTable_70(@FeatureNoList,',') a DECLARE @Category varchar(20) DECLARE @Names varchar(max) set @Names='' SELECT @Category=[fl].[Category], @Names=@Names + [fl].[FeatureName] + ', 'FROM [dbo].[FeatureList] fl join dbo.EAIF_GetItemTable_70(@FeatureNoList,',') a on fl.FeatureNo=a.Item EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Attach Interface DbFeatures', @Category, @Names, @InterfaceID, @Version Commit transaction End try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch End
CREATE PROCEDURE [dbo].[GetCustomersByCountryCodeSubDivisionId] (@ProductContext VARCHAR(10), @CountryCode VARCHAR(10), @SubDivisionId NVARCHAR(100), @PageIdx VARCHAR(10), @PageSize VARCHAR(10)) AS BEGIN DECLARE @NewPageIdx INT, @NewPageSize INT --Check if the country code is passed IF (@CountryCode IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@CountryCode, '')))) <= 0) BEGIN RAISERROR (N'Country code is required', 16, 1) RETURN END --Check if the page index is passed IF (LEN(RTRIM(LTRIM(COALESCE(@PageIdx, '')))) <= 0) BEGIN RAISERROR (N'Page Index is required', 16, 1) RETURN END --Check if the page size is passed IF (LEN(RTRIM(LTRIM(COALESCE(@PageSize, '')))) <= 0) BEGIN RAISERROR (N'Page Size is required', 16, 1) RETURN END --Check if the page index is not a numeric IF (ISNUMERIC(@PageIdx)=0) BEGIN RAISERROR (N'Page Index should be numeric', 16, 1) RETURN END --Check if the page size is not a numeric IF (ISNUMERIC(@PageSize)=0) BEGIN RAISERROR (N'Page Size should be numeric', 16, 1) RETURN END SET @NewPageIdx = CAST(@PageIdx AS INT) SET @NewPageSize = CAST(@PageSize AS INT) --** Check the page index and size IF @NewPageIdx < 1 OR @NewPageSize < 1 BEGIN RAISERROR ('PageIndex and PageSize can not be less than 1', 16, 1); RETURN END --Check if the product context is passed IF (@ProductContext IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@ProductContext, '')))) <= 0) BEGIN RAISERROR (N'Product Context is required', 16, 1) RETURN END IF @ProductContext='ebma' SET @ProductContext='ebookMob' ELSE IF @ProductContext='flipma' SET @ProductContext='flipster' IF EXISTS (SELECT 1 FROM [dbo].[CustAddress] WHERE [dbo].[CustAddress].[CountryID]=@CountryCode AND [dbo].[CustAddress].[State]=@SubDivisionId) OR @SubDivisionId<>'' WITH SubDivisionsCTE as ( SELECT Distinct ROW_NUMBER() over( order by c.CustName) as seq , c.CustID, c.CustName , count(c.CustID) OVER() AS 'TotalCount' FROM [dbo].[Customer] c WITH (NOLOCK) JOIN dbo.CustAddress ca ON c.CustID=ca.CustID JOIN dbo.Country ct ON ct.CountryID=ca.CountryID JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE ca.CountryID=@CountryCode AND d.Product=@ProductContext AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND ca.State= @SubDivisionId AND c.CustType <> 'I' ) SELECT [SubDivisionsCTE].[CustID], [SubDivisionsCTE].[CustName], [SubDivisionsCTE].[TotalCount] FROM SubDivisionsCTE WHERE [SubDivisionsCTE].[seq] between (@NewPageIdx-1) * @NewPageSize+1 and ((@NewPageIdx-1) * @NewPageSize +(@NewPageSize)); ELSE WITH NonSubDivisionsCTE as ( SELECT Distinct ROW_NUMBER() over( order by c.CustName) as seq , c.CustID, c.CustName , count(c.CustID) OVER() AS 'TotalCount' FROM [dbo].[Customer] c WITH (NOLOCK) JOIN dbo.CustAddress ca ON c.CustID=ca.CustID JOIN dbo.Country ct ON ct.CountryID=ca.CountryID JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE ca.CountryID=@CountryCode AND d.Product=@ProductContext AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND c.CustType <> 'I' ) SELECT [NonSubDivisionsCTE].[CustID], [NonSubDivisionsCTE].[CustName], [NonSubDivisionsCTE].[TotalCount] FROM NonSubDivisionsCTE WHERE [NonSubDivisionsCTE].[seq] between (@NewPageIdx-1) * @NewPageSize+1 and ((@NewPageIdx-1) * @NewPageSize +(@NewPageSize)) END
CREATE PROCEDURE [dbo].[EAIP_AddUpdateSearchTagFallbackDefaults_102] ( @SearchTag VARCHAR(20), @SeqNo INT, @Description NVARCHAR(255), @FallBackBehavior VARCHAR(2), @mode VARCHAR(1) ) AS BEGIN if (@mode = 'A') BEGIN -- note: SearchTagNo is an identity column and will be generated by server. INSERT INTO [dbo].[SearchTagFallbackDefaults] ( [dbo].[SearchTagFallbackDefaults].[SearchTag], [dbo].[SearchTagFallbackDefaults].[SeqNo], [dbo].[SearchTagFallbackDefaults].[Description], [dbo].[SearchTagFallbackDefaults].[FallBackBehavior]) VALUES (@SearchTag, @SeqNo, @Description, @FallBackBehavior) END ELSE if (@mode = 'U') BEGIN UPDATE [dbo].[SearchTagFallbackDefaults] SET [dbo].[SearchTagFallbackDefaults].[SeqNo] = @SeqNo, [dbo].[SearchTagFallbackDefaults].[Description] = @Description, [dbo].[SearchTagFallbackDefaults].[FallBackBehavior] = @FallBackBehavior WHERE [dbo].[SearchTagFallbackDefaults].[SearchTag] = @SearchTag -- not SearchTagNo. END END
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitleListByTitle_103_KB] ( @ColNo int, @Origin as nvarchar(430) = '', @StartRowIndex int = 1, @EndRowIndex int = 11) AS BEGIN DECLARE @SharedColNo int SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM [dbo].[Collection] Where [dbo].[Collection].[ColNo]=@ColNo IF @SharedColNo<>0 SELECT @ColNo=@SharedColNo DECLARE @RecCount int = 0; SET @Origin = LTRIM(RTRIM(@Origin)) if (@StartRowIndex = 1) BEGIN if (@Origin = '') SELECT @RecCount = count(1) FROM [dbo].[LocalTitle] l WHERE l.ColNo = @ColNo ELSE SELECT @RecCount = count(1) FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo and m.Title like @Origin + N'%' END IF @RecCount > 10000 -- return empty recordset, returning single record with empty values will not work because it will have record count of 1. SELECT l.ColNo, m.TitleNo, m.Title, m.ISSN FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE 1 = 0 ELSE if (@Origin = '') SELECT [TEMPMO].[ColNo], [TEMPMO].[TitleNo], [TEMPMO].[Title], [TEMPMO].[ISSN] FROM ( SELECT TOP (@EndRowIndex) l.ColNo, m.TitleNo, m.Title, m.ISSN,ROW_NUMBER() OVER (ORDER BY m.Title) as RowNumber FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m with (index(PK_MasterTitle)) ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo --and m.Title >= @Origin and m.Title like @Origin + N'%' ) as TEMPMO where [TEMPMO].[RowNumber] >= @StartRowIndex option (maxdop 8) else SELECT [TEMPMO].[ColNo], [TEMPMO].[TitleNo], [TEMPMO].[Title], [TEMPMO].[ISSN] FROM ( SELECT TOP (@EndRowIndex) l.ColNo, m.TitleNo, m.Title, m.ISSN,ROW_NUMBER() OVER (ORDER BY m.Title) as RowNumber FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m with (index(IX_MasterTitle_Title_Inc_TitleNo)) ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo --and m.Title >= @Origin and m.Title like @Origin + N'%' ) as TEMPMO where [TEMPMO].[RowNumber] >= @StartRowIndex option (maxdop 8) END
CREATE PROCEDURE EATL_UpdateGlobalTopic_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,TopicID VARCHAR(10) ,Caption NVARCHAR(255) ) INSERT INTO #Objects ( TopicID ,Caption ) SELECT m.c.value('(./TopicId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@TopicID VARCHAR(10) ,@Caption NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @TopicID = TopicID ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateGlobalTopic_77] @UserID ,@UserIP ,@TopicID ,@Caption ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
--sql content merged from file: \StoredProcedures\EPCS_GetDbTargets_78.sql CREATE PROCEDURE [dbo].[EPCS_GetDbTargets_78] (@DbName varchar(10)) AS BEGIN DECLARE @DbVerNo int --Get DbVerNo SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName and [dbo].[DbList].[DbLabel] = 'live' SELECT dl.DbName AS ShortDbName, tt.TargetType, dst.SLCollID, tt.Category FROM [dbo].[DbSourceTarget] dst INNER JOIN [dbo].[DbList] dl ON dst.TargetDbNo = dl.DbVerNo INNER JOIN [dbo].[DbSourceTargetTypeList] tt ON tt.TargetType = dst.TargetType WHERE dst.SourceDbNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetGroupParamScalarValue_70]( @CustID varchar(10), @GroupID varchar(10), @ParamName varchar(100) ) AS BEGIN SELECT dbo.EAIF_GetGroupParamScalarValue_70(@CustID,@GroupID,@ParamName) END
CREATE PROCEDURE [dbo].[EAIP_UpdateProfileParamXmlValue_70]( @UserID VARCHAR(20), @UserIP VARCHAR(15), @ProfNo int, @ParamNo int, @ItemName varchar(255),@ParamValue nvarchar(max)) AS BEGIN EXEC [dbo].[EAIP_UpdateCustomParamXmlValue_70] @ProfNo,'P',@ParamNo,@ItemName,@ParamValue EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile', 'Update XML profile parameter', @ProfNo, @ParamNo, @ItemName,@ParamValue END
CREATE PROCEDURE [dbo].[EAUI_UpdateTblParamItemDbs_101]( @UserID nvarchar(20),@UserIP varchar(15), @ParamNo int, @ItemId varchar(20),@DbList varchar(8000)) AS BEGIN Declare @FieldNo int SELECT @FieldNo = [dbo].[CustomParamXmlFields].[FieldNo] from [dbo].[CustomParamXmlFields] Where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlFields].[FieldName]='db' BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMDValues]([v].[ParamNo],[v].[ItemID],[v].[FieldNo],[v].[DbName]) SELECT @ParamNo,@ItemID,@FieldNo, a.Item FROM dbo.EAIF_GetItemTable_70(@DbList,'+') a Left outer join [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON a.Item = v.DbName AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo WHERE v.DbName is null INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'CustomParamTblGlobalDefaultSDValues', 'Add Database to Parameter Item', @ParamNo, @FieldNo, @ItemID, a.Item, NULL FROM dbo.EAIF_GetItemTable_70(@DbList,'+') a Left outer join [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON a.Item = v.DbName AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo WHERE v.DbName is null DELETE [dbo].[CustomParamTblGlobalDefaultSMDValues] FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] v Left outer join dbo.EAIF_GetItemTable_70(@DbList,'+') a ON v.DbName=a.Item WHERE a.Item is null AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'CustomParamTblGlobalDefaultSDValues', 'Delete Database From Parameter Item', @ParamNo, @FieldNo, @ItemID, v.DbName, NULL FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] v Left outer join dbo.EAIF_GetItemTable_70(@DbList,'+') a ON v.DbName=a.Item WHERE a.Item is null AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetDatabasePublisherList_81] AS BEGIN SELECT Distinct [dbo].[DbPublisher].[PubID], [dbo].[DbPublisher].[PublisherName] FROM [dbo].[DbPublisher] WHERE Len(ISNULL([dbo].[DbPublisher].[PubID],''))>0 AND Len(ISNULL([dbo].[DbPublisher].[PublisherName],N'')) > 0 ORDER BY [dbo].[DbPublisher].[PublisherName] END
CREATE PROCEDURE [dbo].[EAIP_UpdateInterfaceToolbarItem_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ItemName VARCHAR(50), @Category VARCHAR(255), @Align VARCHAR(10), @Image VARCHAR(255), @Caption NVARCHAR(255), @LangCode VARCHAR(10) ) AS BEGIN DECLARE @IntfToolbarItem INT IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR ('Interface-Version %s-%s does not exist.', 16, 1, @InterfaceID, @Version) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version AND [dbo].[InterfaceToolbar].[ItemName]=@ItemName) BEGIN RAISERROR ('Interface-Version %s-%s does not have toolbar item %s attached to it.',16,1,@InterfaceID,@Version,@ItemName) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode) BEGIN RAISERROR ('The Language Code %s does not exist.',16,1,@LangCode) RETURN END SELECT @IntfToolbarItem=[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version AND [dbo].[InterfaceToolbar].[ItemName]=@ItemName EXEC [dbo].[EAUI_UpdateInterfaceToolbarItem_77] @UserID, @UserIP, @IntfToolbarItem, @Category, @Align, @Image, @Caption, @LangCode END
CREATE PROCEDURE [dbo].[EAIP_GetProfileParamValidValues_153] (@CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @ParamName varchar(100)) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char DECLARE @ProfNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID) BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] p LEFT OUTER JOIN [dbo].[CustomParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[CustomParamList] p LEFT OUTER JOIN [dbo].[CustomParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName AND [d].[EditControl] NOT IN ('RadioButton', 'DropDownList')) BEGIN RAISERROR('The Parameter (%s) is not either a Dropdown or RadioButton control type.', 16,-1, @ParamName) RETURN END SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID], @STMode = [dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT cpl.ParamNo ,cpl.ParamName ,cpe.PromptText AS [Description] ,cpl.ParamType ,cpl.ParamLevel ,ISNULL(ISNULL(cps.ParamValue,cpd.DefValue),cpl.DefValue) AS Value ,cpe.EditGroup ,cpe.EditSubGroup ,cpe.ValueTemplate ,cpe.EditControl ,ISNULL(cpd.DefValue,'') AS DefValue ,@ProfNo AS ProfNo ,ipl.InterfaceID FROM [dbo].[CustomParamList] cpl JOIN [dbo].[CustomParamEditDetail] cpe ON cpl.ParamNo=cpe.ParamNo --AND cpl.ParamLevel='P' LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] cps ON cps.TargetNo=@ProfNo AND cps.ParamLevel='P' AND cpl.ParamNo=cps.ParamNo LEFT JOIN [dbo].[InterfaceParamList] ipl ON cpl.ParamNo=ipl.ParamNo WHERE cpl.ParamName=@ParamName and ipl.InterfaceID=@InterfaceID AND ipl.Version=@Version AND ipl.EditLevel<>-1 AND cpe.EditControl <> '' AND cpl.ParamType NOT IN ('X','T','D') END
--sql content merged from file: \StoredProcedures\EAUI_UpdateDatabaseFieldTag_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseFieldTag_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @FieldTag varchar(2), @Description nvarchar(200), @IndexType varchar(10), @Category int, @FieldNumbers varchar(255), @ThesNumber int=null) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Field', 'Segment:', @SegName,'Field:',@FieldTag UPDATE [dbo].[DbFieldTag] SET [dbo].[DbFieldTag].[Description2]=@Description,[dbo].[DbFieldTag].[IndexType]=@IndexType,[dbo].[DbFieldTag].[Category]=@Category, [dbo].[DbFieldTag].[FieldNumbers]=@FieldNumbers,[dbo].[DbFieldTag].[ThesNumber]=@ThesNumber WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName AND [dbo].[DbFieldTag].[FieldTag]=@FieldTag END
CREATE FUNCTION [dbo].[EAIF_GetExpanderCaptions_70]( @ProfNo int, @ControlName varchar(50) ) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @Captions nvarchar(MAX) SET @Captions='' SELECT @Captions = @Captions + ''+IsNull(p.Caption,g.DefCaption)+' ' FROM [dbo].[GlobalExpanderCaption] g LEFT OUTER JOIN [dbo].[ProfExpanderCaption] p ON g.ControlName = p.ControlName AND g.LangCode=p.LangCode AND p.ProfNo = @ProfNo WHERE g.ControlName = @ControlName RETURN @Captions END
--sql content merged from file: \StoredProcedures\EAUI_GetAllCustProfiles_92.sql CREATE PROCEDURE [dbo].[EAUI_GetAllCustProfiles_92] (@ProfNo int, @DbVerNo int) AS Declare @CustID varchar(10) Select @CustID=[dbo].[Profile].[CustID] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo SELECT a.ProfNo,a.DbVerNo FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] b ON b.ProfNo = a.ProfNo where a.DbVerNo=@DbVerNo and b.CustID=@CustID AND (a.Mode is null OR (a.Mode<>'T' AND a.Mode<>'X')) AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) order by b.ProfNo
CREATE PROCEDURE [dbo].[EADD_DeleteDatabaseByName_89](@UserID varchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel IF @@ROWCOUNT < 1 BEGIN RAISERROR ('Invalid database name and label: %s.%s', 16, -1, @DbName, @DbLabel) RETURN END DECLARE @Recs2Delete TABLE (DbVerNo int) INSERT INTO @Recs2Delete SELECT adb1.AuthDbVerNo FROM [dbo].[DbAuthority] adb1 INNER JOIN [dbo].[DbAuthority] adb2 ON adb1.AuthDbVerNo = adb2.AuthDbVerNo WHERE adb1.MainDbVerNo = @DbVerNo GROUP BY adb1.AuthDbVerNo HAVING Count(adb2.MainDbVerNo) <= 1 DELETE FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @DbVerNo DELETE FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] IN (SELECT DbVerNo FROM @Recs2Delete) EXEC [dbo].[EAIP_DeleteDatabase_70] @DbVerNo END
CREATE PROCEDURE [dbo].[EAIP_GetContentVerticalList_162] ( @startRowIndex INT=1, -- = 1+pagesize*n (n = 0, 1, 2,...) @endRowIndex INT=21 -- Request 1 page plus one row of data, assuming pagesize is 20 ) AS BEGIN SELECT * FROM ( SELECT TOP(@endRowIndex) ROW_NUMBER() OVER(ORDER BY [c].[ContentVerticalID]) AS RowNumber, c.ContentVerticalID, c.ContentVerticalName, c.Description, c.ExternalSource, c.ExternalIndexName, MAX(CASE WHEN icvt.IntfCVTypeNo IS NULL AND dbcvf.DbCVFilterNo IS NULL THEN 0 ELSE 1 END) as 'IntFlag' FROM dbo.ContentVerticalType c LEFT OUTER JOIN [dbo].[InterfaceCVType] icvt ON c.ContentVerticalNo = icvt.ContentVerticalNo LEFT OUTER JOIN dbo.ContentVerticalFilter cvf ON c.ContentVerticalNo=cvf.ContentVerticalNo LEFT OUTER JOIN dbo.DbCVFilter dbcvf ON cvf.ContentVerticalFilterNo = dbcvf.ContentVerticalFilterNo GROUP BY c.ContentVerticalID, c.ContentVerticalName, c.Description, c.ExternalSource, c.ExternalIndexName) a WHERE [a].[RowNumber] >= @startRowIndex ORDER BY [a].[ContentVerticalID] END
CREATE PROCEDURE [dbo].[EAUI_GetSiteListSortedByCustName_70] ( @ParentID as varchar(20), @Origin as varchar(100) = '') AS BEGIN SELECT TOP 1000 b.CustID, b.CustName FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Customer] b ON a.ChildID=b.CustID WHERE a.ParentID=@ParentID AND a.ChildID<>[a].[ParentID] AND b.CustName >=@Origin Order By b.CustName END
CREATE PROCEDURE [dbo].[EAUI_AttachInterfaceExpander_90] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @ControlNameList varchar(1000)) AS BEGIN BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceExpander] ([i].[InterfaceID], [i].[Version], [i].[ControlName], [i].[ControlShow], [i].[ControlDefault]) SELECT @InterfaceID, @Version, a.Item, g.ControlShow, g.ControlDefault FROM [dbo].[GlobalExpander] g LEFT OUTER JOIN [dbo].[InterfaceExpander] i ON g.ControlName = i.ControlName AND i.InterfaceID=@InterfaceID AND i.Version=@Version INNER JOIN dbo.EAIF_GetItemTable_70(@ControlNameList,'+') a ON g.ControlName = a.Item WHERE i.ControlName is null IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Attach Expanders', @InterfaceID,@Version, @ControlNameList COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetCustProductOfferingProfileNoDbs_100] (@CustID varchar(10) , @PrdOffID varchar(20)) AS BEGIN -- Checking customer subscription for external product offerings -- because these do not have associated Profile databases -- profile should not be deleted if there is any existing subscription for -- external product offering for same product interface SELECT DISTINCT pr.CustID , ISNULL(pr.GroupID, '') AS GroupID , ISNULL(pr.ProfID, '') AS ProfID , pr.ProfNo, 0 AS DbCount FROM [dbo].[Profile] pr INNER JOIN EASUPPORT.dbo.ProductInterface pin ON pr.InterfaceID = pin.InterfaceID INNER JOIN EASUPPORT.dbo.ProductPackage pp ON pp.ProductID = pin.ProductID INNER JOIN EASUPPORT.dbo.ProductOffering po ON po.PrdOffNo = pp.PrdOffNo LEFT JOIN [dbo].[ProfDatabase] pd ON pd.ProfNo = pr.ProfNo WHERE po.PrdOffID = @PrdOffID AND pr.CustID = @CustID AND pd.DbVerNo IS NULL AND NOT EXISTS ( SELECT 1 FROM EASUPPORT.dbo.ProductInterface pin1 INNER JOIN EASUPPORT.dbo.ProductPackage pp1 ON pp1.ProductID = pin1.ProductID INNER JOIN EASUPPORT.dbo.ProductOffering po1 ON po1.PrdOffNo = pp1.PrdOffNo INNER JOIN EASUPPORT.dbo.CustSubscription cs ON cs.PrdOffNo = pp1.PrdOffNo WHERE po1.SourceType = 'E' AND cs.CustID = @CustID AND pin1.InterfaceID = pr.InterfaceID ) END
CREATE PROCEDURE [dbo].[EAIP_AddUserGroup_70](@CustID varchar(10), @GroupID nvarchar(10), @GroupType char(1), @GroupName nvarchar(100), @GroupEmail nvarchar(100)) AS BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID]=@GroupID) BEGIN INSERT INTO [dbo].[UserGroup]([dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail]) VALUES(@CustID, @GroupID, @GroupType, @GroupName, @GroupEmail) END END
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitleListByTitle_70_KB] (@ColNo int, @Origin as nvarchar(430) = '') with recompile AS BEGIN DECLARE @SharedColNo int SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM [dbo].[Collection] Where [dbo].[Collection].[ColNo]=@ColNo IF @SharedColNo<>0 SELECT @ColNo=@SharedColNo DECLARE @RecCount int; SELECT @RecCount = count(*) FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON l.TitleNo = m.TitleNo WHERE l.ColNo = @ColNo --and m.Title >= @Origin and m.Title like @Origin + '%' IF @RecCount > 50000 -- return empty recordset SELECT l.ColNo, m.TitleNo, m.Title, m.ISSN FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON l.TitleNo = m.TitleNo WHERE 1 = 0 ELSE SELECT TOP 1000 l.ColNo, m.TitleNo, m.Title, m.ISSN FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON l.TitleNo = m.TitleNo WHERE l.ColNo = @ColNo --and m.Title >= @Origin and m.Title like @Origin + '%' ORDER BY m.Title END
CREATE TRIGGER CustAddressDeleteTrigger ON dbo.CustAddress AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId]) SELECT CustID FROM deleted END
CREATE PROCEDURE [dbo].[EATL_UpdateInterface_77](@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10),@Caption nvarchar(100),@LinkText nvarchar(255), @HelpText nvarchar(255), @Lang varchar(10))AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version) RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[InterfaceLanguage] SET [dbo].[InterfaceLanguage].[InterfaceName]=@Caption,[dbo].[InterfaceLanguage].[HelpText]=@HelpText,[dbo].[InterfaceLanguage].[LinkText]=@LinkText WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Interface Captions' END ELSE BEGIN INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID],[dbo].[InterfaceLanguage].[Version],[dbo].[InterfaceLanguage].[LangCode],[dbo].[InterfaceLanguage].[InterfaceName],[dbo].[InterfaceLanguage].[HelpText],[dbo].[InterfaceLanguage].[LinkText]) VALUES (@InterfaceID,@Version,@Lang,@Caption,@HelpText,@LinkText) SET @LogFlag ='Translate(Insert) Interface Captions' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface',@LogFlag, @InterfaceID, @Version, @Lang, 'InterfaceName:', @Caption COMMIT TRANSACTION END
Create PROCEDURE [dbo].[EPCS_GetDbTargetsSFB_99] (@DbName varchar(10)) AS BEGIN DECLARE @DbVerNo int --Get DbVerNo SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName and [dbo].[DbList].[DbLabel] = 'live' SELECT dl.DbName AS ShortDbName, tt.TargetType, dst.SLCollID FROM [dbo].[DbSourceTarget] dst INNER JOIN [dbo].[DbList] dl ON dst.TargetDbNo = dl.DbVerNo INNER JOIN [dbo].[DbSourceTargetTypeList] tt ON tt.TargetType = dst.TargetType WHERE dst.SourceDbNo = @DbVerNo AND tt.SFBUse=1 END
CREATE PROCEDURE [dbo].[EAUI_GetGroupProfileDetails_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=ParamNo From dbo.CustomParamList WHERE ParamName ='uiStatus' SELECT a.SeqNo ,a.ProfNo ,a.ProfID ,a.ProfName ,b.InterfaceName ,b.InterfaceID ,d.Description AS MarketDescr ,c.LangDisplayName AS LangDescr ,COALESCE(sp.ParamValue, pd.DefValue) AS UiStatus ,ip.EditLevel AS UiStatusEditLevel ,CASE WHEN iv.HideInterface = 1 THEN '1' ELSE dbo.EAIF_GetProfileParamScalarValue_70(a.ProfNo, 'hideProfileOnSSP') END as HideProfileOnSSP ,CASE WHEN iv.HideInterface = 1 THEN 1 ELSE 0 END as HideInterface FROM [dbo].[Profile] a LEFT JOIN EASUPPORT.dbo.MarketList d ON a.MarketID = d.MarketID INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version INNER JOIN [dbo].[InterfaceUserLangList] c ON a.InterfaceID = c.InterfaceID AND a.Version = c.Version AND a.DefLangCode = c.LangCode LEFT JOIN [dbo].[InterfaceVersion] iv ON a.InterfaceID = iv.InterfaceID AND a.Version = iv.Version LEFT JOIN dbo.InterfaceParamList ip ON a.InterfaceID = ip.InterfaceID AND a.Version=ip.Version AND ip.ParamNo = @ParamNo LEFT JOIN dbo.CustomParamDefaults pd ON pd.ParamNo = @ParamNo AND pd.InterfaceID=a.InterfaceID AND pd.Version=a.Version AND pd.MarketID=a.MarketID AND pd.STMode = a.STMode LEFT OUTER JOIN dbo.CustomParamScalarValues sp ON a.ProfNo = sp.TargetNo AND sp.ParamLevel='P' AND sp.ParamNo=@ParamNo WHERE a.CustID = @CustID AND a.GroupID = @GroupID AND b.LangCode = 'en' ORDER BY a.SeqNo END
Create Procedure [dbo].[EAIP_UpdatePromoteRequestStatus_161](@PromoteRequestID int, @Status char(1), @PromoteErrorMessage varchar(2000)=NULL) As Begin Begin Try Update [dbo].[PromoteRequestStatus] set [dbo].[PromoteRequestStatus].[Status]=@Status, [dbo].[PromoteRequestStatus].[ProcessedTime]=GetDate(), [dbo].[PromoteRequestStatus].[PromoteErrorMessage]=@PromoteErrorMessage where [dbo].[PromoteRequestStatus].[PromoteRequestID]=@PromoteRequestID End Try BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
Create Procedure [dbo].[EAUI_UpdateTblParamItemDbs_103]( @UserID nvarchar(20),@UserIP varchar(15), @ParamNo int, @ItemId varchar(20),@DbList varchar(8000), @DbUnSelectedList varchar(8000)) AS BEGIN Declare @FieldNo int SELECT @FieldNo = [dbo].[CustomParamXmlFields].[FieldNo] from [dbo].[CustomParamXmlFields] Where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlFields].[FieldName]='db' BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMDValues]([v].[ParamNo],[v].[ItemID],[v].[FieldNo],[v].[DbName]) SELECT @ParamNo,@ItemID,@FieldNo, a.Item FROM dbo.EAIF_GetItemTable_70(@DbList,'+') a Left outer join [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON a.Item = v.DbName AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo WHERE v.DbName is null INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'CustomParamTblGlobalDefaultSDValues', 'Add Database to Parameter Item', @ParamNo, @FieldNo, @ItemID, a.Item, NULL FROM dbo.EAIF_GetItemTable_70(@DbList,'+') a Left outer join [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON a.Item = v.DbName AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo WHERE v.DbName is null DELETE [dbo].[CustomParamTblGlobalDefaultSMDValues] FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] v join dbo.EAIF_GetItemTable_70(@DbUnSelectedList,'+') a ON v.DbName=a.Item AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo --DELETE CustomParamTblGlobalDefaultSMDValues --FROM CustomParamTblGlobalDefaultSMDValues v -- Left outer join dbo.EAIF_GetItemTable_70(@DbList,'+') a ON -- v.DbName=a.Item --WHERE a.Item is null AND ParamNo=@ParamNo AND ItemID=@ItemId ANd FieldNo=@FieldNo INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GetDate(), 'CustomParamTblGlobalDefaultSDValues', 'Delete Database From Parameter Item', @ParamNo, @FieldNo, @ItemID, v.DbName, NULL FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] v Left outer join dbo.EAIF_GetItemTable_70(@DbList,'+') a ON v.DbName=a.Item WHERE a.Item is null AND [v].[ParamNo]=@ParamNo AND [v].[ItemID]=@ItemId ANd [v].[FieldNo]=@FieldNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetDatabasesAmount_203]( @DbLabel varchar(10) ,@SourceTypeList varchar(10) ,@DbName VARCHAR(10) = NULL ,@DisplayName NVARCHAR(100) = NULL ) AS BEGIN IF @DbLabel = 'custom' SELECT COUNT(distinct DbVerNo) FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a ON l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos ON a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs ON l.DbVerNo=dbs.PhysDbVerNo WHERE l.[DbLabel] not in ('live', 'liveQC', 'rebuild', 'rebuildQC') AND (@DbName IS NULL OR l.DbName LIKE @DbName + '%') AND (@DisplayName IS NULL OR l.DisplayName LIKE @DisplayName + '%') ELSE SELECT COUNT(distinct DbVerNo) FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType JOIN dbo.EAIF_GetItemTable_70(@SourceTypeList,';') a ON l.SourceType=a.Item JOIN EASUPPORT.dbo.ProductOfferingSource pos ON a.Item=pos.SourceType LEFT OUTER JOIN [dbo].[DbSubset] dbs ON l.DbVerNo=dbs.PhysDbVerNo WHERE [l].[DbLabel] = @DbLabel AND (@DbName IS NULL OR l.DbName LIKE @DbName + '%') AND (@DisplayName IS NULL OR l.DisplayName LIKE @DisplayName + '%') END
CREATE PROCEDURE [dbo].[EAIP_UpdateMasterTitle_70]( @TitleNo int, @Title nvarchar(430), @ISSN varchar(20), @eISSN varchar(20), @EBSCOResId varchar(10), @ejsJournalID varchar(10), @ConserNo varchar(10), @MID varchar(10), @DocType varchar(5), @Source varchar(10), @PLinksAllowed bit) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[EBSCOResId] = @EBSCOResId, [dbo].[MasterTitle].[RestrictPLinks]=@PLinksAllowed WHERE [dbo].[MasterTitle].[TitleNo] = @TitleNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM EASUPPORT.dbo.MarcTitle WHERE [EASUPPORT].[dbo].[MarcTitle].[TitleNo] = @TitleNo) UPDATE EASUPPORT.dbo.MarcTitle SET [EASUPPORT].[dbo].[MarcTitle].[ConserNo]=@ConserNo, [EASUPPORT].[dbo].[MarcTitle].[MID]=@MID, [EASUPPORT].[dbo].[MarcTitle].[eISSN]=@eISSN, [EASUPPORT].[dbo].[MarcTitle].[ejsJournalID]=@ejsJournalID, [EASUPPORT].[dbo].[MarcTitle].[DocType]=@DocType, [EASUPPORT].[dbo].[MarcTitle].[DateModified] = getdate() WHERE [EASUPPORT].[dbo].[MarcTitle].[TitleNo] = @TitleNo ELSE INSERT INTO EASUPPORT.dbo.MarcTitle( [EASUPPORT].[dbo].[MarcTitle].[TitleNo], [EASUPPORT].[dbo].[MarcTitle].[Title], [EASUPPORT].[dbo].[MarcTitle].[ConserNo], [EASUPPORT].[dbo].[MarcTitle].[MID], [EASUPPORT].[dbo].[MarcTitle].[ISSN], [EASUPPORT].[dbo].[MarcTitle].[eISSN], [EASUPPORT].[dbo].[MarcTitle].[ejsJournalID], [EASUPPORT].[dbo].[MarcTitle].[DocType], [EASUPPORT].[dbo].[MarcTitle].[DateCreated], [EASUPPORT].[dbo].[MarcTitle].[Status] ) VALUES( @TitleNo, @Title, @ConserNo, @MID, @ISSN, @eISSN, @ejsJournalID, @DocType, getdate(), 'a' ) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_UpdateMasterTitleISSN_70] @TitleNo, @Title, @ISSN, 'ui' IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetProfileProxy_142] ( @ProfNo int ) AS BEGIN declare @ProxyId nvarchar(255) Declare @PrimaryParamNo int Select @PrimaryParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkPrimaryProxy' SELECT @ProxyId=substring(ISNULL([cpsv].[ParamValue], ISNULL(cpd.DefValue, cpl.DefValue)),charindex(':',[cpsv].[ParamValue])+1,len([cpsv].[ParamValue])-charindex(':',ISNULL([cpsv].[ParamValue], ISNULL(cpd.DefValue, cpl.DefValue)))) FROM [dbo].[Profile] p INNER JOIN dbo.CustomParamScalarValues cpsv ON p.ProfNo=cpsv.TargetNo AND cpsv.ParamNo=@PrimaryParamNo AND cpsv.ParamLevel='P' LEFT OUTER JOIN dbo.CustomParamDefaults cpd ON cpsv.ParamNo=cpd.ParamNo AND p.InterfaceID=cpd.InterfaceID AND p.Version=cpd.Version INNER JOIN dbo.CustomParamList cpl ON cpsv.ParamNo=cpl.ParamNo WHERE p.ProfNo=@ProfNo AND ISNULL([cpsv].[ParamValue], ISNULL(cpd.DefValue, cpl.DefValue)) IS NOT NULL AND ISNULL([cpsv].[ParamValue], ISNULL(cpd.DefValue, cpl.DefValue))<>'' SELECT Proxy.value('(/customerProxy/@proxyID)[1]', 'nvarchar(255)') ProxyID , Proxy.value('(/customerProxy/@name)[1]', 'nvarchar(255)') ProxyName , Proxy.value('(/customerProxy/@urlMask)[1]', 'nvarchar(2048)') UrlMask , Proxy.value('(/customerProxy/@ip)[1]', 'nvarchar(45)') IP , Proxy.value('(/customerProxy/@status)[1]', 'nvarchar(1)') Status , Proxy.value('(/customerProxy/@encode)[1]', 'nvarchar(1)') Encode --, Proxy.value('(/customerProxy/@notes)[1]', 'nvarchar(255)') notes FROM ( SELECT [pv].[ItemName] , CAST (PV.ParamValue AS XML) Proxy FROM [dbo].[CustomParamXmlValues] pv JOIN [dbo].[Customer] c ON c.CustNo = pv.TargetNo JOIN [dbo].[Profile] p On p.CustID = c.CustID JOIN [dbo].[CustomParamList] cpl ON cpl.ParamNo = pv.ParamNo AND cpl.ParamLevel = pv.ParamLevel WHERE p.ProfNo = @ProfNo AND cpl.ParamLevel = 'C' AND cpl.ParamName = 'customerProxy' ) CustomerProxyList WHERE Proxy.value('(/customerProxy/@proxyID)[1]', 'nvarchar(255)') = @ProxyId END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseFieldTagOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @FieldTagList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Reorder Fields', 'Segment:', @SegName UPDATE [dbo].[DbFieldTag] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbFieldTag] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@FieldTagList, @SeqNoList,'+') b ON a.FieldTag = convert(char(2),b.Item) WHERE a.DbVerNo = @DbVerNo AND a.SegName = @SegName END
CREATE FUNCTION [dbo].[EAIF_GetFullTextQueryString_70](@ProfNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] ='fullTextAllowed' DECLARE @IncludeLinkedFullText nvarchar(10) DECLARE @Query nvarchar(max) DECLARE @CustID varchar(10), @GroupID varchar (10) DECLARE @LangCode varchar(10) DECLARE @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20),@STMode char(1) SELECT @CustID=[dbo].[Profile].[CustID], @GroupID=[dbo].[Profile].[GroupID], @LangCode=[dbo].[Profile].[DefLangCode], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SET @IncludeLinkedFullText=dbo.EAIF_GetCustomParamScalarValue_70('includeLinkedFullText', @InterfaceID, @Version, @MarketID, @STMode, @ProfNo, 'P') SELECT @Query = N'FT y' IF @IncludeLinkedFullText = N'1' BEGIN SELECT @Query = @Query+ N' OR LO '+ RTRIM(d.EACustID)+N'.'+ RTRIM(d.EOColID) /*Eonline collections*/ FROM [dbo].[EOCollection] d INNER JOIN [dbo].[CustomParamScalarValues] b ON b.ParamValue=d.EOCustCode INNER JOIN [dbo].[CustomParamScalarValues] c ON c.ParamValue=d.EOUserName WHERE b.ParamLevel='P' AND b.TargetNo=@ProfNo AND b.ParamNo=dbo.EAIF_GetCustomParamNumber_70('eonlineCustID','P') AND c.ParamLevel='P' AND c.TargetNo=@ProfNo AND c.ParamNo=dbo.EAIF_GetCustomParamNumber_70('eonlineUserID','P') AND d.EACustID = @CustID SELECT @Query = @Query+ N' OR LO '+ REPLACE(RTRIM(b.ParamValue),N' ',N'') /* Ejournal collections */ FROM [dbo].[CustomParamScalarValues] b WHERE b.ParamLevel='P' AND b.TargetNo=@ProfNo AND b.ParamNo=dbo.EAIF_GetCustomParamNumber_70('crossRefColID','P') SELECT @Query = @Query+ N' OR LO '+ RTRIM(c.CustID)+'.'+ RTRIM(c.ColID) /*FullText collections */ FROM [dbo].[Collection] c INNER JOIN ( SELECT DISTINCT 'ep-'+[c].[DbName] AS ColID FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo INNER JOIN [dbo].[DbList] c ON b.DbVerNo=c.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] dscl ON c.DbVerNo = dscl.DbVerNo AND dscl.ParamNo=@ParamNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.Enable=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) AND (dscl.ParamValue is null OR dscl.ParamValue='1') ) pds ON c.ColID=pds.ColID WHERE c.CustID = 'system' AND c.IsDeleted = 0 END RETURN(@Query) END
CREATE PROCEDURE [dbo].[EAUI_GetAllDbLimitersByLabel_70] (@DbVerNo int, @DbLabel varchar(10)) AS BEGIN SELECT ll.LimiterNo, ll.LimiterId, ll.Description, lc.ControlName FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) WHERE ll.LimiterNo NOT IN ( SELECT [dbo].[DbLimiter].[LimiterNo] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo ) AND ll.DbLabel = @DbLabel ORDER BY ll.Description END
CREATE PROCEDURE [dbo].[EAIP_AddAZTitle_97] ( @ColNo int, @YesMsgNo int, @NoMsgNo int, @itemCount int, @titlenoList varchar(8000) ) AS BEGIN SET NOCOUNT ON DECLARE @TitleNo int, @idx int, @x1 int, @y1 int set @x1=1 set @idx=1 WHILE (@idx <= @itemCount) BEGIN set @y1=charindex(',', @titlenoList, @x1) -- all strings always have a trailing comma set @TitleNo = case when @y1=@x1 then null else cast(substring(@titlenoList,@x1,@y1-@x1) as int) end BEGIN TRY INSERT INTO [dbo].[LocalTitle]([dbo].[LocalTitle].[ColNo],[dbo].[LocalTitle].[TitleNo],[dbo].[LocalTitle].[Subscribe],[dbo].[LocalTitle].[YesMsgNo],[dbo].[LocalTitle].[NoMsgNo],[dbo].[LocalTitle].[Notes],[dbo].[LocalTitle].[SummaryHoldings],[dbo].[LocalTitle].[CallNumber],[dbo].[LocalTitle].[Status]) values(@ColNo,@TitleNo,1,@YesMsgNo,@NoMsgNo,null,null,null,'a') END TRY BEGIN CATCH if (ERROR_NUMBER()<>2627) -- primary key violation. allow these since they can occur in a race condition exec [dbo].[EAIP_RethrowAZError_97] END CATCH set @x1=@y1+1 set @idx = @idx + 1 END RETURN END
CREATE PROCEDURE [dbo].[EAIP_GetContentVerticalListPaged_254] ( @browseField VARCHAR(25) = 'contentVerticalID', @browseTerm NVARCHAR(255) = '', @pageIndex INT = 0, @pageSize INT = 10 ) AS BEGIN SET @browseTerm = COALESCE(@browseTerm, ''); WITH CTE AS( SELECT c.ContentVerticalID, c.ContentVerticalName, c.Description, c.ExternalSource, c.ExternalIndexName, MAX(CASE WHEN icvt.IntfCVTypeNo IS NULL AND dbcvf.DbCVFilterNo IS NULL THEN 0 ELSE 1 END) as 'IntFlag' FROM dbo.ContentVerticalType c LEFT OUTER JOIN [dbo].[InterfaceCVType] icvt ON c.ContentVerticalNo = icvt.ContentVerticalNo LEFT OUTER JOIN dbo.ContentVerticalFilter cvf ON c.ContentVerticalNo=cvf.ContentVerticalNo LEFT OUTER JOIN dbo.DbCVFilter dbcvf ON cvf.ContentVerticalFilterNo = dbcvf.ContentVerticalFilterNo WHERE (@browseTerm = '' OR (@browseField = 'contentVerticalID' AND [c].ContentVerticalID LIKE '%' + @browseTerm + '%') OR (@browseField = 'contentVerticalName' AND [c].ContentVerticalName LIKE '%' + @browseTerm + '%') OR (@browseField = 'description' AND [c].[Description] LIKE '%' + @browseTerm + '%') ) GROUP BY c.ContentVerticalID, c.ContentVerticalName, c.Description, c.ExternalSource, c.ExternalIndexName ), PagedCTE AS( SELECT CTE.ContentVerticalID, CTE.ContentVerticalName, CTE.Description, CTE.ExternalSource, CTE.ExternalIndexName, CTE.IntFlag FROM CTE ORDER BY CASE WHEN @browseField = 'contentVerticalName' THEN CTE.ContentVerticalName WHEN @browseField = 'description' THEN CTE.Description END, CTE.ContentVerticalID OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT ContentVerticalID, ContentVerticalName, [Description], ExternalSource, ExternalIndexName, IntFlag, NULL AS TotalCount FROM PagedCTE UNION ALL SELECT NULL AS ContentVerticalID, NULL AS ContentVerticalName, NULL AS [Description], NULL AS ExternalSource, NULL AS ExternalIndexName, NULL AS IntFlag, COUNT(*) AS TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_GetSiteListWithNoParent_70] (@ParentID varchar(10)) AS BEGIN SELECT b.CustID, b.CustName, CASE WHEN LEN(b.CustName)>30 THEN substring( b.CustName, 1, 30)+'...' ELSE substring( b.CustName, 1, 30) END as FormattedName FROM [dbo].[CustomerGroup] a INNER JOIN [dbo].[Customer] b ON a.ChildID=b.CustID WHERE a.ParentID=@ParentID AND a.ChildID<>[a].[ParentID] ORDER BY b.CustName END
CREATE PROCEDURE [dbo].[EAUI_AttachInterfaceSearchThemes_83](@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10),@Version varchar(10), @SearchThemeList varchar(8000))AS BEGIN DECLARE @StartSeqNo int SELECT @StartSeqNo=MAX(it.SeqNo)+1 FROM [dbo].[SearchTheme] st WITH (NOLOCK) INNER JOIN [dbo].[InterfaceSearchTheme] it WITH (NOLOCK) ON st.ThemeID=it.ThemeID WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version IF @StartSeqNo is null SET @StartSeqNo=1 BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceSearchTheme]([dbo].[InterfaceSearchTheme].[InterfaceID] ,[dbo].[InterfaceSearchTheme].[Version],[dbo].[InterfaceSearchTheme].[ThemeID],[dbo].[InterfaceSearchTheme].[SeqNo],[dbo].[InterfaceSearchTheme].[Show]) SELECT @InterfaceID,@Version, a.Item, NULL, 1 FROM dbo.EAIF_GetEnumValueTable_70( @SearchThemeList,',', @StartSeqNo, 1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceSearchTheme','Attach Theme', @InterfaceID,@Version,@SearchThemeList COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[GetInternationalCustomization_151] AS BEGIN SELECT [dbo].[InternationalCustomization].[LocaleCode],[dbo].[InternationalCustomization].[DisplayName] FROM [dbo].[InternationalCustomization] ORDER BY [dbo].[InternationalCustomization].[DisplayName] END
CREATE PROCEDURE [dbo].[EAIP_AutoAssignCustomLinks_204] AS BEGIN DECLARE @ProfParamNo INT = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P'), @CustParamNo INT = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C'), @SysCustNo INT = dbo.EAIF_GetCustNo_70('System'), @SysCustLinkParamNo INT = dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C'); BEGIN TRY SET XACT_ABORT ON BEGIN TRAN CREATE TABLE #ProfSysLink ( ProfNo INT NOT NULL, CustID VARCHAR(100) NOT NULL, SysLinkID VARCHAR(100) NOT NULL ); CREATE NONCLUSTERED INDEX [IDX_CustomerID] ON #ProfSysLink([CustID]) INCLUDE([ProfNo]) ; INSERT INTO #ProfSysLink SELECT p.ProfNo, p.CustID, scl.LinkID AS SysLinkID FROM [dbo].[DbSystemCustomLink] scl INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = scl.DbVerNo INNER JOIN [dbo].[Profile] p ON pdb.ProfNo = p.ProfNo LEFT OUTER JOIN [dbo].[CustAddress] ca ON ca.CustID = p.CustID LEFT OUTER JOIN [dbo].[CustomParamXmlValues] cpv ON p.ProfNo = cpv.TargetNo AND cpv.ParamLevel = 'P' AND cpv.ParamNo = @ProfParamNo AND cpv.ItemName like scl.LinkID + ':%' WHERE scl.AutoAssign = 1 AND cpv.TargetNo IS NULL AND pdb.Enable = 1 AND (pdb.AccessEndDate IS NULL OR pdb.AccessEndDate >= GETDATE()) AND (ca.CountryID IS NULL OR ca.CountryID <> 'DEU') GROUP BY p.ProfNo, p.CustID, scl.LinkID; CREATE TABLE #CustLink ( CustNo INT NOT NULL, CustID VARCHAR(100) NOT NULL, SysLinkID VARCHAR(100) NOT NULL, CustLinkID VARCHAR(100) NULL, CustLinkVal VARCHAR(MAX) NULL ); CREATE NONCLUSTERED INDEX [IDX_CustomerID] ON #CustLink([CustID]) INCLUDE([CustLinkID]) ; CREATE NONCLUSTERED INDEX [IDX_CustLinkID] ON #CustLink([CustLinkID]) INCLUDE([CustNo], [CustID], [SysLinkID]); ;WITH CustSysLink AS ( SELECT CustID, SysLinkID FROM #ProfSysLink GROUP BY CustID, SysLinkID ), CustLink AS ( SELECT c.CustNo, csl.CustID, csl.SysLinkID, cpv.ItemName AS CustLinkID, NULL AS CustLinkVal FROM CustSysLink csl INNER JOIN [dbo].[Customer] c ON csl.CustID = c.CustID LEFT OUTER JOIN [dbo].[CustomParamXmlValues] cpv ON cpv.TargetNo = c.CustNo AND cpv.ParamLevel = 'C' AND cpv.ParamNo = @CustParamNo AND cpv.ItemName like csl.SysLinkID + ':%' ) INSERT INTO #CustLink SELECT * FROM CustLink; ;WITH CustNewLink AS ( SELECT cnl.SysLinkID ,cnl.CustID ,cnl.SysLinkID + ':' + cnl.CustID + ':' + CONVERT(VARCHAR, CustomLinkCount + RowNum) AS CustLinkID ,REPLACE(REPLACE(cpv.ParamValue, '', '') AS CustLinkVal FROM ( SELECT cl.*, CONVERT(INT, s.ParamValue) AS CustomLinkCount FROM [dbo].[AdminState] s WITH (UPDLOCK, ROWLOCK) CROSS JOIN ( SELECT CustNo, CustID, SysLinkID, ROW_NUMBER() OVER(ORDER BY CustNo ) AS RowNum FROM #CustLink WHERE CustLinkID IS NULL ) cl WHERE s.ParamName = 'customLinkCount' ) cnl INNER JOIN dbo.CustomParamXmlValues cpv ON cpv.TargetNo = @SysCustNo AND cpv.ParamLevel = 'C' AND cpv.ParamNo = @SysCustLinkParamNo AND cpv.ItemName = cnl.SysLinkID ) UPDATE #CustLink SET CustLinkID = cnl.CustLinkID, CustLinkVal = cnl.CustLinkVal FROM CustNewLink cnl INNER JOIN #CustLink cl ON cnl.CustID = cl.CustID AND cnl.SysLinkID = cl.SysLinkID UPDATE [dbo].[AdminState] SET ParamValue = CONVERT(INT, ParamValue) + ( SELECT COUNT(*) FROM #CustLink WHERE CustLinkVal IS NOT NULL ) FROM [dbo].[AdminState] WHERE ParamName = 'customLinkCount'; DECLARE @AutoAssignedCustomLink TABLE ( [TargetNo] INT NOT NULL, [ParamLevel] CHAR(1) NOT NULL, [ParamNo] SMALLINT NOT NULL, [ItemName] VARCHAR(255) NOT NULL ); INSERT INTO [dbo].[CustomParamXmlValues](TargetNo, ParamLevel, ParamNo, ItemName, ParamValue, SeqNo) OUTPUT INSERTED.TargetNo, INSERTED.ParamLevel, INSERTED.ParamNo, INSERTED.ItemName INTO @AutoAssignedCustomLink SELECT p.ProfNo AS TargetNo ,'P' AS ParamLevel ,@ProfParamNo AS ParamNo ,cl.CustLinkID AS ItemName ,NULL AS ParamValue ,1 AS SeqNo FROM #CustLink cl INNER JOIN #ProfSysLink p ON cl.CustID = p.CustID AND cl.SysLinkID = p.SysLinkID UNION ALL SELECT CustNo AS TargetNo ,'C' AS ParamLevel ,@CustParamNo AS ParamNo ,CustLinkID AS ItemName ,CustLinkVal AS ParamValue ,NULL AS SeqNo FROM #CustLink WHERE CustLinkVal IS NOT NULL; DECLARE @Date DATETIME = GETDATE(); INSERT INTO [dbo].[AutoAssignedCustomLink](TargetNo, ParamLevel, ParamNo, ItemName, [Date]) SELECT *, @Date AS [Date] FROM @AutoAssignedCustomLink COMMIT TRAN END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetLocalTitleListByTitle_70_shane_poc] (@ColNo int, @Origin as varchar(500) = '') AS BEGIN DECLARE @SharedColNo int SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM [dbo].[Collection] Where [dbo].[Collection].[ColNo]=@ColNo IF @SharedColNo<>0 SELECT @ColNo=@SharedColNo SELECT TOP 1000 l.ColNo, m.TitleNo, m.Title, m.ISSN FROM (select [dbo].[LocalTitle].[ColNo], [dbo].[LocalTitle].[TitleNo] from [dbo].[LocalTitle] where [dbo].[LocalTitle].[ColNo] = @ColNo) l INNER JOIN [dbo].[MasterTitle] m ON l.TitleNo = m.TitleNo WHERE m.Title >= @Origin ORDER BY m.Title END
CREATE TRIGGER CustAddressInsertTrigger ON dbo.CustAddress AFTER INSERT AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT CustID, 'I' FROM inserted END
CREATE PROCEDURE EATL_UpdateInterface_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Interfaces XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Interfaces ( ID INT identity(1, 1) ,InterfaceID VARCHAR(10) ,Version VARCHAR(10) ,Caption NVARCHAR(100) ,LinkText NVARCHAR(255) ,HelpText NVARCHAR(255) ) INSERT INTO #Interfaces ( InterfaceID ,Version ,Caption ,LinkText ,HelpText ) SELECT m.c.value('(./Id)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(100)') ,m.c.value('(./LinkText)[1]', 'nvarchar(255)') ,m.c.value('(./HelpText)[1]', 'nvarchar(255)') FROM @Interfaces.nodes('/ArrayOfInterfaceTl/InterfaceTl') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID VARCHAR(10) ,@Version VARCHAR(10) ,@Caption NVARCHAR(100) ,@LinkText NVARCHAR(255) ,@HelpText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Interfaces ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@Caption = Caption ,@LinkText = LinkText ,@HelpText = HelpText FROM #Interfaces WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterface_77] @UserID ,@UserIP ,@InterfaceID ,@Version ,@Caption ,@LinkText ,@HelpText ,@Lang SET @i = @i + 1 END DROP TABLE #Interfaces END
CREATE PROCEDURE [dbo].[EPCS_GetDbThesaurus_70](@DbVerNo int, @SegName varchar(10), @Volume varchar(20))as BEGIN SELECT [dbo].[DbThesaurus].[ThesNumber], [dbo].[DbThesaurus].[ThesFile], [dbo].[DbThesaurus].[UserControlled], [dbo].[DbThesaurus].[StoreKWIC] FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName AND [dbo].[DbThesaurus].[Volume] = @Volume ORDER BY [dbo].[DbThesaurus].[ThesNumber] END
CREATE PROCEDURE dbo.EAUI_GetGroupProfileDetailsForInterfaces ( @CustID varchar(10) , @GroupID varchar(10) , @InterfaceList varchar(4000) ) AS BEGIN SELECT P.SeqNo , P.ProfNo , P.ProfID , P.ProfName , IL.InterfaceName , IL.InterfaceID , ML.Description AS MarketDescr , IULL.LangDisplayName AS LangDescr FROM dbo.Profile AS P LEFT OUTER JOIN EASUPPORT.dbo.MarketList AS ML ON P.MarketID = ML.MarketID INNER JOIN dbo.InterfaceLanguage AS IL ON P.InterfaceID = IL.InterfaceID AND P.Version = IL.Version INNER JOIN dbo.InterfaceUserLangList AS IULL ON P.InterfaceID = IULL.InterfaceID AND P.Version = IULL.Version AND P.DefLangCode = IULL.LangCode INNER JOIN dbo.EAIF_GetItemTable_70(@InterfaceList, ',') AS ILT ON P.InterfaceID = ILT.Item WHERE P.CustID = @CustID AND P.GroupID = @GroupID AND IL.LangCode = 'en' AND EXISTS ( SELECT 0 FROM dbo.ProfDatabase AS pd INNER JOIN dbo.DbList AS dbl ON dbl.DbVerNo = pd.DbVerNo WHERE p.ProfNo = pd.ProfNo AND pd.Enable = 1 --Enabled AND dbl.NonSearchableDb = 0 AND dbl.DbName != 'edspub' AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate > GETDATE()) -- Active ) ORDER BY P.SeqNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateSiteParamScalarValue_100](@SiteID varchar(10), @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN Declare @CustNo int Declare @CustType Char(1) Select @CustNo=[dbo].[Customer].[CustNo],@CustType=[dbo].[Customer].[CustType] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@SiteID IF (SELECT ISNULL(d.DefValue,cp.DefValue) FROM [dbo].[CustomParamList] cp Left outer join [dbo].[CustomParamCustTypeDefaults] d on (d.ParamNo=cp.ParamNo and d.CustType=@CustType) Where cp.ParamNo=@ParamNo) = @ParamValue EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @CustNo,'C',@ParamNo ELSE EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @CustNo,'C',@ParamNo,@ParamValue EXEC [dbo].[EAIP_LogUpdatesCustomParam_100] @CustNo,@ParamNo, 'C' END
CREATE procedure [dbo].[EAUI_UpdateTest](@Name nvarchar(100)) as BEGIN Update [dbo].[Customer] SET [dbo].[Customer].[CustName]=@Name WHERE [dbo].[Customer].[CustID]='eatest' END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseSegFileInfo_70]( @DbVerNo int, @SegName varchar(10), @Volume varchar(20)) AS BEGIN SELECT [dbo].[DbSegFileInfo].[EpsFile], [dbo].[DbSegFileInfo].[EpdFile], [dbo].[DbSegFileInfo].[EpiFile], [dbo].[DbSegFileInfo].[EpfFile], [dbo].[DbSegFileInfo].[JumpFile], [dbo].[DbSegFileInfo].[LookupDir], [dbo].[DbSegFileInfo].[EplFile], [dbo].[DbSegFileInfo].[EpgFile], [dbo].[DbSegFileInfo].[EpuFile], [dbo].[DbSegFileInfo].[ImageServerURL] FROM [dbo].[DbSegFileInfo] WHERE [dbo].[DbSegFileInfo].[DbVerNo] = @DbVerNo AND [dbo].[DbSegFileInfo].[SegName] = @SegName AND [dbo].[DbSegFileInfo].[Volume] = @Volume END
CREATE PROCEDURE [dbo].[EAIP_UpdateProfileParamDetails_153] (@UserID nvarchar(20), @UserIP varchar(15), @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @ParamName varchar(100), @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ProfNo INT SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF (@ProfNo IS NULL) BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END EXEC [dbo].[EAUI_UpdateProfileParamScalarValue_912] @UserID, @UserIP, @ProfNo, @ParamName, @ParamValue END
--sql content merged from file: \StoredProcedures\EAIP_GetProfilesByCustIDInterfaceVersion_92.sql Create procedure [dbo].[EAIP_GetProfilesByCustIDInterfaceVersion_92] @CustID varchar(10), @InterfaceID varchar(10), @Version varchar(10) as Select [dbo].[Profile].[ProfNo], [dbo].[Profile].[ProfID] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID and [dbo].[Profile].[InterfaceID]=@InterfaceID and [dbo].[Profile].[Version]=@Version
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseForm_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @FormNumber int, @Category char(1), @FormName varchar(100), @Encoding varchar(10)) AS BEGIN UPDATE [dbo].[DbForm] SET [dbo].[DbForm].[FormName]=@FormName, [dbo].[DbForm].[Encoding]=@Encoding, [dbo].[DbForm].[Category]=@Category WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo AND [dbo].[DbForm].[FormNumber]=@FormNumber IF (@@ERROR <> 0) BEGIN RAISERROR('Update failed for form number %s and database %s, %s',16,-1,@FormNumber, @DbName, @DbLabel) RETURN END DECLARE @FormNumberAsText varchar(10) SELECT @FormNumberAsText = convert(varchar(10),@FormNumber) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Form','Number:', @FormNumberAsText,'Name:',@FormName END
CREATE FUNCTION [dbo].[EAIF_GetFullTextQueryString_80](@ProfNo int, @CustID varchar(10), @GroupID varchar(10)) RETURNS varchar(8000) AS BEGIN DECLARE @Query nvarchar(max) SET @Query = '' DECLARE @ParamNo int SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] ='fullTextAllowed' SELECT @Query = @Query+ N' OR LO '+ [c].[CustID] + N'.'+ c.ColID FROM [dbo].[Collection] c INNER JOIN ( SELECT DISTINCT 'ep-'+[c].[DbName] As ColID FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo INNER JOIN [dbo].[DbList] c ON b.DbVerNo=c.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] dscl ON c.DbVerNo = dscl.DbVerNo AND dscl.ParamNo=@ParamNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.Enable=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) AND (dscl.ParamValue is null OR dscl.ParamValue='1') )pds ON c.ColID=pds.ColID WHERE c.CustID = 'system' AND c.ColID NOT IN ('ep-xuh', 'ep-xth', 'ep-srh') AND c.IsDeleted = 0 --Trimdown the beginning additional ' OR ' IF LEN(@Query)>1 SET @Query=SUBSTRING(@Query, 5, LEN(@Query)) RETURN(@Query) END
CREATE PROCEDURE [dbo].[EAUI_GetAllTitleListByISSN_70] (@Count int = 100, @Origin varchar(50) = '', @ColNo int) AS BEGIN SET ROWCOUNT @Count SELECT [dbo].[MasterTitle].[TitleNo], [dbo].[MasterTitle].[Title] + ' - ' + ISNULL([dbo].[MasterTitle].[ISSN],'') as Display FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[ISSN] >= @Origin AND [dbo].[MasterTitle].[ISSN] IS NOT NULL AND [dbo].[MasterTitle].[TitleNo] NOT IN (Select [dbo].[LocalTitle].[TitleNo] From [dbo].[LocalTitle] Where [dbo].[LocalTitle].[ColNo]=@ColNo) ORDER BY [dbo].[MasterTitle].[ISSN] SET ROWCOUNT 0 END
CREATE PROCEDURE [dbo].[EAIP_AddCfgAppParam_151]( @UserID nvarchar(20), @UserIP varchar(15), @AppId varchar(20), @ParamName varchar(100), @ParamType char, @PromptText varchar(255), @EditControl varchar(50), @ValueTemplate nvarchar(1000), @ParamValue nvarchar(2000), @ItemName varchar(100), @ParamXMLValue nvarchar(max)) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId EXEC [dbo].[EAUI_AddCfgAppParam_70] @UserID, @UserIP, @AppNo, @ParamName, @ParamType, @PromptText, @EditControl, @ValueTemplate, @ParamValue, @ItemName, @ParamXMLValue END
CREATE PROCEDURE [dbo].[EAIP_GetCustAvailableDatabases_133](@CustID varchar(10)) AS BEGIN TRY -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- ================================================================================================ -- verify all parameters -- ================================================================================================ IF @CustID IS NULL OR @CustID = '' BEGIN RAISERROR ( 'Customer ID is null or empty', 17, 1); END DECLARE @CurrentDate DATETIME; SELECT @CurrentDate = GETDATE(); SELECT DISTINCT [dbo].[DbList].[DbName] AS DbName FROM [dbo].[ProfDatabase] WITH (NOLOCK) INNER JOIN [dbo].[Profile] WITH (NOLOCK) ON [dbo].[Profile].[ProfNo] = [dbo].[ProfDatabase].[ProfNo] INNER JOIN [dbo].[DbList] WITH (NOLOCK) ON [dbo].[ProfDatabase].[DbVerNo] = [dbo].[DbList].[DbVerNo] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[DbList].[SourceType] = 'D' --EP Databases Only AND ([dbo].[ProfDatabase].[AccessEndDate] is null OR DateDiff(hh, [dbo].[ProfDatabase].[AccessEndDate], @CurrentDate)< 0 ) END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); -- Use RAISERROR inside the CATCH block to return error -- information about the original error that caused -- execution to jump to the CATCH block. RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
--sql content merged from file: \StoredProcedures\EAUI_GetSLDbSources_78.sql CREATE PROCEDURE [dbo].[EAUI_GetSLDbSources_78] (@DbVerNo int) AS BEGIN SELECT dl.DbVerNo, dl.DisplayName AS SourceName, dl.DbName, tt.Description AS TargetType, dst.SLCollID FROM [dbo].[DbSourceTarget] dst INNER JOIN [dbo].[DbList] dl ON dl.DbVerNo = dst.SourceDbNo INNER JOIN [dbo].[DbSourceTargetTypeList] tt ON tt.TargetType = dst.TargetType WHERE dst.TargetDbNo = @DbVerNo ORDER BY SourceName END
CREATE Procedure [dbo].[EAUI_AttachMDbAsToDatabase_90](@UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int, @MdbAList varchar(8000)) AS DECLARE @DbName varchar(10), @DbLabel varchar(10) SELECT @DbName = [dbo].[DbList].[DbName], @DbLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo INSERT INTO [dbo].[DBMultiDbAuthList] ([dbo].[DBMultiDbAuthList].[DbVerNo], [dbo].[DBMultiDbAuthList].[MultiDbAuthID]) SELECT @DbVerNo, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@MdbAList, '+') EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIp, @DbName, @DbLabel, 'Attach MDbAuth to db'
CREATE PROCEDURE [dbo].[GetSubdivisionsByCountryCode] (@ProductContext VARCHAR(10), @CountryCode VARCHAR(10)) AS BEGIN --Check if the country code is passed IF (@CountryCode IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@CountryCode, '')))) <= 0) BEGIN RAISERROR (N'Country code is required', 16, 1) RETURN END --Check if the product context is passed IF (@ProductContext IS NULL OR LEN(RTRIM(LTRIM(COALESCE(@ProductContext, '')))) <= 0) BEGIN RAISERROR (N'Product Context is required', 16, 1) RETURN END IF @ProductContext='ebma' SET @ProductContext='ebookMob' ELSE IF @ProductContext='flipma' SET @ProductContext='flipster' SELECT DISTINCT ca.State AS SubdivisionId, ca.State AS SubdivisionName FROM dbo.Country ct JOIN dbo.CustAddress ca ON ct.CountryID=ca.CountryID JOIN dbo.Customer c ON c.CustID=ca.CustID JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE d.Product=@ProductContext AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) AND ct.CountryID=@CountryCode AND (ca.State<>'' AND ca.State IS NOT NULL) AND c.CustType <> 'I' ORDER BY ca.State END
CREATE PROCEDURE [dbo].[EAIP_CheckCatalogStatusTabVisibility_142] (@CustID varchar(10)) AS BEGIN -- Note : This function is added for EHPMEBSCOADMIN-1927 (Release 14.2) task. Select dbo.EAIF_CheckCatalogStatusTabVisibility_142 (@CustID) END
CREATE PROCEDURE [dbo].[EAUI_GetMasterTitle_70]( @TitleNo as int ) AS BEGIN SELECT t.TitleNo, t.Title, t.ISSN, m.eISSN, t.EBSCOResId, m.ejsJournalID, m.ConserNo, m.MID, m.DocType, pu.PublisherName, ISNULL(t.RestrictPLinks,0) AS RestrictPLinks FROM [dbo].[MasterTitle] t LEFT OUTER JOIN EASUPPORT.dbo.MarcTitle m ON t.TitleNo = m.TitleNo LEFT OUTER JOIN [dbo].[Publisher] pu ON t.PID = pu.PID WHERE t.TitleNo = @TitleNo END
CREATE TRIGGER CustAddressUpdateTrigger ON dbo.CustAddress AFTER UPDATE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT CustID, 'U' FROM inserted END
CREATE Procedure [dbo].[EATL_UpdateInterfaceCustomParams_90] @UserID nvarchar(20), @UserIP varchar(50), @InterfaceID varchar(50), @Version varchar(50), @ParamName varchar(50), @FieldName varchar(50), @ItemID varchar(50), @Value nvarchar(255), @LangCode varchar(50), @MarketID varchar(20)='academic' as Declare @ParamNo int Declare @FieldNo int Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName if (@ParamNo is Not Null) Begin select @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] from [dbo].[CustomParamXmlFields] where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlFields].[FieldName]=@FieldName if (@FieldNo is Not Null) Begin if (not exists(Select 1 from [dbo].[CustomParamTblInterfaceSMValues] where [dbo].[CustomParamTblInterfaceSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblInterfaceSMValues].[FieldNo]=@FieldNo and [dbo].[CustomParamTblInterfaceSMValues].[InterfaceID]=@InterfaceID and [dbo].[CustomParamTblInterfaceSMValues].[Version]=@Version and [dbo].[CustomParamTblInterfaceSMValues].[LangCode]=@LangCode and [dbo].[CustomParamTblInterfaceSMValues].[ItemID]=@ItemID and [dbo].[CustomParamTblInterfaceSMValues].[MarketID]=@MarketID)) Begin Insert [dbo].[CustomParamTblInterfaceSMValues] ([dbo].[CustomParamTblInterfaceSMValues].[ParamNo], [dbo].[CustomParamTblInterfaceSMValues].[ItemID], [dbo].[CustomParamTblInterfaceSMValues].[FieldNo], [dbo].[CustomParamTblInterfaceSMValues].[InterfaceID], [dbo].[CustomParamTblInterfaceSMValues].[Version], [dbo].[CustomParamTblInterfaceSMValues].[LangCode], [dbo].[CustomParamTblInterfaceSMValues].[Value], [dbo].[CustomParamTblInterfaceSMValues].[MarketID]) values (@ParamNo, @ItemID, @FieldNo, @InterfaceID, @Version, @LangCode, @Value, @MarketID) End Else Begin Update [dbo].[CustomParamTblInterfaceSMValues] set [dbo].[CustomParamTblInterfaceSMValues].[Value]=@Value where [dbo].[CustomParamTblInterfaceSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblInterfaceSMValues].[FieldNo]=@FieldNo and [dbo].[CustomParamTblInterfaceSMValues].[InterfaceID]=@InterfaceID and [dbo].[CustomParamTblInterfaceSMValues].[Version]=@Version and [dbo].[CustomParamTblInterfaceSMValues].[LangCode]=@LangCode and [dbo].[CustomParamTblInterfaceSMValues].[ItemID]=@ItemID and [dbo].[CustomParamTblInterfaceSMValues].[MarketID]=@MarketID End End End
CREATE PROCEDURE [dbo].[EPCS_GetDbTopics_77] (@DbShortName varchar(10), @Label varchar(10))AS BEGIN SELECT tl.TopicID, ptl.TopicID AS ParentTopicID FROM [dbo].[DbTopic] dt INNER JOIN [dbo].[TopicList] tl ON dt.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo = ptl.TopicNo INNER JOIN [dbo].[DbList] dl ON dt.DbVerNo = dl.DbVerNo WHERE dl.DbName=@DbShortName AND dl.DbLabel = @Label END
CREATE PROCEDURE [dbo].[EAUI_GetGroupProfileDetailsortedByProfID_70]( @CustID as varchar(10), @GroupID as varchar(10),@Origin as varchar(10) = '') AS BEGIN SELECT a.SeqNo ,a.ProfNo ,a.ProfID ,a.ProfName ,b.InterfaceID ,b.InterfaceName ,d.Description AS MarketDescr ,c.Description AS LangDescr FROM [dbo].[Profile] a LEFT JOIN EASUPPORT.dbo.MarketList d ON a.MarketID = d.MarketID INNER JOIN [dbo].[InterfaceLanguage] b ON a.Version = b.Version AND a.InterfaceID = b.InterfaceID INNER JOIN [dbo].[LangList] c ON a.DefLangCode = c.LangCode WHERE a.CustID = @CustID AND a.GroupID = @GroupID AND b.LangCode = 'en' AND a.ProfID >=@Origin ORDER BY a.SeqNo END
-- This procedure pre-populates data for use in EPCS_GetInterfaceSearchThemes_83 for performance reasons -- Procedure will be called from other procedure that will call it for required interface id and version -- procedure based on EPCS_GetInterfaceSearchThemes_83 -- For given interface id and version, this procedure will: -- Remove old records from StagingInterfaceSearchThemes -- populate new records in StagingInterfaceSearchThemes CREATE PROCEDURE [dbo].[EAIP_UpdateStagingInterfaceSearchThemes_102](@InterfaceID VARCHAR(10), @Version VARCHAR(10)) AS BEGIN SET NOCOUNT ON DECLARE @ThemeID VARCHAR(20) DECLARE @TempInterfaceID VARCHAR(10); SET @TempInterfaceID = '~' +@InterfaceID; -- ~ is not allowed in interface id so its good to use SET @ThemeID = '' DECLARE @ResultThemes TABLE (ThemeID VARCHAR(20)) DECLARE ThemesCursor CURSOR LOCAL FAST_FORWARD FOR SELECT st.ThemeID FROM [dbo].[SearchTheme] st WITH (NOLOCK) INNER JOIN [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) ON st.ThemeID = i.ThemeID WHERE i.InterfaceID = @InterfaceID AND i.Version = @Version AND ISNULL(st.ParentThemeID, '') = '' OPEN ThemesCursor FETCH ThemesCursor INTO @ThemeID WHILE ( @@FETCH_STATUS <> -1 ) BEGIN IF ( @@FETCH_STATUS <> -2 ) BEGIN INSERT INTO @ResultThemes SELECT [dbo].[EAIF_GetSearchThemeHierarchyTable_83].[ThemeID] FROM dbo.EAIF_GetSearchThemeHierarchyTable_83(@ThemeID) END FETCH ThemesCursor INTO @ThemeID END CLOSE ThemesCursor DEALLOCATE ThemesCursor BEGIN TRAN INSERT INTO [dbo].[StagingInterfaceSearchThemes] SELECT @TempInterfaceID InterfaceID, --use @TempInterfaceID @Version Version, st.ThemeID, ISNULL(st.ParentThemeID, '') ParentThemeID, ISNULL(dbo.EAIF_GetInterfaceThemeCaptions_83(@InterfaceID, @Version, st.ThemeID), N'') AS Caption, ISNULL(dbo.EAIF_GetInterfaceThemeImageAltTexts_83(@InterfaceID, @Version, st.ThemeID), N'') AS MouseOverText, ISNULL(dbo.EAIF_GetInterfaceThemeDescriptions_88(@InterfaceID, @Version, st.ThemeID), N'') AS DESCRIPTION, SearchString = CASE WHEN Len(ISNULL(i.SearchString, '')) > 0 THEN i.SearchString WHEN Len(ISNULL(i.SearchString, '')) = 0 THEN ISNULL(st.SearchString, '') ELSE '' END, Image = CASE WHEN Len(ISNULL(i.Image, '')) > 0 THEN i.Image WHEN Len(ISNULL(i.Image, '')) = 0 THEN ISNULL(st.Image, '') ELSE '' END, CustomAttributes = CASE WHEN i.CustomAttributes IS NOT NULL THEN i.CustomAttributes WHEN i.CustomAttributes IS NULL THEN ISNULL(st.CustomAttributes, '') ELSE '' END, ISNULL(i.Show, 1) AS Show, ISNULL(i.SeqNo, 1) SeqNo, ISNULL(ifl.FeatureName, '') FeatureName, ISNULL(Lineage, '') Lineage FROM [dbo].[SearchTheme] st WITH (NOLOCK) INNER JOIN @ResultThemes rt ON rt.ThemeID = st.ThemeID LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i ON rt.ThemeID = i.ThemeID AND i.InterfaceID = @InterfaceID AND i.Version = @Version LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl ON i.InterfaceFeatureNo = ifl.InterfaceFeatureNo -- delete old data from StagingInterfaceSearchThemes for interface id and version DELETE [dbo].[StagingInterfaceSearchThemes] WHERE [dbo].[StagingInterfaceSearchThemes].[InterfaceID] = @InterfaceID AND [dbo].[StagingInterfaceSearchThemes].[Version] = @Version; -- Now rename temp interface id to actual interface id -- temp interface id is used to reduce the time when no data is available in StagingInterfaceSearchThemes -- during the processing UPDATE [dbo].[StagingInterfaceSearchThemes] SET [dbo].[StagingInterfaceSearchThemes].[InterfaceID] = @InterfaceID WHERE [dbo].[StagingInterfaceSearchThemes].[InterfaceID] = @TempInterfaceID AND [dbo].[StagingInterfaceSearchThemes].[Version] = @Version; COMMIT TRAN END
CREATE PROCEDURE [dbo].[EAUI_UpdateTopic_77] (@UserID nvarchar(20), @UserIP varchar(30),@TopicNo int, @SearchString varchar(255), @Caption nvarchar(255), @LangCode varchar(10)) AS BEGIN DECLARE @TopicID varchar(10) SELECT @TopicID=[dbo].[TopicList].[TopicID] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicNo]=@TopicNo BEGIN TRANSACTION UPDATE [dbo].[TopicList] SET [dbo].[TopicList].[SearchString]=@SearchString WHERE [dbo].[TopicList].[TopicNo]=@TopicNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[TopicCaption] WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo AND [dbo].[TopicCaption].[LangCode]=@LangCode) UPDATE [dbo].[TopicCaption] SET [dbo].[TopicCaption].[Caption]=@Caption WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo AND [dbo].[TopicCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[TopicCaption]([dbo].[TopicCaption].[TopicNo],[dbo].[TopicCaption].[LangCode],[dbo].[TopicCaption].[Caption]) VALUES(@TopicNo,@LangCode,@Caption) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Topics','Update Topic',@TopicID,@Caption,@SearchString COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseSegmentList_70]( @DbVerNo int) AS BEGIN SELECT [dbo].[DbSegment].[SeqNo], [dbo].[DbSegment].[SegDescription], [dbo].[DbSegment].[SegName], [dbo].[DbSegment].[ProductionDate] FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo ORDER BY [dbo].[DbSegment].[SeqNo] END
-- Updates publisher PID if Publisher is not already set -- If PID is set this will not change PID value and will not add publisher to Publisher table CREATE PROCEDURE [dbo].[EAIP_UpdateTitlePublisher_102](@TitleNo INT, @PublisherName NVARCHAR(100)) AS BEGIN DECLARE @PID INT; SELECT @PID = [dbo].[MasterTitle].[PID] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo] = @TitleNo; IF @PID IS NULL BEGIN EXEC [dbo].[EAIPO_AddPublisherGetPID_102] @PublisherName, @PID OUT; UPDATE [dbo].[MasterTitle] SET [dbo].[MasterTitle].[PID] = @PID WHERE [dbo].[MasterTitle].[TitleNo] = @TitleNo; END END
--sql content merged from file: \StoredProcedures\EAIP_GetProfileWithDbGrp_94.sql CREATE procedure [dbo].[EAIP_GetProfileWithDbGrp_94] ( @p_CustID varchar(10), @p_GroupID varchar(10), @p_DbGroupCode varchar(12) ) as begin set nocount on declare @ProfNo table ( ProfNo int, InterfaceID varchar(10), Version varchar(10), MarketId varchar(20), STMode char(1), SeqNo smallint, DbGroup varchar(12), DbGroupCaption nvarchar(255), ParamValue int ) /*EP-defined db group*/ insert into @ProfNo(ProfNo, InterfaceID, Version, MarketId, STMode, SeqNo, DbGroup, DbGroupCaption) select PF.ProfNo, PF.InterfaceID, PF.Version, PF.MarketID, PF.STMode, PF.SeqNo, VWPG1.GroupID, VWPG1.Caption from dbo.Profile PF join ( select distinct PG.ProfNo, GL.GroupID, PC.Caption from dbo.ProfGroupList PG join dbo.ProfGroupCaption PC on PC.ProfNo = PG.ProfNo and PC.GroupNo = PG.GroupNo join dbo.GroupList GL on GL.GroupNo = PG.GroupNo join dbo.DbGroup DG on DG.GroupNo = PG.GroupNo join dbo.ProfDatabase PD on PD.ProfNo = PG.ProfNo and PD.DbVerNo = DG.DbVerNo where PG.Show = 1 and PD.Enable = 1 and PD.Mode <> 'x' and (PD.AccessEndDate is null or datediff(dd, PD.AccessEndDate, getdate()) <= 0) ) [VWPG1] on VWPG1.ProfNo = PF.ProfNo where PF.CustID = @p_CustID and PF.GroupID = @p_GroupID /*remove ProfNo(s) that doesn't(don't) have 'PersistentLinkProfile' AND 'ShowDefaultEPDatabaseGroup' params set to ON*/ if exists(select 1 from @ProfNo) begin update @ProfNo set ParamValue = dbo.EAIF_GetCustomParamScalarValue_70('showDefaultEPDatabaseGroup', InterfaceID, Version, MarketId, STMode, ProfNo, 'P') delete from @ProfNo where ParamValue <> 1 end /*User-defined db group*/ insert into @ProfNo(ProfNo, InterfaceID, Version, MarketId, STMode, SeqNo, DbGroup, DbGroupCaption) select PF.ProfNo, PF.InterfaceID, PF.Version, PF.MarketID, PF.STMode, PF.SeqNo, VWPG2.GroupNo, VWPG2.Caption from dbo.Profile PF join ( select distinct PG.ProfNo, PG.GroupNo, PC.Caption from dbo.ProfCustGroupList PG join dbo.ProfCustGroupCaption PC on PC.ProfNo = PG.ProfNo and PC.GroupNo = PG.GroupNo join dbo.ProfCustGroupDb DG on DG.GroupNo = PG.GroupNo and DG.ProfNo = PG.ProfNo join dbo.ProfDatabase PD on PD.ProfNo = DG.ProfNo and PD.DbVerNo = DG.DbVerNo where PG.Show = 1 and PD.Enable = 1 and PD.Mode <> 'x' and (PD.AccessEndDate is null or datediff(dd, PD.AccessEndDate, getdate()) <= 0) ) [VWPG2] on VWPG2.ProfNo = PF.ProfNo where PF.CustID = @p_CustID and PF.GroupID = @p_GroupID /*remove ProfNo(s) that doesn't(don't) have 'PersistentLinkProfile' AND 'ShowDefaultEPDatabaseGroup' params set to ON*/ if exists(select 1 from @ProfNo) begin update @ProfNo set ParamValue = dbo.EAIF_GetCustomParamScalarValue_70('persistentLinkProfile', InterfaceID, Version, MarketId, STMode, ProfNo, 'P') delete from @ProfNo where ParamValue <> 1 end /*remove ProfNo(s) that is(are) not in the specified DbGroup(s)*/ if exists(select 1 from @ProfNo) begin if charindex(',',@p_DbGroupCode) <> 0 begin delete @ProfNo from @ProfNo AS a INNER JOIN (select DbGroup from @ProfNo where DbGroup not in (select [b].[Item] from dbo.EAIF_GetItemTable_70(@p_DbGroupCode,',') [b]) ) [c] ON a.DbGroup = c.DbGroup /*Only take ProfNo(s) shared by ALL DbGroups*/ -- delete @ProfNo -- from @ProfNo a, (select ProfNo, DbGroup -- from @ProfNo) [b], -- (select ProfNo, DbGroup -- from @ProfNo) [c] -- where b.ProfNo = c.ProfNo -- and cast(b.DbGroup as varchar) <> cast(c.DbGroup as varchar) and a.ProfNo <> b.ProfNo end else delete from @ProfNo where DbGroup <> @p_DbGroupCode end /*Final output*/ if exists(select 1 from @ProfNo) begin select PN.ProfNo, PF.ProfID, PF.ProfPwd, IV.PersistentLinkURL, IV.InterfaceID, PF.ProfName, PN.DbGroupCaption from dbo.Profile PF join (select top 1 ProfNo, DbGroupCaption from @ProfNo order by SeqNo asc) PN on PN.ProfNo = PF.ProfNo join dbo.InterfaceVersion IV on IV.InterfaceID = PF.InterfaceID and IV.Version = PF.Version end set nocount off end
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseSegFileInfo_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20), @LookupDir varchar(255), @JumpFile varchar(255), @EpgFile varchar(255), @EpdFile varchar(255), @EpiFile varchar(255), @EpuFile varchar(255), @EplFile varchar(255), @EpsFile varchar(255), @EpfFile varchar(255), @ImageServerUrl varchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbSegFileInfo] WHERE [dbo].[DbSegFileInfo].[DbVerNo]=@DbVerNo AND [dbo].[DbSegFileInfo].[SegName]=@SegName AND [dbo].[DbSegFileInfo].[Volume]=@Volume) BEGIN UPDATE [dbo].[DbSegFileInfo] SET [dbo].[DbSegFileInfo].[LookupDir] = @LookupDir, [dbo].[DbSegFileInfo].[JumpFile] = @JumpFile, [dbo].[DbSegFileInfo].[EpgFile] = @EpgFile, [dbo].[DbSegFileInfo].[EpdFile] = @EpdFile, [dbo].[DbSegFileInfo].[EpiFile] = @EpiFile, [dbo].[DbSegFileInfo].[EpuFile] = @EpuFile, [dbo].[DbSegFileInfo].[EplFile] = @EplFile, [dbo].[DbSegFileInfo].[EpsFile] = @EpsFile, [dbo].[DbSegFileInfo].[EpfFile] = @EpfFile, [dbo].[DbSegFileInfo].[ImageServerURL] = @ImageServerUrl WHERE [dbo].[DbSegFileInfo].[DbVerNo]=@DbVerNo AND [dbo].[DbSegFileInfo].[SegName]=@SegName AND [dbo].[DbSegFileInfo].[Volume]=@Volume IF (@@ERROR <> 0) BEGIN RAISERROR('Update of file information failed for database %s %s, segment %s, and volume %s',16,-1,@DbName, @DbLabel, @SegName, @Volume) RETURN END END ELSE INSERT INTO [dbo].[DbSegFileInfo] ([dbo].[DbSegFileInfo].[DbVerNo], [dbo].[DbSegFileInfo].[SegName], [dbo].[DbSegFileInfo].[Volume], [dbo].[DbSegFileInfo].[LookupDir], [dbo].[DbSegFileInfo].[JumpFile],[dbo].[DbSegFileInfo].[EpgFile], [dbo].[DbSegFileInfo].[EpdFile], [dbo].[DbSegFileInfo].[EpiFile], [dbo].[DbSegFileInfo].[EpuFile], [dbo].[DbSegFileInfo].[EplFile], [dbo].[DbSegFileInfo].[EpsFile], [dbo].[DbSegFileInfo].[EpfFile], [dbo].[DbSegFileInfo].[ImageServerURL]) VALUES (@DbVerNo, @SegName, @Volume, @LookupDir,@JumpFile,@EpgFile,@EpdFile,@EpiFile,@EpuFile,@EplFile, @EpsFile,@EpfFile,@ImageServerUrl) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert of file information failed for database %s %s, segment %s, and volume %s',16,-1,@DbName, @DbLabel, @SegName, @Volume) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Segment File Information', 'Segment:', @SegName,'Volume:',@Volume END
CREATE FUNCTION [dbo].[EAIF_GetGroupCaptions_80](@GroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+g.Caption +' ' FROM [dbo].[GroupCaption] g WHERE [g].[GroupNo]=@GroupNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetAllTitleListByTitle_70] (@Count int = 100, @Origin nvarchar(50) = '' , @ColNo int) AS BEGIN SET ROWCOUNT @Count SELECT [dbo].[MasterTitle].[TitleNo], [dbo].[MasterTitle].[Title] + ' - ' + ISNULL([dbo].[MasterTitle].[ISSN],'') as Display FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[Title] >= @Origin AND [dbo].[MasterTitle].[ISSN] IS NOT NULL AND [dbo].[MasterTitle].[TitleNo] NOT IN (Select [dbo].[LocalTitle].[TitleNo] From [dbo].[LocalTitle] Where [dbo].[LocalTitle].[ColNo]=@ColNo) ORDER BY [dbo].[MasterTitle].[Title] SET ROWCOUNT 0 END
CREATE PROCEDURE [dbo].[EAIP_AddCfgAppServer_151]( @UserID nvarchar(20), @UserIP varchar(15), @AppId varchar(20), @ServerURI varchar(255), @Description varchar(255), @ServerType char, @Status char) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppId) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppId EXEC [dbo].[EAUI_AddCfgAppServer_74] @UserID, @UserIP, @AppNo, @ServerURI, @Description, @ServerType, @Status END
CREATE PROCEDURE [dbo].[EAIP_GetCustCatalogNotificationConfiguration_142](@CatalogDbName varchar(10)) AS BEGIN SELECT ROW_NUMBER() OVER (ORDER BY cc.CustID,cc.DbName) AS RowID,cc.CustID as CustId,c.CustName, cc.DbName as Catalog, dl.DisplayName as CatalogName, ISNULL(cc.EmailAddresses,'') as email, ISNULL(cc.EmailSubjectLine,'') as emailSubjectLine FROM dbo.CustCatalogNotificationConfig cc JOIN dbo.Customer c ON c.CustID=cc.CustID JOIN dbo.DbList dl ON dl.DbName = cc.DbName AND dl.DbLabel = 'live' WHERE cc.DbName = @CatalogDbName END
--sql content merged from file: \StoredProcedures\EAUI_GetSLDbTargets_78.sql CREATE PROCEDURE [dbo].[EAUI_GetSLDbTargets_78] (@DbVerNo int) AS BEGIN SELECT dl.DbVerNo, dl.DisplayName AS TargetName, dl.DbName, tt.Description AS TargetType, dst.SLCollID FROM [dbo].[DbSourceTarget] dst INNER JOIN [dbo].[DbList] dl ON dst.TargetDbNo = dl.DbVerNo INNER JOIN [dbo].[DbSourceTargetTypeList] tt ON tt.TargetType = dst.TargetType WHERE dst.SourceDbNo = @DbVerNo ORDER BY TargetName END
CREATE Procedure [dbo].[EAUI_AttachMultiDbAuthorities_90](@UserId nvarchar(20), @UserIp varchar(15), @InterfaceId varchar(10), @Version varchar(10), @MDbAuthIDs varchar(8000)) AS BEGIN DELETE FROM [dbo].[InterfaceMultiDbAuthList] WHERE [dbo].[InterfaceMultiDbAuthList].[InterfaceID] = @InterfaceId AND [dbo].[InterfaceMultiDbAuthList].[Version] = @Version INSERT INTO [dbo].[InterfaceMultiDbAuthList] ([dbo].[InterfaceMultiDbAuthList].[InterfaceID], [dbo].[InterfaceMultiDbAuthList].[Version], [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID]) SELECT @InterfaceId, @Version, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@MDbAuthIDs, ',') EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIp, @InterfaceId,'Interfaces','Attach MDbAuth',@InterfaceId,@Version END
Create Procedure [dbo].[HideAPVideoForExcludedSites] (@Notify bit=1) as Begin Declare @Table table (RowNumber int Identity (1,1), ProfNo int, CustID varchar(10), GroupID varchar(10), ProfID varchar(10)) Declare @Rows int Declare @Row int Declare @CustID varchar(10) Declare @GroupID varchar(10) Declare @ProfID varchar(10) MERGE [dbo].[CustomParamTblFieldValues] as target USING ( Select p.ProfNo, 'P', cpl.ParamNo, 'Rapvideo', cpxf.FieldNo, '0' from [dbo].[CustomParamList] cpl with (NOLOCK) join [dbo].[CustomParamXmlFields] cpxf with (NOLOCK) on cpl.ParamNo=cpxf.ParamNo and cpxf.FieldName='Show' join [dbo].[InterfaceParamList] ipl with (NOLOCK) on cpl.ParamNo=ipl.ParamNo join [dbo].[CustomParamTblItemsInterface] cptii with (NOLOCK) on ipl.ParamNo=cptii.ParamNo and ipl.InterfaceID=cptii.InterfaceID and ipl.Version=cptii.Version and cptii.ItemID='Rapvideo' join [dbo].[Profile] p with (NOLOCK) on cptii.InterfaceID=p.InterfaceID and cptii.Version=p.Version join [dbo].[CustAddress] ca with (NOLOCK) on p.CustID=ca.CustID and ca.CountryID in ('CHN', 'SGP') Left Outer join [dbo].[APVideoExceptionList] apvel with (NOLOCK) on ca.CustID=apvel.CustID Left Outer Join [dbo].[CustomParamTblFieldValues] cptfv with (NOLOCK) on p.ProfNo=cptfv.TargetNo and cpl.ParamLevel=cptfv.Level and cpl.ParamNo=cptfv.ParamNo and cptii.ItemID=cptfv.ItemID and cpxf.FieldNo=cptfv.FieldNo where [cpl].[ParamName]='relatedInfo' and apvel.CustID is null and (cptfv.Value='1' or cptfv.Value is null)) as source (TargetNo, Level, ParamNo, ItemID, FieldNo, Value) on (target.TargetNo=source.TargetNo and target.Level=source.Level and target.ParamNo=source.ParamNo and target.ItemID=source.ItemID and target.FieldNo=source.FieldNo) WHEN Matched Then Update set target.Value=source.Value WHEN not matched Then Insert ([TargetNo], [Level], [ParamNo], [ItemID], [FieldNo], [Value]) Values (source.TargetNo, source.Level, source.ParamNo, source.ItemID, source.FieldNo, source.Value) OUTPUT inserted.TargetNo, Null, Null, Null into @Table; If (@Notify=1) Begin Update @Table set [CustID]=p.CustID, [GroupID]=p.GroupID, [ProfID]=p.ProfID from @Table t join [dbo].[Profile] p with (NOLOCK) on t.ProfNo=p.ProfNo Select @Rows=Max(RowNumber) from @Table Set @Row=1 While (@Row<=@Rows) Begin Select @CustID=CustID, @GroupID=GroupID, @ProfID=ProfID from @Table where RowNumber=@Row exec EASUPPORT.dbo.EAIP_NotifyAppServers_76 'HideAPVideoForExcludedSites', 'UserInfo', 'item=UserInfo&custid={param1}&groupid={param2}&profid={param3}', @CustID, @GroupID, @ProfID set @Row=@Row+1 End End End
CREATE PROCEDURE [dbo].[EAIP_CheckCustomerDbSubscription_143] (@CustID VARCHAR(10), @DbList VARCHAR(4000)) AS BEGIN -- Note : This function is added for EHPMEBSCOADMIN-2133 (Release 14.3) task. SELECT dbo.EAIF_CheckCustomerDbSubscription_143 (@CustID, @DbList) END
CREATE PROCEDURE [dbo].[DDS_Update_96]( @UserID nvarchar(255), @UserIP varchar(15), @DbGroupName varchar(100), @DbGroupLabel varchar(100), @xmlDoc XML ) AS BEGIN EXEC [dbo].[DDS_LogActivity_96] @UserID, @UserIP, 'DDSUpdate', 'BEGIN', @DbGroupName, @DbGroupLabel -- ========================================================================================= -- Lets get the database name, label and version -- ========================================================================================= DECLARE @updateStyle VARCHAR(100) SELECT @updateStyle = e.[epcInfo].value('@updateStyle' , 'varchar(100)') FROM @xmlDoc.nodes('epcInfo') AS e(epcInfo) DECLARE @UpdatedCount INT IF (@updateStyle='new') BEGIN EXEC [dbo].[DDS_UpdateDatabaseNewFormat_96] @UserID, @UserIP, @DbGroupName, @DbGroupLabel, @xmlDoc, @UpdatedCount OUTPUT END ELSE IF (@updateStyle='old') BEGIN EXEC [dbo].[DDS_UpdateDatabaseOldFormat_96] @UserID, @UserIP, @DbGroupName, @DbGroupLabel, @xmlDoc, @UpdatedCount OUTPUT END ELSE --Raise and errror BEGIN PRINT('UNKNOWN updateStyle value') END -- Check that the segments match by name -- A warning will be written to the database if they don't match EXEC [dbo].[DDS_CompareDatabaseSegments_96] @UserID, @UserIP, @DbGroupName, @DbGroupLabel, @xmlDoc EXEC [dbo].[DDS_LogActivity_96] @UserID, @UserIP, 'DDSUpdate', 'END', @DbGroupName, @DbGroupLabel,@UpdatedCount SELECT @UpdatedCount END
CREATE PROCEDURE [dbo].[EAUI_GetMasterTitleListSortedByISSN_70]( @Origin as varchar(20) = '') AS BEGIN SELECT TOP 1000 [dbo].[MasterTitle].[TitleNo], [dbo].[MasterTitle].[Title], [dbo].[MasterTitle].[ISSN] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[ISSN] >= @Origin ORDER BY [dbo].[MasterTitle].[ISSN] END
CREATE TRIGGER CustomerDeleteTrigger ON dbo.Customer AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT CustID, 'D' FROM deleted END
CREATE PROCEDURE EATL_UpdateInterfaceCustomParams_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@InterfaceCustomParams XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #InterfaceCustomParams ( ID INT identity(1, 1) ,InterfaceID VARCHAR(50) ,Version VARCHAR(50) ,ParamName VARCHAR(50) ,FieldName VARCHAR(50) ,ItemID VARCHAR(50) ,Value NVARCHAR(255) ,MarketID VARCHAR(20) ) INSERT INTO #InterfaceCustomParams ( InterfaceID ,Version ,ParamName ,FieldName ,ItemID ,Value ,MarketID ) SELECT m.c.value('(./Id)[1]', 'varchar(50)') ,m.c.value('(./Version)[1]', 'varchar(50)') ,m.c.value('(./ParamName)[1]', 'varchar(50)') ,m.c.value('(./FieldName)[1]', 'nvarchar(50)') ,m.c.value('(./ItemId)[1]', 'nvarchar(50)') ,m.c.value('(./Value)[1]', 'nvarchar(255)') ,m.c.value('(./MarketId)[1]', 'nvarchar(20)') FROM @InterfaceCustomParams.nodes('/ArrayOfInterfaceCustomParam/InterfaceCustomParam') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID VARCHAR(50) ,@Version VARCHAR(50) ,@ParamName VARCHAR(50) ,@FieldName VARCHAR(50) ,@ItemID VARCHAR(50) ,@Value NVARCHAR(255) ,@MarketID VARCHAR(20) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #InterfaceCustomParams ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@ParamName = ParamName ,@FieldName = FieldName ,@ItemID = ItemID ,@Value = Value ,@MarketID = MarketID FROM #InterfaceCustomParams WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceCustomParams_90] @UserID ,@UserIP ,@InterfaceID ,@Version ,@ParamName ,@FieldName ,@ItemID ,@Value ,@Lang ,@MarketID SET @i = @i + 1 END DROP TABLE #InterfaceCustomParams END
-- EHPMEBSCOADMIN-923 Create PROCEDURE [dbo].[EPCS_GetDisciplinesForDisplay_131] AS BEGIN -- NOTE: return MAX(LastUpdatedTime) to ensure that most recent update time is returned DECLARE @searchStringTemplate VARCHAR(20) SELECT @searchStringTemplate = [dbo].[StringValueMap].[FieldCode] FROM [dbo].[StringValueMap] WHERE [dbo].[StringValueMap].[FieldName] = 'DisciplineSearchString' DECLARE @MaxUpdateTime DATETIME SELECT @MaxUpdateTime = MAX([dbo].[DisciplineList].[LastUpdateTime]) FROM [dbo].[DisciplineList] SELECT @MaxUpdateTime AS LastUpdateTime, [dl].[DisciplineCode], REPLACE(@searchStringTemplate, '{code}', [dl].[DisciplineCode]) as SearchString, dbo.EAIF_GetDisciplineCaptions_131(dl.DisciplineNo) as Captions, dc.Caption FROM [dbo].[DisciplineList] dl JOIN [dbo].[DisciplineCaption] dc on dl.DisciplineNo = dc.DisciplineNo and dc.LangCode = 'en' WHERE dl.Show = 1 ORDER BY dc.Caption END
CREATE PROCEDURE [dbo].[EAUI_GetGroupProfileDetailsortedByProfName_70]( @CustID as varchar(10), @GroupID as varchar(100),@Origin as varchar(10) = '') AS BEGIN SELECT a.SeqNo ,a.ProfNo ,a.ProfID ,a.ProfName ,b.InterfaceID ,b.InterfaceName ,d.Description AS MarketDescr ,c.Description AS LangDescr FROM [dbo].[Profile] a LEFT JOIN EASUPPORT.dbo.MarketList d ON a.MarketID = d.MarketID INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version INNER JOIN [dbo].[LangList] c ON a.DefLangCode = c.LangCode WHERE a.CustID = @CustID AND a.GroupID = @GroupID AND b.LangCode = 'en' AND a.ProfName >=@Origin ORDER BY a.SeqNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateSystemCollection_70]( @ColNo int, @ColName nvarchar(100), @EPFullText bit=0, @CustomLink bit=0, @SmartLink bit=0, @Category varchar(50)='other') as BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[ColName]=@ColName, [dbo].[Collection].[EPFullText]=@EPFullText, [dbo].[Collection].[CustomLink] = @CustomLink, [dbo].[Collection].[SmartLink] = @SmartLink, [dbo].[Collection].[Category] = @Category WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAUI_UpdateTopicInterface_77](@UserID nvarchar(20), @UserIP varchar(30),@IntfTopicNo int, @Caption nvarchar(255), @Image varchar(255), @Photo1 varchar(255), @Photo2 varchar(255), @Photo3 varchar(255), @MouseOverText nvarchar(255), @PhotoAltText nvarchar(255), @LangCode varchar(10)) AS BEGIN DECLARE @TopicNo int DECLARE @TopicID varchar(10) DECLARE @TopicCaption nvarchar(255) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @TopicNo=it.TopicNo, @InterfaceID=it.InterfaceID, @Version=it.Version, @TopicID=tl.TopicID , @TopicCaption=tc.Caption FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.IntfTopicNo =@IntfTopicNo AND tc.LangCode = 'en' BEGIN TRANSACTION UPDATE [dbo].[InterfaceTopic] SET [dbo].[InterfaceTopic].[Image]=@Image,[dbo].[InterfaceTopic].[Photo1]=@Photo1,[dbo].[InterfaceTopic].[Photo2]=@Photo2,[dbo].[InterfaceTopic].[Photo3]=@Photo3 WHERE [dbo].[InterfaceTopic].[IntfTopicNo]=@IntfTopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @Caption=@TopicCaption AND @MouseOverText=N'' AND @PhotoAltText=N'' BEGIN DELETE FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo]=@IntfTopicNo AND [dbo].[InterfaceTopicCaption].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN IF EXISTS(SELECT 1 FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo]=@IntfTopicNo AND [dbo].[InterfaceTopicCaption].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceTopicCaption] SET [dbo].[InterfaceTopicCaption].[Caption]=@Caption,[dbo].[InterfaceTopicCaption].[MouseOverText]=@MouseOverText, [dbo].[InterfaceTopicCaption].[PhotoAltText]=@PhotoAltText WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo]=@IntfTopicNo AND [dbo].[InterfaceTopicCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceTopicCaption]([dbo].[InterfaceTopicCaption].[IntfTopicNo],[dbo].[InterfaceTopicCaption].[LangCode],[dbo].[InterfaceTopicCaption].[Caption],[dbo].[InterfaceTopicCaption].[MouseOverText],[dbo].[InterfaceTopicCaption].[PhotoAltText]) VALUES (@IntfTopicNo,@LangCode,@Caption,@MouseOverText,@PhotoAltText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Update Interface Topic', @InterfaceID,@Version,@TopicID, @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseServerParams_70](@DbVerNo int) AS BEGIN select @DbVerNo = isnull(s.PhysDbVerNo, d.DbVerNo) FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbVerNo=@DbVerNo SELECT [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[MaxRecords], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers] FROM [dbo].[DbServerParams] WHERE [dbo].[DbServerParams].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAIPO_AddMasterTitle_102]( @Title nvarchar(430), @ISSN varchar(20), @eISSN varchar(20), @EBSCOResId varchar(10), @ejsJournalID varchar(10), @ConserNo varchar(10), @MID varchar(10), @DocType varchar(5), @Source varchar(10), @PLinksAllowed bit, @PublisherName nvarchar(100), @TitleNo int OUTPUT) AS BEGIN DECLARE @MatchTitle nvarchar(430) DECLARE @PID int; IF @ISSN ='' SET @ISSN = null SET @MatchTitle=dbo.EAIF_GetMatchTitle_70(@Title,@ISSN) IF @ISSN IS NOT NULL BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN]=@ISSN) BEGIN RAISERROR('The ISSN %s already exists',16,-1,@ISSN) RETURN END END ELSE BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MatchTitle] WITH(NOLOCK) WHERE [dbo].[MatchTitle].[MatchTitle]=@MatchTitle) BEGIN RAISERROR('The Title %s already exists',16,-1,@Title) RETURN END END BEGIN TRANSACTION IF @PublisherName IS NOT NULL AND @PublisherName != '' BEGIN EXEC [dbo].[EAIPO_AddPublisherGetPID_102] @PublisherName, @PID OUT; END INSERT INTO [dbo].[MasterTitle] ([dbo].[MasterTitle].[Title],[dbo].[MasterTitle].[ISSN],[dbo].[MasterTitle].[EBSCOResId],[dbo].[MasterTitle].[Source],[dbo].[MasterTitle].[Status],[dbo].[MasterTitle].[LinkCount],[dbo].[MasterTitle].[RestrictPLinks],[dbo].[MasterTitle].[TitleChecksum], [dbo].[MasterTitle].[PID]) VALUES (@Title,@ISSN,@EBSCOResId,@Source,'a',0,@PLinksAllowed,checksum(isnull(Lower(RTrim(@Title)),'')), @PID) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF (@ISSN IS NOT NULL) BEGIN SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN]=@ISSN AND [dbo].[MasterTitle].[TitleChecksum]=checksum(Lower(RTrim(@Title))) AND [dbo].[MasterTitle].[Title]=@Title END ELSE BEGIN SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN] IS NULL AND [dbo].[MasterTitle].[TitleChecksum]=checksum(Lower(RTrim(@Title))) AND [dbo].[MasterTitle].[Title]=@Title END INSERT INTO EASUPPORT.dbo.MarcTitle ([EASUPPORT].[dbo].[MarcTitle].[TitleNo], [EASUPPORT].[dbo].[MarcTitle].[Title], [EASUPPORT].[dbo].[MarcTitle].[ConserNo], [EASUPPORT].[dbo].[MarcTitle].[MID], [EASUPPORT].[dbo].[MarcTitle].[ISSN], [EASUPPORT].[dbo].[MarcTitle].[eISSN], [EASUPPORT].[dbo].[MarcTitle].[ejsJournalID], [EASUPPORT].[dbo].[MarcTitle].[DocType], [EASUPPORT].[dbo].[MarcTitle].[DateCreated], [EASUPPORT].[dbo].[MarcTitle].[DateModified],[EASUPPORT].[dbo].[MarcTitle].[Status]) VALUES (@TitleNo, @Title, @ConserNo, @MID, @ISSN, @eISSN, @ejsJournalID, @DocType, getdate(), getdate(),'a') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[MatchTitle] ([dbo].[MatchTitle].[MatchTitle],[dbo].[MatchTitle].[TitleNo]) VALUES (@MatchTitle,@TitleNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetProfLocalLimiters_235] ( @profNo int, @ParamScreenIdList VARCHAR(max), @langCode VARCHAR(10) ) AS BEGIN SELECT 'LO' + LTRIM(STR(a.ColNo, 25)) as LimiterID, CAST(0 AS smallint) AS ControlSize, 'CHECK_BOX' as ControlType, NULL AS ControlFormat, dbo.EAIF_GetLocalLimiterCaption_235( @ProfNo, a.IntfScreenNo, a.ColNo, @LangCode ) AS Caption, CASE b.Exclude WHEN 1 THEN 'AND' ELSE 'OR' END as LogicalOpCode, (CASE b.Exclude WHEN 1 THEN N'EX ' ELSE N'LO ' END) + convert(nvarchar(10),b.CustID) + N'.' + b.ColID as SearchString, NULL AS ControlTemplate, a.Show, a.DefValue, NULL AS DefPosn, NULL AS ColNum, NULL AS searchLimiterGroup, NULL AS QueryMaskId, NULL AS IsListContentsGrouped, NULL AS HelpUrl, null as DbName, ifs.ScreenID FROM [dbo].[ProfLocalLimiter2] a INNER JOIN [dbo].[Collection] b ON a.ColNo=b.ColNo INNER JOIN [dbo].[InterfaceScreen] ifs ON a.IntfScreenNo=ifs.IntfScreenNo LEFT JOIN string_split(@paramScreenIdList, ',') ids ON ifs.ScreenID = ids.value WHERE a.ProfNo = @ProfNo AND b.IsDeleted = 0 AND (@paramScreenIdList IS NULL OR value IS NOT NULL) UNION Select 'FLT'+ [cfl].[ContentFilterListID] as LimiterID, CAST(0 AS smallint) AS ControlSize, 'CHECK_BOX' as ControlType, NULL AS ControlFormat, N'' + convert(nvarchar(25), cfl.ContentFilterListID) + N' ' as Caption, 'AND' as LogicalOpCode, N'LO system.flt-' + convert(nvarchar(25), [cfl].[ContentFilterListID]) as SearchString, NULL AS ControlTemplate, 0 as Show, pcf.DefValue, NULL AS DefPosn, NULL AS ColNum, NULL AS searchLimiterGroup, NULL AS QueryMaskId, NULL AS IsListContentsGrouped, NULL AS HelpUrl, null as DbName, ifs.ScreenID From [dbo].[ProfContentFilters] pcf INNER Join [dbo].[CustContentFilters] ccf ON pcf.CustContentFilterNo=ccf.CustContentFilterNo INNER Join [dbo].[ContentFilterList] cfl ON ccf.ContentFilterNo=cfl.ContentFilterNo INNER Join [dbo].[InterfaceScreen] ifs ON pcf.IntfScreenNo=ifs.IntfScreenNo LEFT JOIN string_split(@paramScreenIdList, ',') ids ON ifs.ScreenID = ids.value Where pcf.ProfNo=@ProfNo AND (@paramScreenIdList IS NULL OR value IS NOT NULL) END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseSegmentOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegNameList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Reorder Segments' UPDATE [dbo].[DbSegment] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbSegment] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@SegNameList, @SeqNoList,'+') b ON a.SegName=b.Item WHERE a.DbVerNo = @DbVerNo END
CREATE FUNCTION [dbo].[EAIF_GetGroupMouseOverTexts_80](@GroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @MouseOverTexts nvarchar(max) SET @MouseOverTexts='' SELECT @MouseOverTexts = @MouseOverTexts + ''+g.MouseOverText +' ' FROM [dbo].[GroupCaption] g WHERE [g].[GroupNo]=@GroupNo RETURN @MouseOverTexts END
CREATE PROCEDURE [dbo].[EAUI_GetAuthHttpProfileList_86](@CustID varchar(10), @GroupID varchar(10), @EditLevel smallint = 2)AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] From dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]='useHttpsAuthentication' SELECT p.ProfNo, p.ProfName+'('+p.ProfID+') - '+p.InterfaceID+'/'+ p.Version As Profile, COALESCE(sp.ParamValue, pd.DefValue) AS ParamValue, p.SeqNo, @ParamNo AS ParamNo FROM dbo.Profile p INNER JOIN dbo.InterfaceParamList ip ON p.InterfaceID = ip.InterfaceID AND p.Version=ip.Version AND ip.ParamNo = @ParamNo AND @EditLevel <= ip.EditLevel INNER JOIN dbo.CustomParamDefaults pd ON pd.ParamNo = @ParamNo AND pd.InterfaceID=p.InterfaceID AND pd.Version=p.Version AND pd.MarketID=p.MarketID AND pd.STMode = p.STMode LEFT OUTER JOIN dbo.CustomParamScalarValues sp ON p.ProfNo = sp.TargetNo AND sp.ParamLevel='P' AND sp.ParamNo=@ParamNo WHERE p.CustID=@CustID AND p.GroupID=@GroupID ORDER BY Profile -- EADM-2968 END
CREATE PROCEDURE [dbo].[EAIP_AddContentFilterList_181](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterListId varchar(25), @ContentFilterListDesc nvarchar(255), @ContentFilterType Char(1)) AS BEGIN BEGIN TRY DECLARE @Id varchar (25) Declare @todaysDate datetime SET @ID=LTRIM(RTRIM(@ContentFilterListId)) SET @todaysDate=GETDATE() BEGIN TRANSACTION INSERT [dbo].[ContentFilterList] ([dbo].[ContentFilterList].[ContentFilterListID], [dbo].[ContentFilterList].[ContentFilterListDesc], [dbo].[ContentFilterList].[ContentFilterType],[dbo].[ContentFilterList].[CreateDate],[dbo].[ContentFilterList].[LastUpdatedDate]) VALUES (@ID, LTRIM(RTRIM(@ContentFilterListDesc)),@ContentFilterType, @todaysDate, null) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Create Content Filter List','Add new', @Id, @ContentFilterListDesc, @ContentFilterType, @todaysDate COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetCustIDsForContentFilterId_261](@ContentFilterListID varchar(25)) AS BEGIN SELECT ccf.CustID FROM dbo.ContentFilterList cfl INNER JOIN dbo.CustContentFilters ccf ON cfl.ContentFilterNo=ccf.ContentFilterNo WHERE cfl.ContentFilterListID=@ContentFilterListID END;
--sql content merged from file: \StoredProcedures\EAUI_GetSLSourceDbList_78.sql CREATE PROCEDURE [dbo].[EAUI_GetSLSourceDbList_78] (@DbVerNo int) AS BEGIN SELECT [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DisplayName] + N' (' + [dbo].[DbList].[DbName] + N')' AS SourceDbName From [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel] = 'live' AND ([dbo].[DbList].[DbType] = 1 OR [dbo].[DbList].[DbType] = 4) AND [dbo].[DbList].[DbVerNo] NOT IN (select [dbo].[DbSourceTarget].[SourceDbNo] from [dbo].[DbSourceTarget] where [dbo].[DbSourceTarget].[TargetDbNo] = @DbVerNo) AND [dbo].[DbList].[DbVerNo] <> @DbVerNo AND -- Exclude the current selected Db as a Source. [dbo].[DbList].[SourceType]='D' -- restrict the selection to Ep databases only ORDER BY [dbo].[DbList].[DisplayName] END
CREATE Procedure [dbo].[EAUI_AttachMultiDbAuthoritiesToInterface_90](@UserId nvarchar(20), @UserIp varchar(15), @InterfaceId varchar(10), @Version varchar(10), @MDbAuthIDs varchar(8000)) AS BEGIN Declare @NextSeqNo int Declare @MDbAuthID varchar(10) Declare @pos int Select @NextSeqNo=Max([dbo].[InterfaceMultiDbAuthList].[SeqNo])+1 from [dbo].[InterfaceMultiDbAuthList] where [dbo].[InterfaceMultiDbAuthList].[InterfaceID]=@InterfaceId and [dbo].[InterfaceMultiDbAuthList].[Version]=@Version Group by [dbo].[InterfaceMultiDbAuthList].[InterfaceID], [dbo].[InterfaceMultiDbAuthList].[Version] if @NextSeqNo is null set @NextSeqNo=1 set @pos=charindex(',',@MDbAuthIDs) WHILE @pos <> 0 AND @pos IS NOT NULL BEGIN SELECT @MDbAuthID=left(@MDbAuthIDs,@pos-1) Insert [dbo].[InterfaceMultiDbAuthList] ([dbo].[InterfaceMultiDbAuthList].[InterfaceID], [dbo].[InterfaceMultiDbAuthList].[Version], [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID], [dbo].[InterfaceMultiDbAuthList].[SeqNo]) Values (@InterfaceId, @Version, @MDbAuthID, @NextSeqNo) set @NextSeqNo=@NextSeqNo+1 SELECT @MDbAuthIDs=substring(@MDbAuthIDs,@pos+1,Len(@MDbAuthIDs)-@pos) SELECT @pos=charindex(',',@MDbAuthIDs) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Interfaces','Attach MDbAuth',@InterfaceId,@Version, @MDbAuthID End END
CREATE PROCEDURE [dbo].[IS_AddModCustAddr_152](@CustID varchar(10) , @CompanyName varchar(80) , @Address1 varchar(80) , @Address2 varchar(80) , @Address3 varchar(80) , @City varchar(80) , @State nvarchar(100) , @PostalCode varchar(15) , @Country nvarchar(100) ) AS BEGIN DECLARE @CountryId varchar(3) SELECT @CountryId=[dbo].[Country].[CountryID] FROM [dbo].[Country] WHERE [dbo].[Country].[CountryID]=@Country or [dbo].[Country].[CountryName] =@Country IF @CountryId IS NULL BEGIN RAISERROR('Could not find valid CountryID for Country:"%s".',16,-1,@Country) RETURN END EXEC [dbo].[EAIP_LogActivity_70] 'opsys', '', 'BIS', 'Update Customer Address', @CustID, @CompanyName, @Address1, @Address2, @City EXEC [dbo].[EAIP_AddModCustAddress_152] @CustID,@CompanyName,@Address1,@Address2,@Address3,@City,@State,@PostalCode,@CountryId END
CREATE PROCEDURE [dbo].[EAIP_CheckIfCustHasActiveOCLCSub_141](@ProfNo int) AS BEGIN /* EHPMEBSCOADMIN-1856: New ILS Integration Tab*/ /* This tab is visible ONLY if customer have active subscription for EBSCO Discovery Service with OCLC WMS Integration*/ /* This subscription can be tracked by presence of active database ('pfils') on profdatabase*/ /* "pflis" is a dummy database with no content behind it, it. It is created just to track customer subscription for the OLC product offering. */ /* It will always attached to "EBSCO Discovery Service with OCLC WMS Integration (edsoclci)" */ /* Note: EPAdmin's Db access is not subscription based. They have access to all databases all tabs all the time.*/ DECLARE @CustType char (1) DECLARE @InterfaceID varchar (10) DECLARE @DbName varchar(10) DECLARE @ReturnValue bit SET @DbName='pfils' SET @ReturnValue =0 SELECT @InterfaceID=a.InterfaceID, @CustType=case c.CustType When 'S' THEN 'P' /* Paying Customer */ When 'T' THEN 'P' /* Paying Customer */ ELSE 'I' /* Internal Customer */ END FROM [dbo].[Profile] a INNER JOIN [dbo].[Customer] c ON c.CustID=a.CustID WHERE a.ProfNo=@ProfNo IF (@InterfaceID <> 'eds') SET @ReturnValue =0 ELSE IF (@CustType = 'I') SET @ReturnValue =1 /* EpAdmin will always have access to all tabs*/ ELSE IF EXISTS (SELECT 1 /* Paying Customer profile */ FROM [dbo].[ProfDatabase] p Inner Join [dbo].[DbList] b on (p.DbVerNo = b.DbVerNo) WHERE p.ProfNo = @ProfNo AND b.DbName=@DbName /* look for specific database*/ AND ( p.Mode IS NULL OR p.Mode <> 'X' ) AND (DATEDIFF(hh, p.AccessEndDate,GETDATE()) < 0)) SET @ReturnValue =1 Select @ReturnValue END
CREATE PROCEDURE [dbo].[EAIP_CopyInterface_162] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceIDFrom VARCHAR(10), @VersionFrom VARCHAR(10), @InterfaceIDTo VARCHAR(10), @VersionTo VARCHAR(10), @InterfaceName NVARCHAR(100), @DefProfID VARCHAR(10) ) AS BEGIN BEGIN TRY BEGIN TRANSACTION IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceIDFrom AND [dbo].[InterfaceVersion].[Version] = @VersionFrom) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16, -1, @InterfaceIDFrom, @VersionFrom) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceIDTo AND [dbo].[InterfaceVersion].[Version] = @VersionTo) BEGIN RAISERROR('The Target Interface-Version %s-%s is already exist.', 16, -1, @InterfaceIDTo, @VersionTo) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID] = @DefProfID) BEGIN RAISERROR('The default profile ID %s already exists', 16, -1, @DefProfID) RETURN END DECLARE @ClientType VARCHAR(10), @IsMobile BIT SELECT @ClientType=[dbo].[Interface].[ClientType] FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@InterfaceIDFrom EXEC [dbo].[EAIP_AddInterface_70] @InterfaceIDTo, @InterfaceIDTo, 'N', @ClientType INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode],[dbo].[InterfaceVersion].[PersistentLinkURL], [dbo].[InterfaceVersion].[SupportDbTitleLists],[dbo].[InterfaceVersion].[DefProfID],[dbo].[InterfaceVersion].[DefLangCode], [dbo].[InterfaceVersion].[NewWin], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceVersion].[SiteID],[dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[PersistentLinkURL],[dbo].[InterfaceVersion].[SupportDbTitleLists],@DefProfID,[dbo].[InterfaceVersion].[DefLangCode],[dbo].[InterfaceVersion].[NewWin], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceVersion].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) VALUES (@InterfaceIDTo, @VersionTo, 'en',@InterfaceName) IF @@ERROR <> 0 BEGIN RETURN END EXEC [dbo].[EAIP_CopyInterfaceVersionParameters_76] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo , @VersionTo IF @@ERROR <> 0 BEGIN RETURN END EXEC [dbo].[EAIP_CopyInterfaceLanguages_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN RETURN END EXEC [dbo].[EAIP_CopyInterfaceScreens_76] @InterfaceIDFrom , @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN RETURN END EXEC [dbo].[EAIP_CopyInterfaceToolbar_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN RETURN END EXEC [dbo].[EAIP_CopyInterfaceKnownSearchItems_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN RETURN END EXEC [dbo].[EAIP_CopyInterfacePrimaryDatabases_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN RETURN END DECLARE @SourceIntf VARCHAR(255), @TargetIntf VARCHAR(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface', @SourceIntf, @TargetIntf COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000), @ErrorSeverity INT, @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetMasterTitleListSortedByTitle_70]( @Origin as nvarchar(430) = '') AS BEGIN SELECT TOP 1000 [dbo].[MasterTitle].[TitleNo], [dbo].[MasterTitle].[Title], [dbo].[MasterTitle].[ISSN] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[Title] >= @Origin ORDER BY [dbo].[MasterTitle].[Title] END
CREATE TRIGGER CustomerInsertTrigger ON dbo.Customer AFTER INSERT AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT CustID, 'I' FROM inserted END
Create Procedure [dbo].[EATL_UpdateInterfaceDbToolbarItem_103](@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(100), @Caption nvarchar(max), @lang varchar(10)) as Begin Begin try Begin transaction Declare @FeatureNo int Declare @xml xml Declare @newXml xml Select @FeatureNo=[dbo].[FeatureList].[FeatureNo] from [dbo].[FeatureList] where [dbo].[FeatureList].[FeatureName]=@FeatureName and [dbo].[FeatureList].[Category]='lpt' select @xml=[dbo].[InterfaceDbFeatureValues].[FieldValueXml] from [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo if @xml.exist('/fields/field[@name = "ToolbarCaption" and @lang = sql:variable("@Lang")]')=1 Begin set @xml.modify('replace value of (/fields[1]/field[@name = "ToolbarCaption" and @lang = sql:variable("@Lang")][1]/text()[1]) with sql:variable("@Caption")') update [dbo].[InterfaceDbFeatureValues] set [dbo].[InterfaceDbFeatureValues].[FieldValueXml]=@xml where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo End else Begin if @xml.exist('/fields')=1 Begin set @newXml=N'' + @Caption + ' ' set @xml.modify('insert sql:variable("@newXml") as last into (/fields)[1]') update [dbo].[InterfaceDbFeatureValues] set [dbo].[InterfaceDbFeatureValues].[FieldValueXml]=@xml where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo end else begin set @newXml=N'' if not exists (Select 1 from [dbo].[InterfaceDbFeatures] where [dbo].[InterfaceDbFeatures].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatures].[Version]=@Version and [dbo].[InterfaceDbFeatures].[FeatureNo]=@FeatureNo) insert [dbo].[InterfaceDbFeatures] ([dbo].[InterfaceDbFeatures].[InterfaceID], [dbo].[InterfaceDbFeatures].[Version], [dbo].[InterfaceDbFeatures].[FeatureNo]) Values (@InterfaceID, @Version, @FeatureNo) insert [dbo].[InterfaceDbFeatureValues] ([dbo].[InterfaceDbFeatureValues].[InterfaceID], [dbo].[InterfaceDbFeatureValues].[Version], [dbo].[InterfaceDbFeatureValues].[FeatureNo], [dbo].[InterfaceDbFeatureValues].[ItemNo], [dbo].[InterfaceDbFeatureValues].[FieldValueXml]) Values (@InterfaceID, @Version, @FeatureNo, 0, @newXml) end End commit transaction End try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch End ' + @Caption + '
Create Procedure [dbo].[EPCS_GetDocTypeMultiDbSTSList_90] @MultiDbSTSID varchar(10) as select [dtl].[DocTypeID] from [dbo].[DocTypeMultiDbSTSList] dtmdbsl join [dbo].[DocTypeList] dtl on dtmdbsl.DocTypeNo=dtl.DocTypeNo Where [dtmdbsl].[MultiDbSTSID]=@MultiDbSTSID
CREATE PROCEDURE [dbo].[EAUI_GetGroupProfileDetailsortedBySeqNo_82]( @CustID as varchar(10), @GroupID as varchar(100),@Origin as varchar(10) = '') AS BEGIN SELECT a.SeqNo ,a.ProfNo ,a.ProfID ,a.ProfName ,b.InterfaceID ,b.InterfaceName ,d.Description AS MarketDescr ,c.Description AS LangDescr FROM [dbo].[Profile] a LEFT JOIN EASUPPORT.dbo.MarketList d ON a.MarketID = d.MarketID INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version INNER JOIN [dbo].[LangList] c ON a.DefLangCode = c.LangCode WHERE a.CustID = @CustID AND a.GroupID = @GroupID AND b.LangCode = 'en' AND a.SeqNo >=convert(int, @Origin) ORDER BY a.SeqNo END
CREATE PROCEDURE [dbo].[EAIP_UpdateSystemLinkRequestStatus_171](@SystemCustLinkID int, @Status char(1), @ErrorMessage nvarchar(255)) AS BEGIN SET @Status=UPPER(@Status) UPDATE [dbo].[SystemLinkUpdateStatus] SET [dbo].[SystemLinkUpdateStatus].[UpdateStatus]=@Status, [dbo].[SystemLinkUpdateStatus].[ErrorMessage]=@ErrorMessage, [dbo].[SystemLinkUpdateStatus].[ProcessedTime] = (CASE WHEN @Status='C' THEN getdate() WHEN @Status='F' THEN getdate() WHEN @Status='I' THEN getdate() ELSE null END) WHERE [dbo].[SystemLinkUpdateStatus].[SystemLinkUpdateStatusID]=@SystemCustLinkID END
CREATE PROCEDURE [dbo].[EAUI_UpdateUserDefinedFields_70] (@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10),@UserDefined1 nvarchar(255),@UserDefined2 nvarchar(255)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Update User Defined Fields', @CustID, @UserDefined1, @UserDefined2 EXEC [dbo].[EAIP_UpdateUserDefinedFields_70] @CustID ,@UserDefined1 ,@UserDefined2 END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseSortOption_70](@DbVerNo int, @SortID varchar(10) ) AS BEGIN SELECT [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[Hide] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo AND [dbo].[DbSort].[SortID]=@SortID END
CREATE PROCEDURE [dbo].[EAIPO_GetNewItemName_70](@CustID varchar(10), @ParamName varchar(100), @SourceItemName varchar(255)=NULL, @NewItemName varchar(255) OUTPUT ) AS BEGIN DECLARE @ItemNo varchar(50) IF @SourceItemName = '' SET @SourceItemName=null SET @ItemNo = convert(varchar,convert(int,dbo.EAIF_GetAdminParamValue_70(@ParamName))+1) EXEC [dbo].[EAIP_SetAdminParamValue_70] @ParamName, @ItemNo SELECT @NewItemName = ISNULL(@SourceItemName+':','')+@CustID+':'+@ItemNo END
CREATE PROCEDURE [dbo].[EAIP_GetProfSpecifiedDbLimiters_235]( @profNo int, @profInterfaceID varchar(10), @profVersion varchar(10), @dbNamesList varchar(max), @paramScreenIdList varchar(max), @LangCode varchar(10) ) AS BEGIN DECLARE @ShowOff bit = 0; DECLARE @ShowOn bit = 1; DECLARE @DbShortInfo AS TABLE ( DbVerNo INT, DbName VARCHAR(10), SourceType CHAR(1) ); INSERT INTO @DbShortInfo SELECT dl.DbVerNo, dl.DbName, dl.SourceType FROM ProfDatabase pd INNER JOIN DbList dl ON pd.DbVerNo = dl.DbVerNo LEFT JOIN string_split(@dbNamesList,',') names ON dl.DbName = names.value WHERE dl.DbLabel = @profVersion AND pd.ProfNo = @ProfNo AND (@dbNamesList IS NULL OR value IS NOT NULL) DECLARE @productLimitersFiltered AS TABLE ( ProductID VARCHAR(10), Limiter VARCHAR(10) ) INSERT INTO @productLimitersFiltered SELECT ProductID, Limiter FROM EASUPPORT.dbo.EAIF_GetProductLimiters_236() pl INNER JOIN @DbShortInfo dbl ON dbl.DbName = pl.ProductID DECLARE @ResultTable AS TABLE ( LimiterID VARCHAR(20), ControlSize SMALLINT, ControlType VARCHAR(20), ControlFormat VARCHAR(20), Caption NVARCHAR(255), LogicalOpCode VARCHAR(3), SearchString VARCHAR(4000), ControlTemplate VARCHAR(7000), Show BIT, DefValue VARCHAR(20), DefPosn SMALLINT, ColNum SMALLINT, searchLimiterGroup VARCHAR(10), QueryMaskId VARCHAR(20), IsListContentsGrouped VARCHAR(1), HelpUrl VARCHAR(255), DbName VARCHAR(10), ScreenID VARCHAR(10) ) --if @SourceType in ('M') IF EXISTS(SELECT 1 FROM @DbShortInfo WHERE SourceType = 'M') Begin INSERT INTO @ResultTable select mdbles.LimiterID, null AS ControlSize, lct.ControlTag as ControlType, lct.ControlFormat, mdbsc.Caption, mdbll.LogicalOpCode, mdbll.SearchString, mdbll.ControlTemplate, IsNull(a.Show, @ShowOn) as Show, mdbles.DefValue, Null as DefPosn, null as Colnum, (SELECT TOP 1 ProductID FROM @productLimitersFiltered WHERE Limiter = mdbll.LimiterID) AS searchLimiterGroup, mdbll.QueryMaskId, null as IsListContentsGrouped, null as HelpUrl, null as DbName, ifs.ScreenID from [dbo].[InterfaceScreen] ifs Cross Join [dbo].[MDbLimitersExternalSource] mdbles INNER JOIN [dbo].[MDbLimiterList] mdbll on mdbles.LimiterID=mdbll.LimiterID and mdbll.DbLabel='live' INNER JOIN dbo.LimiterControlType lct ON mdbll.ControlType = lct.ControlType INNER JOIN dbo.MDbLimitersExternalSourceCaption mdbsc ON mdbsc.LimiterNo = mdbles.LimiterNo left outer join [dbo].[ProfMDbLimitersExternalSource] a on mdbles.LimiterNo=a.LimiterNo and ifs.IntfScreenNo=a.IntfScreenNo and a.ProfNo=@ProfNo LEFT JOIN string_split(@paramScreenIdList, ',') ids ON ifs.ScreenID = ids.value where ifs.InterfaceID=@profInterfaceID AND ifs.Version=@profVersion AND mdbsc.LangCode = @LangCode AND (@paramScreenIdList IS NULL OR value IS NOT NULL) End --Limiters attached to the interface manually or customized by interface INSERT INTO @ResultTable SELECT ll.LimiterId, ll.ControlSize, lct.ControlTag as ControlType, lct.ControlFormat, cap.Caption, ll.LogicalOpCode, ll.SearchString, ld.ControlTemplate, IsNull(pdl.Show,dil.Show) as Show, IsNull(pdl.DefValue,dil.DefValue) as DefValue, dil.DefPosn, dil.ColNum, (SELECT TOP 1 ProductID FROM @productLimitersFiltered WHERE Limiter = ll.LimiterID) AS searchLimiterGroup, ll.QueryMaskId, CASE ll.IsListContentsGrouped WHEN 1 THEN 'y' ELSE 'n' END AS IsListContentsGrouped, ll.HelpUrl, dbshi.DbName, ifs.ScreenID FROM [dbo].[InterfaceScreen] ifs INNER JOIN [dbo].[DbInterfaceLimiter] dil ON ifs.InterfaceID=@profInterfaceID AND ifs.Version=@profVersion AND dil.IntfScreenNo=ifs.IntfScreenNo INNER JOIN @DbShortInfo dbshi ON dil.DbVerNo = dbshi.DbVerNo INNER JOIN [dbo].[DbLimiter] dl ON dil.DbVerNo=dl.DbVerNo AND dil.LimiterNo=dl.LimiterNo LEFT JOIN [dbo].[ProfDbLimiter2] pdl ON pdl.ProfNo=@ProfNo AND pdl.DbVerNo=dl.DbVerNo AND pdl.LimiterNo=dl.LimiterNo AND pdl.IntfScreenNo=ifs.IntfScreenNo INNER JOIN [dbo].[LimiterList] ll ON dl.LimiterNo=ll.LimiterNo LEFT JOIN dbo.LimiterDetail ld ON ll.LimiterNo = ld.LimiterNo INNER JOIN dbo.LimiterControlType lct ON ll.ControlType = lct.ControlType INNER JOIN dbo.DbLimiterCaption cap ON cap.LimiterNo = ll.LimiterNo AND cap.DbVerNo = dbshi.DbVerNo LEFT JOIN string_split(@paramScreenIdList, ',') ids ON ifs.ScreenID = ids.value WHERE cap.LangCode = @LangCode AND dbshi.SourceType <> 'M' AND (@paramScreenIdList IS NULL OR ids.value IS NOT NULL) UNION ALL --All other database limiters with "Include when AutoAdd" for screens with "AutoAdd" SELECT ll.LimiterId, ll.ControlSize, lct.ControlTag as ControlType, lct.ControlFormat, cap.Caption, ll.LogicalOpCode, ll.SearchString, ld.ControlTemplate, CASE WHEN ll.BitFlag1=1 THEN IsNull(pdl.Show,IsNull(dil.Show,@ShowOff)) ELSE IsNull(pdl.Show,IsNull(dil.Show,ifs.LimiterShow)) END AS Show, IsNull(pdl.DefValue,IsNull(dil.DefValue,dl.DefValue)) as DefValue, dil.DefPosn, dil.ColNum, (SELECT TOP 1 ProductID FROM @productLimitersFiltered WHERE Limiter = ll.LimiterID) AS searchLimiterGroup, ll.QueryMaskId, CASE ll.IsListContentsGrouped WHEN 1 THEN 'y' ELSE 'n' END AS IsListContentsGrouped, ll.HelpUrl, dbshi.DbName, ifs.ScreenID FROM [dbo].[InterfaceScreen] ifs INNER JOIN [dbo].[DbLimiter] dl ON ifs.InterfaceID=@profInterfaceID AND ifs.Version=@profVersion AND ifs.AutoAddLimiter=1 AND dl.ResFlag=1 INNER JOIN @DbShortInfo dbshi ON dl.DbVerNo = dbshi.DbVerNo LEFT JOIN [dbo].[DbInterfaceLimiter] dil ON dil.DbVerNo=dl.DbVerNo AND dil.LimiterNo=dl.LimiterNo AND dil.IntfScreenNo=ifs.IntfScreenNo LEFT JOIN [dbo].[ProfDbLimiter2] pdl ON pdl.ProfNo=@ProfNo AND pdl.DbVerNo=dl.DbVerNo AND pdl.LimiterNo=dl.LimiterNo AND pdl.IntfScreenNo=ifs.IntfScreenNo INNER JOIN [dbo].[LimiterList] ll ON dl.LimiterNo=ll.LimiterNo LEFT JOIN dbo.LimiterDetail ld ON ll.LimiterNo = ld.LimiterNo INNER JOIN dbo.LimiterControlType lct ON ll.ControlType = lct.ControlType INNER JOIN dbo.DbLimiterCaption cap ON cap.LimiterNo = ll.LimiterNo AND cap.DbVerNo = dbshi.DbVerNo LEFT JOIN string_split(@paramScreenIdList, ',') ids ON ifs.ScreenID = ids.value WHERE dil.LimiterNo is null AND cap.LangCode = @LangCode AND dbshi.SourceType <> 'M' AND (@paramScreenIdList IS NULL OR value IS NOT NULL) SELECT LimiterID, ControlSize, ControlType, ControlFormat, Caption, LogicalOpCode, SearchString, ControlTemplate, Show, DefValue, DefPosn, ColNum, searchLimiterGroup, QueryMaskId, IsListContentsGrouped, HelpUrl, DbName, ScreenID FROM @ResultTable END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseServerParams_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @Threads int, @WaitForRequest int, @DefSearchInstances int, @MaxSearchInstances int, @DefRetrieveInstances int, @MaxRetrieveInstances int, @DefFormatInstances int, @MaxFormatInstances int, @DefFullTextInstances int, @MaxFullTextInstances int, @DefThesaurusInstances int, @MaxThesaurusInstances int, @MaxFuzzyTerms int, @MaxBooleanTerms int, @MaxFuzzyRecordNumbers int, @MaxBooleanRecordNumbers int, @MaxRecords int) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Server Parameters' If exists (select 1 from [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo]=@DbVerNo) UPDATE [dbo].[DbServerParams] SET [dbo].[DbServerParams].[Threads] = @Threads, [dbo].[DbServerParams].[WaitForRequest] = @WaitForRequest, [dbo].[DbServerParams].[MaxRecords] = @MaxRecords, [dbo].[DbServerParams].[DefSearchInstances] = @DefSearchInstances, [dbo].[DbServerParams].[MaxSearchInstances] = @MaxSearchInstances, [dbo].[DbServerParams].[DefRetrieveInstances] = @DefRetrieveInstances, [dbo].[DbServerParams].[MaxRetrieveInstances] = @MaxRetrieveInstances, [dbo].[DbServerParams].[DefFormatInstances] = @DefFormatInstances, [dbo].[DbServerParams].[MaxFormatInstances] = @MaxFormatInstances, [dbo].[DbServerParams].[DefFullTextInstances] = @DefFullTextInstances, [dbo].[DbServerParams].[MaxFullTextInstances] = @MaxFullTextInstances, [dbo].[DbServerParams].[DefThesaurusInstances] = @DefThesaurusInstances, [dbo].[DbServerParams].[MaxThesaurusInstances] = @MaxThesaurusInstances, [dbo].[DbServerParams].[MaxFuzzyTerms] = @MaxFuzzyTerms, [dbo].[DbServerParams].[MaxBooleanTerms] = @MaxBooleanTerms, [dbo].[DbServerParams].[MaxFuzzyRecordNumbers] = @MaxFuzzyRecordNumbers, [dbo].[DbServerParams].[MaxBooleanRecordNumbers] = @MaxBooleanRecordNumbers WHERE [dbo].[DbServerParams].[DbVerNo] = @DbVerNo else Insert [dbo].[DbServerParams] ([dbo].[DbServerParams].[DbVerNo], [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords]) Values (@DbVerNo, @Threads, @WaitForRequest, @DefSearchInstances, @MaxSearchInstances, @DefRetrieveInstances, @MaxRetrieveInstances, @DefFormatInstances, @MaxFormatInstances, @DefFullTextInstances, @MaxFullTextInstances, @DefThesaurusInstances, @MaxThesaurusInstances, @MaxFuzzyTerms, @MaxBooleanTerms, @MaxFuzzyRecordNumbers, @MaxBooleanRecordNumbers, @MaxRecords) END
CREATE FUNCTION [dbo].[EAIF_GetGroupNo_70](@CustID varchar(10), @GroupID varchar(10)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID]=@GroupID) END
CREATE PROCEDURE [dbo].[EAUI_GetAvailableDbLimiters_70](@DbLabel varchar(10),@DbVerNo int) AS BEGIN SELECT ll.LimiterNo, ll.LimiterId + ':' + ll.Description + '(' + lc.ControlName + ')' AS LimiterText FROM [dbo].[LimiterList] ll JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) WHERE ll.DbLabel = @DbLabel AND ll.LimiterNo NOT IN ( SELECT [dbo].[DbLimiter].[LimiterNo] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@DbVerNo) ORDER BY ll.LimiterId,ll.Description END
CREATE PROCEDURE [dbo].[EAIP_AddContentFilterListItem_181](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterId VARCHAR(25), @ContentFilterItemSearchConceptID varchar(20), @ContentFilterItemSearchTerm nvarchar(2000)) AS BEGIN BEGIN TRY DECLARE @ContentFilterItemNo INT DECLARE @ContentFilterNo INT SELECT @ContentFilterNo=[dbo].[ContentFilterList].[ContentFilterNo] FROM dbo.ContentFilterList WHERE [dbo].[ContentFilterList].[ContentFilterListID]=@ContentFilterId BEGIN TRANSACTION INSERT [dbo].[ContentFilterListItems] ([dbo].[ContentFilterListItems].[ContentFilterNo], [dbo].[ContentFilterListItems].[ContentFilterItemSearchConceptID], [dbo].[ContentFilterListItems].[ContentFilterItemSearchTerm]) VALUES (@ContentFilterNo, @ContentFilterItemSearchConceptID, @ContentFilterItemSearchTerm) SELECT @ContentFilterItemNo=@@IDENTITY UPDATE [dbo].[ContentFilterList] SET [dbo].[ContentFilterList].[LastUpdatedDate]=GETDATE() WHERE [dbo].[ContentFilterList].[ContentFilterNo]=@ContentFilterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Content Filter List','Add List Item', @ContentFilterNo, @ContentFilterItemNo, @ContentFilterItemSearchConceptID, @ContentFilterItemSearchTerm COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\EAIP_GetCustLastResyncDate_92.sql CREATE Procedure [dbo].[EAIP_GetCustLastResyncDate_92] @CustID varchar(10), @SourceType char(1) as Begin Declare @Threshold int Select @Threshold=[EASUPPORT].[dbo].[AdminSupportState].[ParamNumValue] from EASUPPORT.dbo.AdminSupportState where [EASUPPORT].[dbo].[AdminSupportState].[ParamName]='ExternalSourceResyncThreshold' select distinct c.CustID, [c].[CustName], [esrs].[LastResyncDate], [esrs].[LastResyncStatus], cs.StartDate, @Threshold as Threshold from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo left outer join EASUPPORT.dbo.ExternalSourceResyncStatus esrs on c.CustID=esrs.CustID where po.SourceType=@SourceType and c.CustID=@CustID End
--sql content merged from file: \StoredProcedures\EAUI_GetSLTargetDbList_78.sql CREATE PROCEDURE [dbo].[EAUI_GetSLTargetDbList_78] (@DbVerNo int) AS BEGIN SELECT [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DisplayName] + N' (' + [dbo].[DbList].[DbName] + N')' AS TargetDbName From [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel] = 'live' AND ([dbo].[DbList].[DbType] = 1 OR [dbo].[DbList].[DbType] = 4) AND dbo.EAIF_GetDbParamScalarValue_70([dbo].[DbList].[DbVerNo], 'fullTextAllowed')= 1 AND [dbo].[DbList].[DbVerNo] NOT IN (select [dbo].[DbSourceTarget].[TargetDbNo] from [dbo].[DbSourceTarget] where [dbo].[DbSourceTarget].[SourceDbNo] = @DbVerNo) AND [dbo].[DbList].[DbVerNo] <> @DbVerNo -- Eexclude the current selected Db as a Target. AND [dbo].[DbList].[SourceType]='D' -- restrict the selection to Ep databases only ORDER BY [dbo].[DbList].[DisplayName] END
/****** Object: StoredProcedure [dbo].[EAUI_BrowseMbA_90] Script Date: 04/15/2008 17:17:28 ******/ CREATE PROCEDURE [dbo].[EAUI_BrowseMbA_90]( @Field Varchar(20), @Value Varchar(255)) AS SET NOCOUNT ON IF(@Field = 'MultiDbAuthID') SELECT mdal.MultiDbAuthID, mdac.LinkText Caption, mdal.Description FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID WHERE mdac.LangCode = 'en' AND mdal.MultiDbAuthID Like @Value + '%' ORDER BY mdal.MultiDbAuthID ELSE IF(@Field = 'Description') SELECT mdal.MultiDbAuthID, mdac.LinkText Caption, mdal.Description FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID WHERE mdac.LangCode = 'en' AND mdal.Description Like @Value + '%' ORDER BY mdal.MultiDbAuthID RETURN
CREATE PROCEDURE [dbo].[IS_AddModCustomer_210](@CustID varchar(10), @CustName nvarchar(100), @TrialSite bit, @EHCust bit, @MarketNo int = 1006) AS BEGIN -- Wrapping procedure to avoid MSDTC issue EXEC EASUPPORT.[dbo].[IS_AddModCustomer_100] @CustId, @CustName, @TrialSite, @EHCust, @MarketNo END
---- Check to see if customer has subscription to at least one catalog CREATE Procedure [dbo].[EAIP_CheckIfCustomerHasCatalogs_104] (@CustID varchar(10)) AS BEGIN DECLARE @aRet bit Declare @ParamNo int Set @aRet = 'false' -- Note to developers : This functionality is written for EHPMEBSCOADMIN-827. -- Customer could have access to multiple interfaces, however i want to restrict the search to the interfaces (and profiles) -- that support catalog holding table. There are currently 'eds' and 'ehost' interfaces, however this list could be expanded in future. -- I used a parameter that is specific to catalogholding table feature to determine the interfaces it is attached to. Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='catalogHoldingTblHeadings' if exists (select 1 from [dbo].[ProfDatabase] pd WITH (NOLOCK) join [dbo].[Profile] p WITH (NOLOCK) on (p.ProfNo=pd.ProfNo) join [dbo].[DbList] d WITH (NOLOCK) on (d.DbVerNo=pd.DbVerNo) Where p.CustID=@CustID and p.InterfaceID in (Select [dbo].[InterfaceParamList].[InterfaceID] from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo) and d.DbName like 'cat%' and d.SourceType='C' and (pd.AccessEndDate is null OR datediff(hh, pd.AccessEndDate, getdate())< 0)) --print 'Customer has a catalog' Set @aRet='true' Select @aRet END
CREATE PROCEDURE [dbo].[EAIP_CopyProfile_104](@SrcCustID varchar(10), @SrcGroupID nvarchar(10), @SrcProfID varchar(10), @DstCustID varchar(10), @DstGroupID nvarchar(10), @DstProfID varchar(10), @ParamNumbers varchar(8000), @SubParamNumbers varchar(8000), @SubParamValues varchar(8000), @SelectedDbs varchar(max), @SelectedDbGroups varchar(max), @SelectedWidgets nvarchar(max), @SelectedToolbars nvarchar(max) ) AS BEGIN DECLARE @SrcProfNo int DECLARE @DstProfNo int DECLARE @ProfPwd nvarchar(10) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char(1) DECLARE @DbLabel varchar(10) DECLARE @ProfName nvarchar(100) DECLARE @DefLangCode varchar(10) DECLARE @DstIntfID varchar(10) Declare @DstDbLabel varchar(10) DECLARE @ParamNo smallint DECLARE @ProfSeqNo smallint DECLARE @DstProfExists char(1) DECLARE @ProfSpecialParams nvarchar(50) DECLARE @ShowFullTextGrid int DECLARE @EBSCOFTParamNo int DECLARE @EBSCOLinkedFTParamNo int Create Table #DbClusterTable (DbVerNo INT, ClustNo INT) Create Table #DbTable (DbVerNo INT) SET NOCOUNT ON -- don't copy to itself IF (@SrcCustID=@DstCustID AND @SrcGroupID=@DstGroupID AND @SrcProfID=@DstProfID) BEGIN RAISERROR('Cannot copy to the same Site, Group, and profile ids',16,-1) RETURN END -- make sure the source profile is there to be copied -- and get the source info (interface, version etc) SELECT @SrcProfNo=[dbo].[Profile].[ProfNo], @ProfPwd=[dbo].[Profile].[ProfPwd], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode], @DbLabel=[dbo].[Profile].[DbLabel], @ProfName=[dbo].[Profile].[ProfName], @DefLangCode=[dbo].[Profile].[DefLangCode], @ProfSeqNo=[dbo].[Profile].[SeqNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@SrcCustID AND [dbo].[Profile].[GroupID]=@SrcGroupID AND [dbo].[Profile].[ProfID]=@SrcProfID IF @SrcProfNo is NULL BEGIN RAISERROR('The profile %s.%s.%s does not exist',16,-1,@SrcCustId,@SrcGroupID,@SrcProfID) RETURN END -- make sure the source and target interfaces are the same SELECT @DstProfNo=[dbo].[Profile].[ProfNo], @DstIntfID=[dbo].[Profile].[InterfaceID], @DstDbLabel=[dbo].[Profile].[DbLabel] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@DstCustID AND [dbo].[Profile].[GroupID]=@DstGroupID AND [dbo].[Profile].[ProfID]=@DstProfID IF @DstIntfID IS NOT NULL BEGIN IF @InterfaceID<>@DstIntfID BEGIN RAISERROR('Source profile interface(%s) is not same as Target profile interface(%s), Copying aborted.',16,-1, @InterfaceID, @DstIntfID) RETURN END END -- get the customer type (internal customers are handled differently) DECLARE @CustType char(1) SELECT @CustType=[dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@DstCustID IF (@CustType ='S' OR @CustType='T') BEGIN IF NOT EXISTS (SELECT 1 FROM EASUPPORT.dbo.CustSubscription CSUB JOIN EASUPPORT.dbo.ProductPackage PACK on PACK.PrdOffNo = CSUB.PrdOffNo JOIN EASUPPORT.dbo.Product PRD on PRD.ProductID = PACK.ProductID JOIN EASUPPORT.dbo.ProductInterface PRDI on PRDI.ProductID = PACK.ProductID AND PRDI.Version= @Version WHERE CSUB.CustID=@DstCustID AND PRDI.InterfaceID=@InterfaceID) BEGIN RAISERROR('Profile copy failed. Target customer (%s) does not have subscription to any products that require access to the interface (%s)', 16,-1, @DstCustID,@InterfaceID) RETURN END END --Assume Profile already exists, if not down below we set this flag to 'N' and create a new Prfoile SET @DstProfExists = 'Y' Begin Try BEGIN TRANSACTION -- if the target profile doesn't exist, create a new one IF @DstProfNo is NULL BEGIN -- Create the group if does not exist IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@DstCustID AND [dbo].[UserGroup].[GroupID]=@DstGroupID) BEGIN EXEC [dbo].[EAIP_CopyUserGroup_70] @SrcCustID, @SrcGroupID, @DstCustID, @DstGroupID END -- Create a new profile EXEC [dbo].[EAIP_AddProfileWithDatabases_70] @DstCustID, @DstGroupID, @DstProfID,@ProfPwd,@InterfaceID,@Version,@MarketID,@STMode,@DbLabel,@ProfName,@DefLangCode SELECT @DstProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@DstCustID AND [dbo].[Profile].[GroupID]=@DstGroupID AND [dbo].[Profile].[ProfID]=@DstProfID SET @DstProfExists = 'N' END -- load the selected parameters into a temp table Create Table #ParamNoTable (ParamNo smallint ) INSERT INTO #ParamNoTable SELECT convert(smallint,[dbo].[EAIF_GetItemTable_70].[Item]) FROM dbo.EAIF_GetItemTable_70(@ParamNumbers,'+') --Sub Parameters and associated values -- (subparams are currently params that have append/replace radio buttons, subparamvalue is the append (a) or replace (r) seletion) -- use rowNo column to "match" the subparams and their values Create Table #SubParamIdTable (rowNo int IDENTITY(1,1), ParamNo smallint) Create Table #SubParamValueTable (rowNo int IDENTITY(1,1), ParamValue varchar(20)) -- get the subparams DECLARE @i int SET @i = 0 INSERT INTO #SubParamIdTable ( #SubParamIdTable.[ParamNo] ) SELECT convert(smallint,a.Item) FROM dbo.EAIF_GetItemTable_70(@SubParamNumbers,'+') a -- and the suparam values SET @i = 0 INSERT INTO #SubParamValueTable ( #SubParamValueTable.[ParamValue]) SELECT RTRIM(b.Item) FROM dbo.EAIF_GetItemTable_70(@SubParamValues,'|') b -- match the subparams and values on index and add to single table Create Table #SubParamTable (ParamNo smallint primary key, ParamValue varchar(20)) INSERT INTO #SubParamTable (#SubParamTable.[ParamNo], #SubParamTable.[ParamValue]) SELECT a.ParamNo, b.ParamValue FROM #SubParamIdTable AS a INNER JOIN #SubParamValueTable AS b ON a.rowNo = b.rowNo -- There are few EP Customlinks which are always present on certain interfaces (eds/pfi), add them to paramNolist here -- These links are non-removable from the profile. Copy the entries if they are customized Select @ShowFullTextGrid = dbo.EAIF_GetProfileParamScalarValue_70 (@SrcProfNo,'showFullTextGridOnAdminCustomLinkPage') IF @ShowFullTextGrid = 1 begin SELECT @EBSCOFTParamNo=dbo.EAIF_GetCustomParamNumber_70('systemFTPlaceHolderLink','C') SELECT @EBSCOLinkedFTParamNo=dbo.EAIF_GetCustomParamNumber_70('systemLinkedFTPlaceHolderLink','C') INSERT INTO #ParamNoTable SELECT @EBSCOFTParamNo UNION SELECT @EBSCOLinkedFTParamNo end -- specific parameters that are being copied separately are identified with the -- Parameter Display Name (Heading/Subheading) as seen on the CopyProfileForm -- Databases in the profile (Databases heading / Databases link) -- copy these before DbGroups so we don't overwrite changes made when adding Group Db databases SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('databases','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DECLARE @operation AS VARCHAR(20) SET @operation = (SELECT #SubParamTable.[ParamValue] FROM #SubParamTable WHERE #SubParamTable.[ParamNo] = @ParamNo) exec dbo.EAIP_CopyProfileDatabases_104 @CustType, @SrcProfNo, @DstProfNo, @operation, @SelectedDbs END -- primary databases for internal customers (EHPMEBSCOADMIN-812/EADM-3066 -always add primary databases, even if database parameters are not checked) IF (@CustType ='I' OR @CustType='P') BEGIN SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('databases','P') IF NOT EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) INSERT INTO [dbo].[ProfDatabase] ([pdd].[ProfNo],[pdd].[DbVerNo],[pdd].[SeqNo],[pdd].[Enable],[pdd].[SelDefault], [pdd].[CustomLimiter],[pdd].[CtrlCustID],[pdd].[StartPage],[pdd].[SugSubject], [pdd].[Mode], [pdd].[AccessEndDate]) SELECT @DstProfNo,dbl2.DbVerNo,pd.SeqNo,1,1, 0 as CustomLimiter,pd.CtrlCustID,pd.StartPage,null,'I',NULL FROM [dbo].[ProfDatabase] pd JOIN [dbo].[InterfacePrimaryDatabases] ipd on pd.DbVerNo = ipd.DbVerNo and ipd.InterfaceID = @InterfaceID and ipd.Version = @Version Join [dbo].[DbList] dbl on ipd.DbVerNo=dbl.DbVerNo join [dbo].[DbList] dbl2 on dbl.DbName=dbl2.DbName and dbl2.DbLabel=@DstDbLabel Left outer join [dbo].[ProfDatabase] pdd on pdd.ProfNo=@DstProfNo and pdd.DbVerNo=ipd.DbVerNo WHERE pd.ProfNo=@SrcProfNo AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) AND pdd.DbVerNo is null END -- check suggest subject terms -- Show "Suggest Subject Terms" (Searching/Advanced Search Screen Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('suggestSubjectHeadings','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN Delete [dbo].[ProfDbSugSubjTerms] where [dbo].[ProfDbSugSubjTerms].[ProfNo]=@DstProfNo; INSERT [dbo].[ProfDbSugSubjTerms] SELECT @DstProfNo, a.DbVerNo, a.ScreenID, a.SugSubject FROM [dbo].[ProfDbSugSubjTerms] a INNER JOIN [dbo].[ProfDatabase] b ON a.DbVerNo=b.DbVerNo WHERE a.ProfNo=@SrcProfNo AND b.ProfNo=@DstProfNo; END -- Check Database Limiters -- Limiters (Searching/ Limiter & Expander) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('dbLimiters','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE #DbTable INSERT #DbTable SELECT dbl.DbVerNo FROM dbo.DbList dbl JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType AND dbcl.Description<>'Publication' DELETE dbo.ProfDbLimiter2 FROM dbo.ProfDbLimiter2 pdbl JOIN #DbTable dbt ON pdbl.DbVerNo=dbt.DbVerNo WHERE ProfNo = @DstProfNo INSERT INTO [dbo].[ProfDbLimiter2]([pdbl].[ProfNo],[pdbl].[DbVerNo],[pdbl].[IntfScreenNo],[pdbl].[LimiterNo],[pdbl].[Show],[pdbl].[DefValue],[pdbl].[SeqNo]) SELECT @DstProfNo, pdbl.DbVerNo,pdbl.IntfScreenNo,pdbl.LimiterNo,pdbl.Show,pdbl.DefValue,pdbl.SeqNo FROM [dbo].[ProfDbLimiter2] pdbl JOIN [dbo].[ProfDatabase] pdb ON pdbl.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=@DstProfNo JOIN #DbTable dbt ON pdbl.DbVerNo=dbt.DbVerNo WHERE pdbl.ProfNo=@SrcProfNo INSERT INTO [dbo].[ProfDbLimiterCaption2]([pdblc].[ProfNo],[pdblc].[DbVerNo],[pdblc].[IntfScreenNo],[pdblc].[LimiterNo],[pdblc].[LangCode],[pdblc].[Caption]) SELECT @DstProfNo, pdblc.DbVerNo,pdblc.IntfScreenNo,pdblc.LimiterNo,pdblc.LangCode,pdblc.Caption FROM [dbo].[ProfDbLimiterCaption2] pdblc JOIN [dbo].[ProfDatabase] pdb ON pdblc.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=@DstProfNo JOIN #DbTable dbt ON pdblc.DbVerNo=dbt.DbVerNo WHERE pdblc.ProfNo=@SrcProfNo UPDATE a SET [CustomLimiter]=b.CustomLimiter FROM [dbo].[ProfDatabase] a JOIN [dbo].[ProfDatabase] b ON a.DbVerNo=b.DbVerNo JOIN #DbTable dbt ON a.DbVerNo=dbt.DbVerNo WHERE a.ProfNo=@DstProfNo AND b.ProfNo=@SrcProfNo DELETE [dbo].[ProfDbLimiterDbOrder] FROM dbo.ProfDbLimiterDbOrder pdblo JOIN #DbTable dbt ON pdblo.DbVerNo=dbt.DbVerNo WHERE ProfNo = @DstProfNo INSERT INTO [dbo].[ProfDbLimiterDbOrder]([pdblo].[ProfNo],[pdblo].[DbVerNo],[pdblo].[IntfScreenNo],[pdblo].[LimiterNo],[pdblo].[SeqNo]) SELECT @DstProfNo, pdblo.DbVerNo, pdblo.IntfScreenNo, pdblo.LimiterNo, pdblo.SeqNo FROM [dbo].[ProfDbLimiterDbOrder] pdblo JOIN [dbo].[ProfDatabase] pdb ON pdblo.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=@DstProfNo JOIN #DbTable dbt ON pdblo.DbVerNo=dbt.DbVerNo WHERE pdblo.ProfNo=@SrcProfNo -- added in 10.4 IF EXISTS (SELECT pdb.DbVerNo FROM [dbo].[ProfDatabase] pdb JOIN [dbo].[DbList] dl ON pdb.DbVerNo = dl.DbVerNo WHERE pdb.ProfNo = @DstProfNo and dl.SourceType = 'M') BEGIN DELETE FROM [dbo].[ProfMDbLimitersExternalSourceCaption] WHERE [dbo].[ProfMDbLimitersExternalSourceCaption].[ProfNo] = @DstProfNo DELETE FROM [dbo].[ProfMDbLimitersExternalSource] WHERE [dbo].[ProfMDbLimitersExternalSource].[ProfNo] = @DstProfNo INSERT INTO [dbo].[ProfMDbLimitersExternalSource] ([dbo].[ProfMDbLimitersExternalSource].[ProfNo], [dbo].[ProfMDbLimitersExternalSource].[IntfScreenNo], [dbo].[ProfMDbLimitersExternalSource].[LimiterNo], [dbo].[ProfMDbLimitersExternalSource].[Show], [dbo].[ProfMDbLimitersExternalSource].[DefValue], [dbo].[ProfMDbLimitersExternalSource].[SeqNo]) SELECT @DstProfNo, [dbo].[ProfMDbLimitersExternalSource].[IntfScreenNo], [dbo].[ProfMDbLimitersExternalSource].[LimiterNo], [dbo].[ProfMDbLimitersExternalSource].[Show], [dbo].[ProfMDbLimitersExternalSource].[DefValue], [dbo].[ProfMDbLimitersExternalSource].[SeqNo] FROM [dbo].[ProfMDbLimitersExternalSource] WHERE [dbo].[ProfMDbLimitersExternalSource].[ProfNo] = @SrcProfNo INSERT INTO [dbo].[ProfMDbLimitersExternalSourceCaption] ([dbo].[ProfMDbLimitersExternalSourceCaption].[ProfNo], [dbo].[ProfMDbLimitersExternalSourceCaption].[IntfScreenNo], [dbo].[ProfMDbLimitersExternalSourceCaption].[LimiterNo], [dbo].[ProfMDbLimitersExternalSourceCaption].[LangCode], [dbo].[ProfMDbLimitersExternalSourceCaption].[Caption]) SELECT @DstProfNo, [dbo].[ProfMDbLimitersExternalSourceCaption].[IntfScreenNo], [dbo].[ProfMDbLimitersExternalSourceCaption].[LimiterNo], [dbo].[ProfMDbLimitersExternalSourceCaption].[LangCode], [dbo].[ProfMDbLimitersExternalSourceCaption].[Caption] FROM [dbo].[ProfMDbLimitersExternalSourceCaption] WHERE [dbo].[ProfMDbLimitersExternalSourceCaption].[ProfNo] = @SrcProfNo END END -- Limiters (Viewing Publications/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('pubBrowseLimiters','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE #DbTable INSERT #DbTable SELECT dbl.DbVerNo FROM dbo.DbList dbl JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType AND dbcl.Description='Publication' DELETE dbo.ProfDbLimiter2 FROM dbo.ProfDbLimiter2 pdbl JOIN #DbTable dbt ON pdbl.DbVerNo=dbt.DbVerNo WHERE ProfNo = @DstProfNo INSERT INTO [dbo].[ProfDbLimiter2]([pdbl].[ProfNo],[pdbl].[DbVerNo],[pdbl].[IntfScreenNo],[pdbl].[LimiterNo],[pdbl].[Show],[pdbl].[DefValue],[pdbl].[SeqNo]) SELECT @DstProfNo, pdbl.DbVerNo,pdbl.IntfScreenNo,pdbl.LimiterNo,pdbl.Show,pdbl.DefValue,pdbl.SeqNo FROM [dbo].[ProfDbLimiter2] pdbl JOIN [dbo].[ProfDatabase] pdb ON pdbl.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=@DstProfNo JOIN #DbTable dbt ON pdbl.DbVerNo=dbt.DbVerNo WHERE pdbl.ProfNo=@SrcProfNo INSERT INTO [dbo].[ProfDbLimiterCaption2]([pdblc].[ProfNo],[pdblc].[DbVerNo],[pdblc].[IntfScreenNo],[pdblc].[LimiterNo],[pdblc].[LangCode],[pdblc].[Caption]) SELECT @DstProfNo, pdblc.DbVerNo,pdblc.IntfScreenNo,pdblc.LimiterNo,pdblc.LangCode,pdblc.Caption FROM [dbo].[ProfDbLimiterCaption2] pdblc JOIN [dbo].[ProfDatabase] pdb ON pdblc.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=@DstProfNo JOIN #DbTable dbt ON pdblc.DbVerNo=dbt.DbVerNo WHERE pdblc.ProfNo=@SrcProfNo UPDATE a SET [CustomLimiter]=b.CustomLimiter FROM [dbo].[ProfDatabase] a JOIN [dbo].[ProfDatabase] b ON a.DbVerNo=b.DbVerNo JOIN #DbTable dbt ON a.DbVerNo=dbt.DbVerNo WHERE a.ProfNo=@DstProfNo AND b.ProfNo=@SrcProfNo DELETE [dbo].[ProfDbLimiterDbOrder] FROM dbo.ProfDbLimiterDbOrder pdblo JOIN #DbTable dbt ON pdblo.DbVerNo=dbt.DbVerNo WHERE ProfNo = @DstProfNo INSERT INTO [dbo].[ProfDbLimiterDbOrder]([pdblo].[ProfNo],[pdblo].[DbVerNo],[pdblo].[IntfScreenNo],[pdblo].[LimiterNo],[pdblo].[SeqNo]) SELECT @DstProfNo, pdblo.DbVerNo, pdblo.IntfScreenNo, pdblo.LimiterNo, pdblo.SeqNo FROM [dbo].[ProfDbLimiterDbOrder] pdblo JOIN [dbo].[ProfDatabase] pdb ON pdblo.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=@DstProfNo JOIN #DbTable dbt ON pdblo.DbVerNo=dbt.DbVerNo WHERE pdblo.ProfNo=@SrcProfNo END -- check Expanders -- Expanders (Searching/ Limiter & Expander) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('expanders','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE FROM [dbo].[ProfExpander] WHERE [dbo].[ProfExpander].[ProfNo] = @DstProfNo INSERT INTO [dbo].[ProfExpander] SELECT @DstProfNo, [a].[ControlName], [a].[ControlShow],[a].[ControlDefault] FROM [dbo].[ProfExpander] a WHERE a.ProfNo=@SrcProfNo INSERT INTO [dbo].[ProfExpanderCaption] SELECT @DstProfNo, [dbo].[ProfExpanderCaption].[ControlName],[dbo].[ProfExpanderCaption].[LangCode],[dbo].[ProfExpanderCaption].[Caption] FROM [dbo].[ProfExpanderCaption] WHERE [dbo].[ProfExpanderCaption].[ProfNo]=@SrcProfNo END -- check Browse Options -- Browse Options (Searching/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('browseOptions','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE FROM [dbo].[ProfDbBrowseOption] WHERE [dbo].[ProfDbBrowseOption].[ProfNo] = @DstProfNo INSERT INTO [dbo].[ProfDbBrowseOption]([pbo].[ProfNo],[pbo].[DbVerNo],[pbo].[IntfScreenNo],[pbo].[BrowseOptionNo],[pbo].[Show],[pbo].[SeqNo]) SELECT @DstProfNo, pbo.DbVerNo,pbo.IntfScreenNo,pbo.BrowseOptionNo,pbo.Show,pbo.SeqNo FROM [dbo].[ProfDbBrowseOption] AS pbo INNER JOIN [dbo].[ProfDatabase] AS pdb ON pbo.DbVerNo = pdb.DbVerNo WHERE pbo.ProfNo = @SrcProfNo AND pdb.ProfNo = @DstProfNo END -- check Search Options -- Search Options (Searching/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('searchOptions','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE FROM [dbo].[ProfDbSearchOption] WHERE [dbo].[ProfDbSearchOption].[ProfNo] = @DstProfNo INSERT INTO [dbo].[ProfDbSearchOption]([pso].[ProfNo],[pso].[DbVerNo],[pso].[IntfScreenNo],[pso].[SearchOptionNo],[pso].[Show],[pso].[SeqNo]) SELECT @DstProfNo, pso.DbVerNo,pso.IntfScreenNo,pso.SearchOptionNo,pso.Show,pso.SeqNo FROM [dbo].[ProfDbSearchOption] AS pso INNER JOIN [dbo].[ProfDatabase] AS pdb ON pso.DbVerNo = pdb.DbVerNo WHERE pso.ProfNo = @SrcProfNo AND pdb.ProfNo = @DstProfNo END -- check CustomToolbars -- Customize Toolbar link (Branding/General Settings) -- do this before CustomParamXmlValues and then remove the param from #ParamNoTable -- otherwise the entire toolbar XML gets copied again SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customToolbar','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN SET @operation = (SELECT #SubParamTable.[ParamValue] FROM #SubParamTable WHERE #SubParamTable.[ParamNo] = @ParamNo) EXEC dbo.EAIP_CopyProfileCustomToolbars_104 @ParamNo, @srcProfNo, @dstProfNo, @operation, @SelectedToolbars DELETE FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo] = @ParamNo End -- localAuthorities and localLimiters are not copyable -- Add Xml Parameters custom links and profZ3950 Targets IF DATALENGTH(@ParamNumbers)>0 BEGIN --SELECT * FROM #SubParamTable IF ((NOT EXISTS (SELECT 1 FROM #ParamNoTable AS a INNER JOIN #SubParamTable AS b ON a.ParamNo = b.ParamNo)) OR (EXISTS (SELECT 1 FROM #ParamNoTable AS a INNER JOIN #SubParamTable AS b ON a.ParamNo = b.ParamNo WHERE b.ParamValue = 'r'))) BEGIN DELETE [dbo].[CustomParamXmlValues] FROM [dbo].[CustomParamXmlValues] AS a INNER JOIN #ParamNoTable AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo=@DstProfNo AND a.ParamLevel='P' END INSERT INTO [dbo].[CustomParamXmlValues] SELECT @DstProfNo, 'P', a.ParamNo,a.ItemName,a.ParamValue,a.SeqNo FROM [dbo].[CustomParamXmlValues] AS a INNER JOIN #ParamNoTable AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo = @SrcProfNo AND a.ParamLevel='P' AND a.ItemName NOT IN (SELECT a.ItemName FROM [dbo].[CustomParamXmlValues] AS a INNER JOIN #ParamNoTable AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo=@DstProfNo AND a.ParamLevel='P') END -- Add Scalar Parameters IF DATALENGTH(@ParamNumbers)>0 BEGIN DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] AS a INNER JOIN #ParamNoTable AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo=@DstProfNo AND a.ParamLevel='P' SET @ProfSpecialParams = 'profileDescription,profileOrder' IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo] IN (SELECT [a].[ParamNo] FROM [dbo].[CustomParamList] AS a INNER JOIN dbo.EAIF_GetItemTable_70(@ProfSpecialParams,',') AS b ON a.ParamName = b.Item)) BEGIN --Profile Description a.k.a Profile Name in Profile Table UPDATE p SET p.ProfName = @ProfName FROM [dbo].[Profile] AS p CROSS JOIN #ParamNoTable AS pt WHERE p.ProfNo = @DstProfNo AND pt.ParamNo = dbo.EAIF_GetCustomParamNumber_70('profileDescription','P') --Profile Order a.k.a. Profile SeqNo in Profile Table IF (@DstProfExists = 'Y') BEGIN UPDATE p SET p.SeqNo = @ProfSeqNo FROM [dbo].[Profile] AS p CROSS JOIN #ParamNoTable AS pt WHERE p.ProfNo = @DstProfNo AND pt.ParamNo = dbo.EAIF_GetCustomParamNumber_70('profileOrder','P') END END INSERT INTO [dbo].[CustomParamScalarValues] SELECT @DstProfNo, 'P', a.ParamNo,a.ParamValue FROM [dbo].[CustomParamScalarValues] AS a INNER JOIN #ParamNoTable AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo = @SrcProfNo AND a.ParamLevel = 'P' END --check Clusters -- Select and Order Clusters for display (Viewing Results/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('clusters','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE #DbClusterTable INSERT #DbClusterTable SELECT DISTINCT pdb.DbVerNo, a.ClustNo FROM [dbo].[ProfDatabase] pdb JOIN (SELECT cl.ClustNo, dbc.DbVerNo FROM dbo.ClusterList cl JOIN dbo.DbCluster dbc ON cl.ClustNo=dbc.ClustNo WHERE dbc.Enable=1 UNION SELECT cl.ClustNo, dbl.DbVerNo FROM dbo.ClusterList cl CROSS JOIN dbo.DbList dbl LEFT OUTER JOIN dbo.DbCluster dbc ON cl.ClustNo=dbc.ClustNo AND dbl.DbVerNo=dbc.DbVerNo AND dbc.Enable=0 WHERE cl.AutoAdd2Db=1 AND dbc.DbVerNo IS null) a ON pdb.DbVerNo=a.DbVerNo JOIN dbo.DbList dbl ON a.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType AND dbcl.Description<>'Publication' where pdb.ProfNo=@DstProfNo DELETE [dbo].[ProfileClusters2] FROM [dbo].[ProfileClusters2] pc JOIN #DbClusterTable dbt ON pc.ClustNo=dbt.ClustNo WHERE pc.ProfNo = @DstProfNo Delete [dbo].[ProfileClusterCaptions] FROM [dbo].[ProfileClusterCaptions] pcc JOIN #DbClusterTable dbt ON pcC.ClustNo=dbt.ClustNo where pcc.ProfNo=@DstProfNo INSERT INTO [dbo].[ProfileClusters2]([pc].[ProfNo],[pc].[ClustNo],[pc].[Show],[pc].[SeqNo], [pc].[DefaultToOpen]) SELECT DISTINCT @DstProfNo, pc.ClustNo, pc.Show, pc.SeqNo, pc.DefaultToOpen FROM [dbo].[ProfileClusters2] pc JOIN #DbClusterTable dbt ON pc.ClustNo=dbt.ClustNo WHERE pc.ProfNo =@SrcProfNo Insert [dbo].[ProfileClusterCaptions] ([pcc].[ProfNo], [pcc].[ClustNo], [pcc].[LangCode], [pcc].[Caption]) Select DISTINCT @DstProfNo, pcc.ClustNo, pcc.LangCode, pcc.Caption FROM [dbo].[ProfileClusterCaptions] pcc JOIN #DbClusterTable dbt ON pcc.ClustNo=dbt.ClustNo where pcc.ProfNo=@SrcProfNo END -- Select and Order Facets for display (Viewing Publications/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('pubBrowseFacets','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN DELETE #DbClusterTable INSERT #DbClusterTable SELECT DISTINCT pdb.DbVerNo, a.ClustNo FROM [dbo].[ProfDatabase] pdb JOIN (SELECT cl.ClustNo, dbc.DbVerNo FROM dbo.ClusterList cl JOIN dbo.DbCluster dbc ON cl.ClustNo=dbc.ClustNo WHERE dbc.Enable=1 UNION SELECT cl.ClustNo, dbl.DbVerNo FROM dbo.ClusterList cl CROSS JOIN dbo.DbList dbl LEFT OUTER JOIN dbo.DbCluster dbc ON cl.ClustNo=dbc.ClustNo AND dbl.DbVerNo=dbc.DbVerNo AND dbc.Enable=0 WHERE cl.AutoAdd2Db=1 AND dbc.DbVerNo IS null) a ON pdb.DbVerNo=a.DbVerNo JOIN dbo.DbList dbl ON a.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType AND dbcl.Description='Publication' where pdb.ProfNo=@DstProfNo DELETE [dbo].[ProfileClusters2] FROM [dbo].[ProfileClusters2] pc JOIN #DbClusterTable dbt ON pc.ClustNo=dbt.ClustNo WHERE pc.ProfNo = @DstProfNo Delete [dbo].[ProfileClusterCaptions] FROM [dbo].[ProfileClusterCaptions] pcc JOIN #DbClusterTable dbt ON pcC.ClustNo=dbt.ClustNo where pcc.ProfNo=@DstProfNo INSERT INTO [dbo].[ProfileClusters2]([pc].[ProfNo],[pc].[ClustNo],[pc].[Show],[pc].[SeqNo], [pc].[DefaultToOpen]) SELECT DISTINCT @DstProfNo, pc.ClustNo, pc.Show, pc.SeqNo, pc.DefaultToOpen FROM [dbo].[ProfileClusters2] pc JOIN #DbClusterTable dbt ON pc.ClustNo=dbt.ClustNo WHERE pc.ProfNo =@SrcProfNo Insert [dbo].[ProfileClusterCaptions] ([pcc].[ProfNo], [pcc].[ClustNo], [pcc].[LangCode], [pcc].[Caption]) Select DISTINCT @DstProfNo, pcc.ClustNo, pcc.LangCode, pcc.Caption FROM [dbo].[ProfileClusterCaptions] pcc JOIN #DbClusterTable dbt ON pcc.ClustNo=dbt.ClustNo where pcc.ProfNo=@SrcProfNo END -- Add Tabletype parameters IF DATALENGTH(@ParamNumbers)>0 BEGIN DELETE [dbo].[CustomParamTblFieldValues] FROM [dbo].[CustomParamTblFieldValues] AS t INNER JOIN #ParamNoTable AS b ON t.ParamNo = b.ParamNo WHERE t.TargetNo = @DstProfNo AND t.Level = 'P' DELETE [dbo].[CustomParamTblSMValues] FROM [dbo].[CustomParamTblSMValues] AS s INNER JOIN #ParamNoTable AS b ON s.ParamNo = b.ParamNo WHERE s.TargetNo = @DstProfNo AND s.Level='P' INSERT INTO [dbo].[CustomParamTblFieldValues] SELECT @DstProfNo, 'P', t.ParamNo,t.ItemID,t.FieldNo,t.Value FROM [dbo].[CustomParamTblFieldValues] AS t INNER JOIN #ParamNoTable AS b ON t.ParamNo = b.ParamNo WHERE t.TargetNo = @SrcProfNo AND t.Level='P' INSERT INTO [dbo].[CustomParamTblSMValues] SELECT @DstProfNo, 'P', s.ParamNo,s.ItemID,s.FieldNo,s.LangCode,s.Value FROM [dbo].[CustomParamTblSMValues] AS s INNER JOIN #ParamNoTable AS b ON s.ParamNo = b.ParamNo WHERE s.TargetNo = @SrcProfNo AND s.Level='P' END --check Default Database Groups -- Default Database Groups (Searching/Choose Databases/Subject Screen Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('showDefaultEPDatabaseGroup','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN Delete [dbo].[ProfGroupCaption] where [dbo].[ProfGroupCaption].[ProfNo]=@DstProfNo Delete [dbo].[ProfGroupList] where [dbo].[ProfGroupList].[ProfNo]=@DstProfNo Insert [dbo].[ProfGroupList] ([dbo].[ProfGroupList].[ProfNo], [dbo].[ProfGroupList].[GroupNo], [dbo].[ProfGroupList].[Show], [dbo].[ProfGroupList].[SeqNo], [dbo].[ProfGroupList].[SelDefault]) Select @DstProfNo, [dbo].[ProfGroupList].[GroupNo], [dbo].[ProfGroupList].[Show], [dbo].[ProfGroupList].[SeqNo], [dbo].[ProfGroupList].[SelDefault] From [dbo].[ProfGroupList] where [dbo].[ProfGroupList].[ProfNo] =@SrcProfNo Insert [dbo].[ProfGroupCaption] ([dbo].[ProfGroupCaption].[ProfNo], [dbo].[ProfGroupCaption].[GroupNo], [dbo].[ProfGroupCaption].[LangCode], [dbo].[ProfGroupCaption].[Caption]) Select @DstProfNo, [dbo].[ProfGroupCaption].[GroupNo], [dbo].[ProfGroupCaption].[LangCode], [dbo].[ProfGroupCaption].[Caption] From [dbo].[ProfGroupCaption] where [dbo].[ProfGroupCaption].[ProfNo] =@SrcProfNo END --check Customize Group Databases By Subject -- Customize Group Databases By Subject link (Searching/Choose Databases/Subject Screen Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('groupDbsBySubjectCust','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN SET @operation = (SELECT #SubParamTable.[ParamValue] FROM #SubParamTable WHERE #SubParamTable.[ParamNo] = @ParamNo) exec dbo.EAIP_CopyProfileDbGroups_104 @SrcProfNo, @DstProfNo, @Operation, @SelectedDbGroups END SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('showIntegratedSearchPanel','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN SELECT @CustType=[dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@DstCustID IF @CustType ='I' OR @CustType='P' Begin if not exists (select 1 from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where [pdb].[ProfNo]=@DstProfNo and [dbl].[SourceType] not in ('D', 'E', 'S') and [pdb].[Enable]=1) if exists (Select 1 from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@SrcProfNo and [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo and [dbo].[CustomParamScalarValues].[ParamValue]=1) Begin Raiserror ('Integrated Search cannot be copied because it would result in the Parameter being set to "On" for a Profile with no enabled External Connectors. First enable one or more External Connectors for the target Profile or copy Databases fro m the Source Profile in addition to copying the Integrated Search Parameter.', 16, -1) End End END -- check CustomWidgets -- Widgets (Viewing Results/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customWidgets','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN SET @operation = (SELECT #SubParamTable.[ParamValue] FROM #SubParamTable WHERE #SubParamTable.[ParamNo] = @ParamNo) EXEC dbo.EAIP_CopyProfileCustomWidgets_104 @SrcProfNo, @dstProfNo, @operation, @SelectedWidgets End -- check Profile feature -- Custom Feature Areas (Display/Feature Areas) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustFeatures','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN Delete [dbo].[ProfFeatureSelMode] where [dbo].[ProfFeatureSelMode].[ProfNo]=@DstProfNo Insert [dbo].[ProfFeatureSelMode] Select @DstProfNo, [dbo].[ProfFeatureSelMode].[InterfaceFeatureNo], [dbo].[ProfFeatureSelMode].[SelectionMode], [dbo].[ProfFeatureSelMode].[VisibleItemCount] from [dbo].[ProfFeatureSelMode] where [dbo].[ProfFeatureSelMode].[ProfNo]=@SrcProfNo Delete [dbo].[ProfFeatureValues] where [dbo].[ProfFeatureValues].[ProfNo]=@DstProfNo Insert [dbo].[ProfFeatureValues] Select @DstProfNo, [dbo].[ProfFeatureValues].[InterfaceFeatureNo],[dbo].[ProfFeatureValues].[ItemNo], [dbo].[ProfFeatureValues].[ItemType], [dbo].[ProfFeatureValues].[FieldValueXml],[dbo].[ProfFeatureValues].[Show],[dbo].[ProfFeatureValues].[SeqNo] from [dbo].[ProfFeatureValues] where [dbo].[ProfFeatureValues].[ProfNo]=@SrcProfNo END -- Profile catalog holding table captions (Release 10.4 feature) -- Customize Catalog Holdings Table Headings (Viewing Results/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('catalogHoldingTblHeadings','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN Delete [dbo].[ProfCatalogHoldingTblCaptions] where [dbo].[ProfCatalogHoldingTblCaptions].[ProfNo]=@DstProfNo Insert [dbo].[ProfCatalogHoldingTblCaptions] Select @DstProfNo, [dbo].[ProfCatalogHoldingTblCaptions].[DbVerNo], [dbo].[ProfCatalogHoldingTblCaptions].[LangCode], [dbo].[ProfCatalogHoldingTblCaptions].[CaptionID], [dbo].[ProfCatalogHoldingTblCaptions].[Caption] from [dbo].[ProfCatalogHoldingTblCaptions] where [dbo].[ProfCatalogHoldingTblCaptions].[ProfNo]=@SrcProfNo END -- Discipline Scope Searching (Release 13.1 feature) -- Configure Discipline Scope Searching (Searching/General Settings) SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('configureDisciplineScopeSearching','P') IF EXISTS (SELECT 1 FROM #ParamNoTable WHERE #ParamNoTable.[ParamNo]=@ParamNo) BEGIN Delete [dbo].[ProfDiscipline] where [dbo].[ProfDiscipline].[ProfNo]=@DstProfNo Insert [dbo].[ProfDiscipline] Select @DstProfNo, [dbo].[ProfDiscipline].[DisciplineNo], [dbo].[ProfDiscipline].[Show], [dbo].[ProfDiscipline].[SelDefault] from [dbo].[ProfDiscipline] where [dbo].[ProfDiscipline].[ProfNo]=@SrcProfNo END COMMIT TRANSACTION End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState) End catch END
CREATE Procedure [dbo].[EAUI_GetMDbAAttachedAuthorities_90](@MDbAID varchar(10)) AS SELECT dbl.DisplayName + N' (' + [dbl].[DbName] + N'-' + [dbl].[DbLabel] + N')' as Caption FROM [dbo].[DBMultiDbAuthList] dbmdb INNER JOIN [dbo].[DbList] dbl ON dbmdb.DbVerNo = dbl.DbVerNo WHERE dbmdb.MultiDbAuthID = @MDbAID Order By [dbl].[DbName], [dbl].[DbLabel]
CREATE TRIGGER CustomerUpdateTrigger ON dbo.Customer AFTER UPDATE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT CustID, 'U' FROM inserted END
CREATE PROCEDURE EATL_UpdateInterfaceDbToolbarItem_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,InterfaceID varchar(10) ,Version varchar(10) ,FeatureName varchar(100) ,Caption nvarchar(max) ) INSERT INTO #Objects ( InterfaceID ,Version ,FeatureName ,Caption ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./FeatureName)[1]', 'varchar(100)') ,m.c.value('(./Caption)[1]', 'nvarchar(max)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID varchar(10) ,@Version varchar(10) ,@FeatureName varchar(100) ,@Caption nvarchar(max) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@FeatureName = FeatureName ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceDbToolbarItem_103] @UserID ,@UserIP ,@InterfaceID ,@Version ,@FeatureName ,@Caption ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDSConfig_70](@DSFamilyName varchar(100), @DbLabel varchar(10), @Volume varchar(20)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo =tmp.DbVerNo FROM (SELECT top 1 ISNULL(s.PhysDbVerNo, a.DbVerNo) DbVerNo, s.PhysDbVerNo -- Pick physical Db if this db is subset db FROM [dbo].[DbList] a inner join [dbo].[DbVolume] c on a.DbVerNo = c.DbVerNo And c.Volume = @Volume left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=a.DbVerNo Where a.DSFamilyName = @DSFamilyName And a.DbLabel = @DbLabel And a.DbType in (1,3,4, 6,8) Order By a.DbType) tmp SELECT [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] FROM [dbo].[DbServerParams] WHERE [dbo].[DbServerParams].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetGroupProfileList_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SELECT [dbo].[Profile].[ProfNo], [dbo].[Profile].[ProfName], [dbo].[Profile].[ProfID], [dbo].[Profile].[InterfaceID]+CASE WHEN [dbo].[Profile].[Version]='live' THEN ''ELSE '/'+[dbo].[Profile].[Version] END AS InterfaceID FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID ORDER BY [dbo].[Profile].[ProfName] END
CREATE PROCEDURE [dbo].[EAIP_UpdateTblParamItemDbs_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @ParamName VARCHAR(100), @ItemId VARCHAR(10), @DbList VARCHAR(MAX) ) AS BEGIN DECLARE @FieldNo INT, @ParamNo INT, @ParamType VARCHAR(5) SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName SELECT @FieldNo = [dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlFields].[FieldName] = 'db' SELECT @ParamType = C.Description FROM [dbo].[CustomParamList] B LEFT OUTER JOIN [dbo].[CharValueMap] C ON B.ParamType = C.FieldCode AND C.FieldName = 'ParamType' WHERE [B].[ParamName]=@ParamName BEGIN TRY BEGIN TRANSACTION IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] = @ParamNo) BEGIN RAISERROR('The Parameter Name ''%s'' does not exist.', 16, -1, @ParamName) RETURN END IF ((@ParamType IS NOT NULL) AND (@ParamType <> 'Table')) BEGIN RAISERROR('The Parameter Name: ''%s'' is not a valid Table Parameter type.', 16, -1, @ParamName) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[FieldNo] = @FieldNo) BEGIN RAISERROR('Required Databases is not associated for the Parameter ''%s''.', 16, -1, @ParamName) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo] = @ParamNo AND [dbo].[CustomParamTblItems].[ItemID] = @ItemId) BEGIN RAISERROR('Item: ''%s'' is either invalid or does not exist for Parameter ''%s''.', 16, -1, @ItemId, @ParamName) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlFields].[FieldNo] = @FieldNo AND [dbo].[CustomParamXmlFields].[ControlType] = 'Link' AND [dbo].[CustomParamXmlFields].[EditLevel] LIKE '%g%') BEGIN RAISERROR('Required Databases is a read only field for the Parameter ''%s''.', 16, -1, @ParamName) RETURN END DECLARE @DatabaseList TABLE (DbVerNo INT, DbName VARCHAR(10)) INSERT INTO @DatabaseList (DbVerNo, DbName) SELECT DISTINCT [TEMP].[Item], [DB].[DbName] FROM dbo.EAIF_GetItemTable_70(@DbList, '+') TEMP LEFT OUTER JOIN [dbo].[DbList] DB ON TEMP.Item = DB.DbVerNo DECLARE @DbVerNo INT = NULL SELECT TOP 1 @DbVerNo = [DL].[DbVerNo] FROM @DatabaseList DL WHERE [DL].[DbName] IS NULL IF EXISTS(SELECT 1 FROM @DatabaseList WHERE DbVerNo <> 0) AND (@DbVerNo IS NOT NULL) BEGIN RAISERROR('Database (DbVersionNo): ''%i'', does not exist.', 16,-1, @DbVerNo) RETURN END INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomParamTblGlobalDefaultSDValues', 'Delete Database From Global Table Parameter Item', @ParamNo, @FieldNo, @ItemID, V.DbName, NULL FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] V WHERE [V].[DbName] NOT IN (SELECT DbName FROM @DatabaseList) AND [V].[ParamNo] = @ParamNo AND [V].[ItemID] = @ItemId UNION SELECT @UserID, @UserIP, GETDATE(), 'CustomParamTblGlobalDefaultSDValues', 'Add Database to Global Table Parameter Item', @ParamNo, @FieldNo, @ItemID, DbName, NULL FROM @DatabaseList WHERE DbName IS NOT NULL DELETE FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID] = @ItemId INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMDValues] ([dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo], [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID], [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName]) SELECT @ParamNo ParamNo, @ItemID ItemID, @FieldNo FieldNo, DbName FROM @DatabaseList WHERE DbName IS NOT NULL COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage,@ErrorSeverity,@ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateUserGroup_70] (@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @GroupID varchar(10), @GroupName nvarchar(100), @GroupEmail nvarchar(100)) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Edit User Group', @CustID, @GroupID, @GroupName, @GroupEmail UPDATE [dbo].[UserGroup] SET [dbo].[UserGroup].[GroupName]=@GroupName, [dbo].[UserGroup].[GroupEmail]=@GroupEmail Where [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID] = @GroupID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseSortOptionList_70](@DbVerNo int) AS BEGIN select @DbVerNo = isnull(s.PhysDbVerNo, d.DbVerNo) FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbVerNo=@DbVerNo SELECT [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo ORDER BY [dbo].[DbSort].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIPO_GetNextDbSbjectID_70](@NewSubjectNo varchar(255) OUTPUT ) AS BEGIN DECLARE @ParamName varchar(100) DECLARE @ParamValue varchar(255) SET @ParamName ='DbSubjectNo' SET @ParamValue = convert(varchar,convert(int,dbo.EAIF_GetAdminParamValue_70(@ParamName))+1) EXEC [dbo].[EAIP_SetAdminParamValue_70] @ParamName, @ParamValue SELECT @NewSubjectNo = @ParamValue END
CREATE PROCEDURE dbo.EAIP_GetPromoteRequests_161 ( @databaseShortName VARCHAR(10), @status Char(1), @requestedDate DATETIME, @startRowIndex INT=1, -- = 1+pagesize*n (n = 0, 1, 2,...) @endRowIndex INT=21 -- Request 1 page plus one row of data, assuming pagesize is 20 ) AS BEGIN SELECT * FROM ( SELECT TOP(@endRowIndex) ROW_NUMBER() OVER(ORDER BY [prs].[PromoteRequestTime] DESC) as RowNumber , [prs].[PromoteRequestID],[prs].[SourceDbVerNo], [prs].[PromoteRequestTime], [prs].[ProcessedTime], dl.DbName, dl.DisplayName AS DisplayName, dl.DbLabel AS SourceLabel, [prs].[TargetDbLabel] As TargetLabel, CASE [prs].[Status] WHEN 'I' THEN 'InProgress' WHEN 'C' THEN 'Completed' WHEN 'F' THEN 'Failed' WHEN 'S' THEN 'Submitted' END AS [Status] , [prs].[PromoteErrorMessage] FROM dbo.PromoteRequestStatus prs JOIN [dbo].[DbList] dl ON prs.SourceDbVerNo=dl.DbVerNo WHERE (@databaseShortName IS NULL OR dl.DbName LIKE @databaseShortName + '%') AND (@status IS NULL OR prs.[Status]=@status) AND (@requestedDate IS NULL OR CAST([prs].[PromoteRequestTime] AS DATE) = CAST(@requestedDate AS DATE)) ) AS TempTB WHERE [TempTB].[RowNumber] >= @startRowIndex order by [TempTB].[PromoteRequestTime] DESC END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseSortOption_141] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @SortID varchar(10), @SortName nvarchar(20), @SortField varchar(100), @Hide bit) AS BEGIN Declare @DbName varchar(10) Declare @DbLabel varchar(10) select @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] From [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo UPDATE [dbo].[DbSort] SET [dbo].[DbSort].[SortID]=@SortID, [dbo].[DbSort].[SortName]=@SortName, [dbo].[DbSort].[SortField]=@SortField, [dbo].[DbSort].[Hide]=@Hide WHERE [dbo].[DbSort].[DbVerNo] = @DbVerNo AND [dbo].[DbSort].[SortID]=@SortID EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Sort Option','Sort ID:', @SortID, 'Sort key:', @SortField END
--sql content merged from file: \Functions\EAIF_GetGroupParamScalarValue_70.sql CREATE FUNCTION [dbo].[EAIF_GetGroupParamScalarValue_70]( @CustID varchar(10), @GroupID varchar(10), @ParamName varchar(100) ) RETURNS nvarchar(4000) AS BEGIN DECLARE @GroupNo int DECLARE @STMode char(1) DECLARE @MarketID varchar(20) SELECT @MarketID=[dbo].[Customer].[MarketID],@STMode=dbo.EAIF_CustTypeToSTMode_70([dbo].[Customer].[CustType]) FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID SELECT @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID,@GroupID) return dbo.EAIF_GetCustomParamScalarValue_70(@ParamName,'all','all',@MarketID, @STMode,@GroupNo,'G') END
CREATE PROCEDURE [dbo].[EAUI_GetBrowseFeatures_81](@Category varchar(10), @FeatureName varchar(100), @SubCategory varchar(20)='') AS BEGIN SELECT [dbo].[FeatureList].[FeatureNo], [dbo].[FeatureList].[FeatureName], [dbo].[FeatureList].[FeatureType], [dbo].[FeatureList].[DbDependant], [dbo].[FeatureList].[VisibleItemCount], [dbo].[FeatureList].[SelectionMode], case [dbo].[FeatureList].[AutoAddForInterfaces] when 0 then 'No' else 'Yes' End as AutoAddForInterfaces FROM dbo.FeatureList WHERE [dbo].[FeatureList].[Category]=@Category AND [dbo].[FeatureList].[SubCategory]= @SubCategory AND [dbo].[FeatureList].[FeatureName]>= @FeatureName ORDER BY [dbo].[FeatureList].[FeatureName] DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName, ff.FieldLevel, ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM dbo.FeatureList fl INNER JOIN dbo.FeatureFields ff ON fl.FeatureNo = ff.FeatureNo WHERE fl.Category = @TemplCategory AND ff.FieldLevel = 'F' AND [ff].[IncludeInSummary] = 1 ORDER BY ff.SeqNo SELECT fl.FeatureNo, fl.FeatureName, fv.FieldValueXml FROM dbo.FeatureList fl INNER JOIN dbo.FeatureValues fv ON fl.FeatureNo = fv.FeatureNo WHERE fl.Category = @Category AND [fl].[SubCategory] = @SubCategory AND fv.ItemNo = 0 AND fl.FeatureName >= @FeatureName ORDER BY fl.FeatureName END
CREATE PROCEDURE [dbo].[EAIP_AddContentVerticalFilter_163] (@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @CVTypeID VARCHAR(20), @Description NVARCHAR(255), @SelectionQuery VARCHAR(500)) AS DECLARE @ContentVerticalNo INT DECLARE @ContentVerticalFilterID VARCHAR(25) SELECT @ContentVerticalNo=[dbo].[ContentVerticalType].[ContentVerticalNo] FROM dbo.ContentVerticalType WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@CVTypeID IF @ContentVerticalNo IS NULL BEGIN RAISERROR('The ContentVerticalType (%s) does not exist ', 16, -1, @CVTypeID) RETURN END -- generate CVFilterID by taking the given CVTypeID and adding on �-01, �-02�, etc for each new CVFilter associated with a given CVType SELECT @ContentVerticalFilterID=@CVTypeID + '-0' + CONVERT(VARCHAR(4), ISNULL(MAX(CONVERT(INT, SUBSTRING([dbo].[ContentVerticalFilter].[ContentVerticalFilterID], CHARINDEX('-',[dbo].[ContentVerticalFilter].[ContentVerticalFilterID])+2, LEN([dbo].[ContentVerticalFilter].[ContentVerticalFilterID])-CHARINDEX('-',[dbo].[ContentVerticalFilter].[ContentVerticalFilterID]))))+1, 1)) FROM [dbo].[ContentVerticalFilter] WHERE [dbo].[ContentVerticalFilter].[ContentVerticalNo]=@ContentVerticalNo BEGIN TRY BEGIN TRANSACTION INSERT [dbo].[ContentVerticalFilter] ([dbo].[ContentVerticalFilter].[ContentVerticalNo], [dbo].[ContentVerticalFilter].[ContentVerticalFilterID], [dbo].[ContentVerticalFilter].[Description], [dbo].[ContentVerticalFilter].[SelectionQuery]) VALUES (@ContentVerticalNo, @ContentVerticalFilterID, @Description, @SelectionQuery) EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Add new ContentVerticalFilter',@CVTypeID, @ContentVerticalFilterID, @Description,@SelectionQuery COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
--sql content merged from file: \StoredProcedures\EAIP_GetCustomerAddresses_99.sql CREATE PROCEDURE [dbo].[EAIP_GetCustomerAddresses_152](@CustIDs varchar(8000)) AS BEGIN SELECT a.Address1, a.Address2, a.Address3, a.CustID, a.City,a.State,a.PostalCode,a.CountryID FROM [dbo].[Split](',', @CustIDs) c JOIN dbo.CustAddress a ON c.[Value]=a.CustID END
CREATE PROCEDURE [dbo].[EAUI_GetSTModeList_70](@IncludeTypeList varchar(20)) AS BEGIN SELECT [dbo].[CharValueMap].[FieldCode], [dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName]='CustType' AND [dbo].[CharValueMap].[FieldCode] IN (SELECT * from dbo.EAIF_GetItemTable_70(@IncludeTypeList,'+')) END
--sql content merged from file: \StoredProcedures\EAUI_CheckIfCustomParamDefaultsExists_92.sql CREATE PROCEDURE [dbo].[EAUI_CheckIfCustomParamDefaultsExists_92]( @InterfaceID varchar(10), @Version varchar(10), @ParamNo int) AS BEGIN DECLARE @returnflag bit SET @returnflag=0 IF EXISTS (SELECT 1 FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) SET @returnflag=1 Select @returnflag END
CREATE PROCEDURE [dbo].[IS_AddModSubscription_210](@SubscriberID varchar(10), @CustID varchar(10), @PrdOffID varchar(20), @InterfaceID varchar(10), @NumUnits int, @StartDate datetime, @EndDate datetime, @Mode char(1), @RefNumber varchar(20), @GroupID varchar(10), @CtrlCustID varchar(10)=NULL, @InterfaceVersion varchar(10)='live', @PaidConnectors int, @FreeConnectors int, @SubscriptionNo int=0) AS BEGIN -- Wrapping procedure to avoid MSDTC issue (to have only calls to EAMASTER inside single transaction) EXEC EASUPPORT.[dbo].[IS_AddModSubscription_100] @SubscriberID, @CustID, @PrdOffID, @InterfaceID, @NumUnits, @StartDate, @EndDate, @Mode, @RefNumber, @GroupID, @CtrlCustID, @InterfaceVersion, @PaidConnectors, @FreeConnectors, @SubscriptionNo END
--sql content merged from file: \StoredProcedures\EAIP_CheckIfGroupProfDatabases_97.sql Create Procedure [dbo].[EAIP_CheckIfGroupProfDatabases_97](@profNo int) as Begin Declare @ParamNo int Declare @GroupProfDbs bit select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='groupProfDatabases' Select @GroupProfDbs=[dbo].[CustomParamScalarValues].[ParamValue] from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@profNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' and [dbo].[CustomParamScalarValues].[ParamNo]=@paramNo if @GroupProfDbs is null begin select @GroupProfDbs=[cpd].[DefValue] from [dbo].[CustomParamDefaults] cpd join [dbo].[Profile] p on cpd.InterfaceID=p.InterfaceID and cpd.Version=p.Version and cpd.MarketID=p.MarketID and cpd.STMode=p.STMode where p.ProfNo=@profNo and [cpd].[ParamNo]=@ParamNo if @GroupProfDbs is null Begin Select @GroupProfDbs=[dbo].[CustomParamList].[DefValue] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamNo]=@ParamNo End end select @GroupProfDbs End
Create Procedure [dbo].[EAIP_PromoteDatabase_161]( @DbName varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10), @BasicParams bit=1, @Authorities bit=1, @Descriptions bit=1, @DocTypes bit=1, @Forms bit=1, @Limiters bit=1, @SegmentFileInfo bit=1, @SortOptions bit=1, @Subjects bit=1, @DbFields bit=1, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit =1, @TOCs bit=1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1, @RtacItems bit = 0, @SubsetDbs bit = 0, @PickupLocations BIT = 0, @SearchConceptMapping BIT = 1, @DSParameters bit=0, @UserID varchar(20) = '', @UserIP varchar(15) = '', @PromoteDbSubsetsForParent BIT=0, @Notify bit=0) AS Begin Begin Try DECLARE @LogMessage varchar(15) SELECT @LogMessage='From '+@OldDbLabel Begin Transaction Declare @OldDbVerNo int DECLARE @DbType smallint DECLARE @DisplayName nvarchar(100) DECLARE @DbGroup varchar(20) DECLARE @ContentType smallint DECLARE @MultiSegment smallint DECLARE @DbCategory char(1) DECLARE @EnforceSimUsage bit DECLARE @ShowStats bit DECLARE @ShowOnDDSConsole bit DECLARE @WebClient bit DECLARE @WinClient bit DECLARE @CharClient bit DECLARE @Z3950Client bit DECLARE @EPXBuild bit DECLARE @EDABuild bit Declare @IncludeWhenAutoAdd bit DECLARE @SourceType char(1) Declare @PhysicalDbName varchar(10) Declare @PhysicalDbVerNo int Declare @SourceSubsetDsFamilyName varchar(10) Declare @TargetPhysicalDsFamilyName varchar(10) Declare @NonSearchableDb bit Declare @ArchiveProfSettings bit Declare @DsFamilyName varchar(10) select @OldDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@OldDbLabel if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) Begin Select @PhysicalDbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=(Select [dbo].[DbSubset].[PhysDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) if not exists (Select 1 from [dbo].[DbList] with (NOLOCK) where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel) Begin ROLLBACK TRAN RAISERROR ('Could not promote %s to %s. The Physical Db, %s, does not exist on the new Label',16,-1,@DbName,@NewDbLabel, @PhysicalDbName) return end else begin Select @SourceSubsetDsFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@OldDbVerNo Select @TargetPhysicalDsFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if @SourceSubsetDsFamilyName <> @TargetPhysicalDsFamilyName Begin ROLLBACK TRAN RAISERROR ('Could not promote %s to %s. The Physical DsFamilyName, %s, on the new Label does not match the Subset DsFamilyName, %s, on the old Label',16,-1,@DbName,@NewDbLabel,@TargetPhysicalDsFamilyName,@SourceSubsetDsFamilyName) return End end end -- get list of database to be promoted Declare @TempDbListTable Table (LowerDbVerNo int, UpperDbVerNo int, MainDb bit, Authority bit, Subset bit, NewDb bit Default(0)) Insert @TempDbListTable Select * from dbo.EAIF_GetPromoteDbList_161(@DbName, @OldDbLabel, @NewDbLabel, @Authorities, @SubsetDbs) -- Add database(s) to upper label wher do not exist Declare NewDbList Cursor For select DbVerNo, DbName, DisplayName, DbType, DbCategory, DbGroup, ContentType, MultiSegment, EnforceSimUsage, ShowStats, ShowOnDDSConsole, WebClient, WinClient, CharClient, Z3950Client, EPXBuild, EDABuild,IncludeWhenAutoAdd, SourceType, NonSearchableDb, ArchiveProfSettings from @TempDbListTable t join [dbo].[DbList] dbl on t.LowerDbVerNo=dbl.DbVerNo where t.UpperDbVerNo is null Open NewDbList Fetch Next from NewDbList into @OldDbVerNo, @DbName, @DisplayName, @DbType, @DbCategory, @DbGroup, @ContentType, @MultiSegment, @EnforceSimUsage, @ShowStats, @ShowOnDDSConsole, @WebClient, @WinClient, @CharClient, @Z3950Client, @EPXBuild, @EDABuild, @IncludeWhenAutoAdd, @SourceType, @NonSearchableDb, @ArchiveProfSettings While @@Fetch_Status=0 Begin if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) select @DsFamilyName = [dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@OldDbVerNo else set @DsFamilyName = @DbName EXEC [dbo].[EAIP_AddDatabase_133] @DbName, @NewDbLabel, @DisplayName,@DsFamilyName,@DbGroup,@DbCategory,@DbType,@ContentType,@MultiSegment, @EnforceSimUsage,@ShowStats,@ShowOnDDSConsole,@WebClient,@WinClient,@CharClient,@Z3950Client,@EPXBuild,@EDABuild,@IncludeWhenAutoAdd,@SourceType,@NonSearchableDb,@ArchiveProfSettings Update @TempDbListTable set UpperDbVerNo=(Select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@NewDbLabel), NewDb=1 where LowerDbVerNo=@OldDbVerNo Fetch Next from NewDbList into @OldDbVerNo, @DbName, @DisplayName, @DbType, @DbCategory, @DbGroup, @ContentType, @MultiSegment, @EnforceSimUsage, @ShowStats, @ShowOnDDSConsole, @WebClient, @WinClient, @CharClient, @Z3950Client, @EPXBuild, @EDABuild, @IncludeWhenAutoAdd, @SourceType, @NonSearchableDb, @ArchiveProfSettings End close NewDbList deallocate NewDbList Create Table #TempDbListTable (LowerDbVerNo int, UpperDbVerNo int, MainDb bit, Authority bit, Subset bit) Insert #TempDbListTable Select LowerDbVerNo, UpperDbVerNo, MainDb, Authority, Subset From @TempDbListTable Where NewDb=0 -- promote details for database that already existed on upper label exec [dbo].[EAIP_PromoteDatabaseDetails_161] @OldDbLabel, @NewDbLabel, @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields, @SearchOptions, @BrowseOptions, @AuthFilter, @Topics, @TOCs, @Groups, @Customizers, @Clusters, @MultiDbAuthorities, @ToolbarItems, @RtacItems, @SubsetDbs, @PickupLocations, @SearchConceptMapping, @DSParameters, @UserID, @UserIP Truncate Table #TempDbListTable Insert #TempDbListTable Select LowerDbVerNo, UpperDbVerNo, MainDb, Authority, Subset From @TempDbListTable Where NewDb=1 -- promote details for new databases on upper label exec [dbo].[EAIP_PromoteDatabaseDetails_161] @OldDbLabel, @NewDbLabel, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @RtacItems, @SubsetDbs, @PickupLocations, @SearchConceptMapping, @DSParameters, @UserID, @UserIP IF @PromoteDbSubsetsForParent=0 Begin Declare @NewSubsetDbVerNo int Declare @NewPhysicalDbVerNo INT if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) Begin Select @NewSubsetDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@NewDbLabel Select @NewPhysicalDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo) update [dbo].[DbSubset] set [MergeSearches]=a.MergeSearches, [DBDefSearchExprType]=a.DBDefSearchExprType, [DBDefSearchExpression]=a.DBDefSearchExpression from (select [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@OldDbVerNo) a where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo else Insert [dbo].[DbSubset] select @NewSubsetDbVerNo, @NewPhysicalDbVerNo, [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@OldDbVerNo End End drop table #TempDbListTable if (@Notify=1) Exec [dbo].[EAIP_NotifyDbPromote_161] @DbName, @OldDbLabel, @NewDbLabel, @UserID EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Database','Promote',@DbName,@NewDbLabel,@LogMessage Commit Transaction End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
/****** Object: StoredProcedure [dbo].[EAUI_GetMDbAList_90] Script Date: 04/15/2008 17:17:28 ******/ CREATE PROCEDURE [dbo].[EAUI_GetMDbAList_90] AS SET NOCOUNT ON SELECT mdal.MultiDbAuthID, mdac.LinkText Caption, mdal.Description FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID WHERE mdac.LangCode = 'en' ORDER BY mdal.MultiDbAuthID RETURN
CREATE TRIGGER CustomParamProductConfigurationDeleteTrigger ON dbo.CustomParamProductConfiguration AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId]) SELECT CustID FROM deleted END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceDocType_77](@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @DocTypeID varchar(10), @Caption nvarchar(255), @MouseOverText nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @IntfDocTypeNo int SELECT @IntfDocTypeNo = idt.IntfDocTypeNo FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo = idt.DocTypeNo WHERE dtl.DocTypeID = @DocTypeID AND idt.InterfaceID = @InterfaceID AND idt.Version = @Version IF @IntfDocTypeNo is null RETURN IF LEN(@Caption)=0 SET @Caption = null IF LEN(@MouseOverText)=0 SET @MouseOverText = null DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceDocTypeCaption] WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo]=@IntfDocTypeNo AND [dbo].[InterfaceDocTypeCaption].[LangCode]=@Lang) BEGIN UPDATE [dbo].[InterfaceDocTypeCaption] SET [dbo].[InterfaceDocTypeCaption].[Caption]=@Caption, [dbo].[InterfaceDocTypeCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo]=@IntfDocTypeNo AND [dbo].[InterfaceDocTypeCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Interface DocType Caption and MouseOverText' END ELSE BEGIN INSERT INTO [dbo].[InterfaceDocTypeCaption]([dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo],[dbo].[InterfaceDocTypeCaption].[LangCode],[dbo].[InterfaceDocTypeCaption].[Caption],[dbo].[InterfaceDocTypeCaption].[MouseOverText]) VALUES (@IntfDocTypeNo,@Lang,@Caption,@MouseOverText) SET @LogFlag ='Translate(Insert) Interface DocType Caption and MouseOverText' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @CapAndMouseOver nvarchar(600) SET @CapAndMouseOver = @Caption +';'+ @MouseOverText EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface DocType',@LogFlag, @InterfaceID, @Version, @DocTypeID, @Lang, @CapAndMouseOver COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDSDbSortOptions_70](@DbVerNo int) AS BEGIN select @DbVerNo = isnull(s.PhysDbVerNo, d.DbVerNo) FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbVerNo=@DbVerNo SELECT [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], ISNULL([dbo].[DbSort].[SortField], '') As SortField FROM [dbo].[DbSort] Where [dbo].[DbSort].[DbVerNo]=@DbVerNo AND [dbo].[DbSort].[SortField] <> '' END
CREATE PROCEDURE [dbo].[EAUI_GetGroupsToAttach_80] (@DbVerNo int)AS BEGIN SELECT gl.GroupNo, gl.GroupID + ' (' + gc.Caption + ')' as Caption FROM [dbo].[GroupList] gl LEFT OUTER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo=gc.GroupNo WHERE gc.LangCode='en' AND gl.GroupNo NOT IN (SELECT [dbo].[DbGroup].[GroupNo] FROM [dbo].[DbGroup] WHERE [dbo].[DbGroup].[DbVerNo] = @DbVerNo) ORDER BY gl.GroupID END
CREATE PROCEDURE [dbo].[EAIP_UpdateUserDefinedFields_70] (@CustID varchar(10),@UserDefined1 nvarchar(255),@UserDefined2 nvarchar(255)) AS BEGIN IF Exists (SELECT 1 FROM [dbo].[CustDefField] WHERE [dbo].[CustDefField].[CustID]=@CustID) BEGIN UPDATE [dbo].[CustDefField] SET [dbo].[CustDefField].[UserDefined1] = @UserDefined1, [dbo].[CustDefField].[UserDefined2] = @UserDefined2 WHERE [dbo].[CustDefField].[CustID] = @CustID END ELSE BEGIN IF @UserDefined1 <> '' OR @UserDefined2 <> '' INSERT INTO [dbo].[CustDefField] values (@CustID,@UserDefined1,@UserDefined2) END END
CREATE PROCEDURE [dbo].[EAUI_UpdateVersion_70](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName varchar(100) ) AS BEGIN UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[SiteID] = @SiteID, [dbo].[InterfaceVersion].[SiteURL] = @SiteURL, [dbo].[InterfaceVersion].[PassingMode]= @PassingMode WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version EXEC [dbo].[EAIP_LogActivityOld_70] @UserID ,@UserIP,'EAUI_UpdatteInterfaceVersion_70',@InterfaceID,@Version,@SiteID, @SiteURL,@PassingMode END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseSortOptions_70](@DbVerNo int) AS BEGIN SELECT [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo ORDER BY [dbo].[DbSort].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIS_SetEOResyncDate_70] (@RunDate varchar(255)) AS BEGIN EXEC [dbo].[EAIP_SetAdminParamValue_70] 'eoResyncDate',@RunDate END
Create Procedure [dbo].[EAIP_GetPromoteRequestsByStatus_161](@Status char(1)) as Select [prs].[PromoteRequestID], dbl.DbName, dbl.DbLabel SourceDbLabel, [prs].[TargetDbLabel], [prs].[PromoteDetails], CASE [prs].[Status] WHEN 'I' THEN 'InProgress' WHEN 'C' THEN 'Completed' WHEN 'F' THEN 'Failed' WHEN 'S' THEN 'Submitted' END AS [Status] from [dbo].[PromoteRequestStatus] prs join [dbo].[DbList] dbl on prs.SourceDbVerNo=dbl.DbVerNo where [prs].[Status]=@Status Order by [prs].[PromoteRequestID]
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseSortOption_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SortID varchar(10), @SortName nvarchar(20), @SortField varchar(100)) AS BEGIN UPDATE [dbo].[DbSort] SET [dbo].[DbSort].[SortID]=@SortID, [dbo].[DbSort].[SortName]=@SortName, [dbo].[DbSort].[SortField]=@SortField WHERE [dbo].[DbSort].[DbVerNo] = @DbVerNo AND [dbo].[DbSort].[SortID]=@SortID EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Sort Option','Sort ID:', @SortID, 'Sort key:', @SortField END
CREATE FUNCTION [dbo].[EAIF_GetHighestDbLabel_131] ( @DbName VARCHAR(10) ) RETURNS VARCHAR(10) AS BEGIN DECLARE @HighestLabel VARCHAR(10) SET @HighestLabel = ( SELECT TOP ( 1 ) [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName ORDER BY CASE [dbo].[DbList].[DbLabel] WHEN 'live' THEN 1 WHEN 'liveQC' THEN 2 WHEN 'rebuild' THEN 3 WHEN 'rebuildQC' THEN 4 ELSE 5 END ) RETURN @HighestLabel END
CREATE PROCEDURE [dbo].[EAUI_GetBrowseOptionTypes_76] AS BEGIN SELECT [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description] FROM [dbo].[StringValueMap] WHERE [dbo].[StringValueMap].[FieldName]='BrowseOptionType' ORDER BY [dbo].[StringValueMap].[Description] END
CREATE PROCEDURE [dbo].[EAIP_AddContentVerticalType_162] (@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @ContentVerticalID VARCHAR(20), @ContentVerticalName NVARCHAR(255), @ContentVerticalDesc NVARCHAR(255), @ExternalSource BIT =0) AS IF EXISTS (SELECT 1 FROM [dbo].[ContentVerticalType] WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@ContentVerticalID) BEGIN RAISERROR('The ContentVerticalType (%s) already exists ', 16, -1, @ContentVerticalID) RETURN END -- External IndexName value by prefixing 'v-' to lowercase of ContentVerticalID DECLARE @ExternalIndexName VARCHAR (30) SET @ExternalIndexName = 'v-' + LOWER(@ContentVerticalID) BEGIN TRY BEGIN TRANSACTION INSERT [dbo].[ContentVerticalType] ([dbo].[ContentVerticalType].[ContentVerticalID],[dbo].[ContentVerticalType].[ContentVerticalName],[dbo].[ContentVerticalType].[Description],[dbo].[ContentVerticalType].[ExternalSource],[dbo].[ContentVerticalType].[ExternalIndexName]) VALUES (@ContentVerticalID, @ContentVerticalName, ISNULL(@ContentVerticalDesc,'') , ISNULL(@ExternalSource,0),@ExternalIndexName) EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Add new ContentVerticalType',@ContentVerticalID, @ContentVerticalName, @ContentVerticalDesc,@ExternalSource,@ExternalIndexName COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH
Create Procedure [dbo].[EAIP_GetCustomerByID_100] (@CustID varchar(10)) as select [dbo].[Customer].[CustNo], [dbo].[Customer].[CustID], [dbo].[Customer].[CustName], [dbo].[Customer].[CustType], [dbo].[Customer].[MarketID], [dbo].[Customer].[Status], [dbo].[Customer].[Consortium] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID
--sql content merged from file: \StoredProcedures\EAUI_GetStringValueList_70.sql CREATE procedure [dbo].[EAUI_GetStringValueList_70]( @FieldName varchar(30) ) as BEGIN SELECT [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description] FROM [dbo].[StringValueMap] WHERE [dbo].[StringValueMap].[FieldName] = @FieldName Order BY [dbo].[StringValueMap].[SeqNo] END
--sql content merged from file: \StoredProcedures\EAUI_CheckIfParamIsApplicableForInterface_97.sql CREATE PROCEDURE dbo.EAUI_CheckIfParamIsApplicableForInterface_97(@ProfNo int,@ParamName varchar(100)) AS BEGIN Declare @InterfaceId varchar(20) Declare @Version varchar (20) Declare @ParamNo int DECLARE @returnflag bit SET @returnflag=0 Select @InterfaceId=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName If exists (Select 1 from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceId and [dbo].[InterfaceParamList].[Version]=@Version and [dbo].[InterfaceParamList].[ParamNo]=@ParamNo) begin set @returnflag=1 end Select @returnflag END
CREATE PROCEDURE [dbo].[IS_AddModSubscriptionToSharedResources_210](@SubscriberID varchar(10), @CustID varchar(10), @PrdOffID varchar(20), @ResourceID varchar(10), @StartDate datetime, @EndDate datetime, @Mode char(1), @RefNumber varchar(20), @InterfaceID varchar(10), @InterfaceVersion varchar(10), @GroupID varchar(10), @SubscriptionNo int) AS BEGIN -- Wrapping procedure to avoid MSDTC issue (to have only calls to EAMASTER inside single transaction) EXEC EASUPPORT.[dbo].[IS_AddModSubscriptionToSharedResources_100] @SubscriberID, @CustID, @PrdOffID, @ResourceID, @StartDate, @EndDate, @Mode, @RefNumber, @InterfaceID, @InterfaceVersion, @GroupID, @SubscriptionNo END
CREATE PROCEDURE [dbo].[EAIP_CheckIfItIsDefaultProfile_131](@ProfNo int) AS BEGIN SELECT dbo.EAIF_CheckIfItIsDefaultProfile_131(@ProfNo) END
--sql content merged from file: \StoredProcedures\EAIP_UpdateCustomerParamScalarValue.sql CREATE PROCEDURE [dbo].[EAIP_UpdateCustomerParamScalarValue] ( @p_CustID varchar(10), @p_ParamName varchar(100), @p_ParamValue nvarchar(4000) )as begin declare @CustNo int declare @ParamNo int if not exists(select 1 from dbo.CustomerGroup where [dbo].[CustomerGroup].[ParentID] = @p_CustID) begin set @CustNo = dbo.EAIF_GetCustNo_70(@p_CustID) set @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@p_ParamName,'C') exec [dbo].[EAIP_UpdateCustomParamScalarValue_70] @CustNo,'C',@ParamNo,@p_ParamValue end else begin declare @tblCustID table (RowID int identity(1,1), CustID varchar(10)) insert into @tblCustID select [dbo].[CustomerGroup].[ChildID] from dbo.CustomerGroup where [dbo].[CustomerGroup].[ParentID] = @p_CustID declare @CustID varchar(10) declare @Cntr int set @Cntr = 1 while @Cntr <= (select max(RowID) from @tblCustID) begin set @CustID = (select CustID from @tblCustID where RowID = @Cntr) exec [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'allowGeoLocation', @p_ParamValue set @Cntr = @Cntr + 1 end end end
CREATE Procedure [dbo].[EAUI_GetMDbAListToAttachToInterface_90] (@InterfaceID varchar(10),@Version varchar(10)) AS SET NOCOUNT ON SELECT mdal.MultiDbAuthID, mdac.LinkText + ' (' + mdal.MultiDbAuthID + ')' Caption FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID LEFT JOIN [dbo].[InterfaceMultiDbAuthList] imdbal ON mdal.MultiDbAuthID = imdbal.MultiDbAuthID AND imdbal.InterfaceID = @InterfaceID AND imdbal.Version = @Version WHERE mdac.LangCode = 'en' AND imdbal.MultiDbAuthID IS Null ORDER BY mdal.MultiDbAuthID RETURN
CREATE TRIGGER CustomParamProductConfigurationInsertTrigger ON dbo.CustomParamProductConfiguration AFTER INSERT AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT CustID, 'I' FROM inserted END
CREATE PROCEDURE EATL_UpdateInterfaceDocType_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,InterfaceID VARCHAR(10) ,Version VARCHAR(10) ,DocTypeID VARCHAR(10) ,Caption NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #Objects ( InterfaceID ,Version ,DocTypeID ,Caption ,MouseOverText ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./DocTypeId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID VARCHAR(10) ,@Version VARCHAR(10) ,@DocTypeID VARCHAR(10) ,@Caption NVARCHAR(255) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@DocTypeID = DocTypeID ,@Caption = Caption ,@MouseOverText = MouseOverText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceDocType_77] @UserID ,@UserIP ,@InterfaceID ,@Version ,@DocTypeID ,@Caption ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetDsFamilyDbList_912](@DSFamilyName varchar(100), @DbLabel varchar(10)) AS BEGIN SET NOCOUNT ON SELECT a.DbName, a.DbType, a.DisplayName FROM [dbo].[DbList] a WHERE a.DSFamilyName = @DSFamilyName AND a.DbLabel = @DbLabel ORDER BY a.DbType END
CREATE PROCEDURE [dbo].[EAUI_GetGroupUsage_80] (@GroupNo int)AS BEGIN SELECT [gl].[GroupID], d.DisplayName +N' ('+d.DbName+N'-'+d.DbLabel+N')' AS Db FROM [dbo].[DbList] d INNER JOIN [dbo].[DbGroup] g ON d.DbVerNo=g.DbVerNo INNER JOIN [dbo].[GroupList] gl ON gl.GroupNo = g.GroupNo WHERE gl.GroupNo=@GroupNo ORDER BY Db END
-- EHPMEBSCOADMIN-908 Support for Discipline Scope Searching (details in EHPMEBSCOADMIN-916 and 922) -- the rules for uploading are as follows: -- there are 2 upload operations, Replace and Append -- for both Replace and Append the following rules apply: ------ if the DisciplineCode in the upload list matches the DisciplineCode in the DisciplineList table then for that DisciplineCode ----------- if the caption in the upload list matches the English caption in the DisciplineCaption table, DO NOTHING ----------- if the caption in the upload list DOES NOT MATCH the English caption in the DisciplineCaption table, then -------------- 1) update the English caption in the DisciplineCaption table to have the value from the upload list -------------- 2) delete all non-English captions for that discipline -------------- 3) update the timestamp ------ if the DisciplineCode is in the upload list but not in the DisciplineList table then add it to the DisciplineList table and add -------- the caption from the upload list to the DisciplineCaption table as the English language caption -- for Replace ONLY: ------ if the DisciplineCode is not in the upload list but it is in the DisciplieList table, then remove the row for that DisciplineCode and all of it's -------- related captions -- a unique constraint on the DisciplineCode for the DisciplineType will force uniqueness on the DisciplineCodes. It is up to the comsumer of this -- procedure to ensure uniqueness according to the business rules CREATE PROCEDURE [dbo].[EAIP_UploadDisciplineList_131] ( @UserID VARCHAR(20) , @UserIP VARCHAR(15) , @Mode CHAR , @DisciplineUploadList AS dbo.DisciplineType READONLY ) AS BEGIN BEGIN TRANSACTION -- get the update time for this upload DECLARE @UpdateTime DATETIME SET @UpdateTime = GETDATE() -- remove duplicates from @DisciplineUploadList- -- need a new table because the table parameter is READONLY DECLARE @UniqueDisciplineList TABLE ( DisciplineCode VARCHAR(10) , Caption NVARCHAR(255) ) -- get the values into new table INSERT INTO @UniqueDisciplineList ( DisciplineCode , Caption ) SELECT DisciplineCode , Caption FROM @DisciplineUploadList; WITH cte AS ( SELECT ROW_NUMBER() OVER ( PARTITION BY DisciplineCode ORDER BY ( SELECT 0 ) ) RN FROM @UniqueDisciplineList ) DELETE FROM cte WHERE RN > 1 -- merge to DisciplineList using rules listed above MERGE [dbo].[DisciplineList] AS Target USING @UniqueDisciplineList AS Source ON ( Target.DisciplineCode = Source.DisciplineCode ) -- if in 'Replace' mode, remove any disciplines that are in the table but not in the upload list WHEN NOT MATCHED BY SOURCE AND ( @Mode = 'R' ) THEN DELETE -- add any disciplines that are in the upload list but not in the table WHEN NOT MATCHED BY TARGET THEN INSERT ( [DisciplineCode] , [LastUpdateTime] ) VALUES ( LOWER(Source.DisciplineCode) , @UpdateTime ); IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- determine which disciplines are new and have new captions -- and which have captions that need to be updated -- NOTE: if the English Caption is updated, then all non-English captions are deleted DECLARE @InsertCaptionTable TABLE ( DisciplineNo INT , DisciplineCode VARCHAR(10) ) DECLARE @UpdateDeleteCaptionTable TABLE ( DisciplineNo INT , DisciplineCode VARCHAR(10) ) -- store the ids of the Disciplines to be inserted INSERT INTO @InsertCaptionTable ( DisciplineNo , DisciplineCode ) SELECT dl.DisciplineNo , dl.DisciplineCode FROM dbo.DisciplineList dl LEFT OUTER JOIN [dbo].[DisciplineCaption] dc ON dl.DisciplineNo = dc.DisciplineNo WHERE dc.DisciplineNo IS NULL -- store the ids of the Disciplines with English captions to be updated (and non-English captions to be deleted) INSERT INTO @UpdateDeleteCaptionTable ( DisciplineNo , DisciplineCode ) SELECT dl.DisciplineNo , dl.DisciplineCode FROM [dbo].[DisciplineList] dl JOIN [dbo].[DisciplineCaption] dc ON dl.DisciplineNo = dc.DisciplineNo JOIN @UniqueDisciplineList ul ON dl.DisciplineCode = ul.DisciplineCode WHERE dc.Caption != ul.Caption AND dc.LangCode = 'en' -- add the new captions INSERT INTO [dbo].[DisciplineCaption] ( [dbo].[DisciplineCaption].[DisciplineNo] , [dbo].[DisciplineCaption].[LangCode] , [dbo].[DisciplineCaption].[Caption] ) SELECT DisciplineNo , 'en' , Caption FROM @UniqueDisciplineList ul JOIN @InsertCaptionTable ic ON ul.DisciplineCode = ic.DisciplineCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- update the English captions UPDATE [dbo].[DisciplineCaption] SET [Caption] = ul.Caption FROM [dbo].[DisciplineCaption] dc JOIN @UpdateDeleteCaptionTable ic ON ic.DisciplineNo = dc.DisciplineNo JOIN @UniqueDisciplineList ul ON ic.DisciplineCode = ul.DisciplineCode WHERE LangCode = 'en' -- remove the non-English captions where the English caption was updated DELETE FROM dc FROM [dbo].[DisciplineCaption] dc JOIN @UpdateDeleteCaptionTable ul ON ul.DisciplineNo = dc.DisciplineNo WHERE dc.LangCode != 'en' IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- now update the timestamp for the disciplines for which the captions were updated UPDATE [dbo].[DisciplineList] SET [LastUpdateTime] = @UpdateTime FROM [dbo].[DisciplineList] dl JOIN @UpdateDeleteCaptionTable uc ON dl.DisciplineNo = uc.DisciplineNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- log the upload time and operation DECLARE @ModeString VARCHAR(10) SET @ModeString = 'Replace' IF @Mode = 'A' BEGIN SET @ModeString = 'Append' END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Disciplines', 'UploadDisciplineList called', @UpdateTime, @ModeString COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateXMLSchemaDefinition_101] @schemaId VARCHAR(20), @schemaXML NVARCHAR(MAX) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- check if the schema exists, if so update, if not insert IF EXISTS (select * FROM [dbo].[XmlSchema] WHERE [dbo].[XmlSchema].[SchemaID] = @schemaId) BEGIN -- update the schema UPDATE [dbo].[XmlSchema] SET [dbo].[XmlSchema].[SchemaXML] = @schemaXML WHERE [dbo].[XmlSchema].[SchemaID] = @schemaId END ELSE BEGIN -- insert the schema INSERT INTO [dbo].[XmlSchema] VALUES (@schemaId, @schemaXML) END END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseSubtopicList_77] (@DbVerNo int, @TopicNo int)AS BEGIN SELECT tl.TopicNo , tl.TopicID , tl.SearchString, tc.Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo INNER JOIN [dbo].[DbTopic] dt ON dt.TopicNo = tl.TopicNo WHERE tl.ParentTopicNo = @TopicNo AND tc.LangCode = 'en' AND dt.DbVerNo = @DbVerNo ORDER BY tc.Caption END
CREATE PROCEDURE [dbo].[EAIS_SetEOResyncDate_71] (@RunDate varchar(255)) AS BEGIN -- Delete the hanging EONLINE collections from the past DELETE [dbo].[ProfLocalLimiter2] FROM dbo.ProfLocalLimiter2 AS a INNER JOIN dbo.Collection AS b ON a.ColNo=b.ColNo WHERE b.CustID='eonline' AND NOT (b.ColID IN (SELECT DISTINCT [dbo].[EOCollection].[EOColID] as ColID FROM [dbo].[EOCollection]) OR b.ColID IN (SELECT DISTINCT [dbo].[EOCollection].[EORemoteColID] As ColID FROM [dbo].[EOCollection])) DELETE [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='eonline' AND NOT ([dbo].[Collection].[ColID] IN (SELECT DISTINCT [dbo].[EOCollection].[EOColID] as ColID FROM [dbo].[EOCollection]) OR [dbo].[Collection].[ColID] IN (SELECT DISTINCT [dbo].[EOCollection].[EORemoteColID] As ColID FROM [dbo].[EOCollection])) --And delete the corresponsing shared collections DELETE [dbo].[ProfLocalLimiter2] FROM dbo.ProfLocalLimiter2 AS a INNER JOIN dbo.Collection AS b ON a.ColNo=b.ColNo WHERE b.CustID <> 'eonline' AND (b.ColID like 'eo-%' or b.ColID like 'eor-%') and b.Eonline=1 AND b.SharedFrom NOT IN (SELECT [dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='eonline') DELETE [dbo].[Collection] WHERE [dbo].[Collection].[CustID] <> 'eonline' AND ([dbo].[Collection].[ColID] like 'eo-%' or [dbo].[Collection].[ColID] like 'eor-%') and [dbo].[Collection].[Eonline]=1 AND [dbo].[Collection].[SharedFrom] NOT IN (SELECT [dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='eonline') --For Remote collections ONLY remove the empty collections which does not have any titles and are not shared --for any customer. DELETE [dbo].[Collection] WHERE [dbo].[Collection].[ColID] like N'eor-%' AND [dbo].[Collection].[SharedFrom] = 0 AND [dbo].[Collection].[ColNo] NOT IN (SELECT [dbo].[LocalTitle].[ColNo] FROM [dbo].[LocalTitle]) EXEC [dbo].[EAIP_SetAdminParamValue_70] 'eoResyncDate',@RunDate END
CREATE PROCEDURE dbo.EAIP_GetPromoteRequestStatus_161 ( @promoteTaskRequestID INT ) AS BEGIN SELECT [rs].[PromoteRequestID], CASE [rs].[Status] WHEN 'S' THEN 'Submitted' WHEN 'I' THEN 'InProgress' WHEN 'C' THEN 'Completed' WHEN 'F' THEN 'Failed' END AS [Status], [rs].[PromoteErrorMessage] FROM dbo.PromoteRequestStatus rs WHERE rs.PromoteRequestID = @promoteTaskRequestID END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseSortOptionOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SortIDList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN UPDATE [dbo].[DbSort] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbSort] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@SortIDList, @SeqNoList,'+') b ON a.SortID=b.Item WHERE a.DbVerNo = @DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Reorder Sort Options' END
CREATE Function [dbo].[EAIF_GetIndentedListItems_912] (@ControlTemplate xml,@DbVerNo int,@AddHeader bit) RETURNS xml AS BEGIN DECLARE @DbDisplayName nvarchar (300) DECLARE @padding varchar(20) DECLARE @tmp table (id int identity(1,1), xml xml) DECLARE @x xml SET @padding='\xa0\xa0\xa0' SET @x=@ControlTemplate -- insert the insert @tmp select n.col.query('.') from @x.nodes('/lbItems/lbItem') n(col) set @x = convert(xml,( select t.id 'pos', n.col.value('.','nvarchar(100)') lbItem -- EADM-3103 (EADM-3103) Asian chars are displayed as ?? in Site Admin Location Limiter list (ok in Internal Admin) from @tmp t cross apply t.xml.nodes('lbItem') n(col) order by t.id for xml path('lbItems') )).query( '{ for $e in lbItems return ') If (@AddHeader =1) BEGIN SELECT @DbDisplayName=[dbo].[DbList].[DisplayName] from [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo SET @x.modify('insert{data($e/lbItem[1]/text())} }{sql:variable("@DbDisplayName")} as first into (/lbItems) [1]') END return @x END
/****************************************************************/ /**** Added NotifyItems List ****/ CREATE PROCEDURE [dbo].[EAUI_GetCfgApplication_70]( @ApplicationNo int ) AS BEGIN DECLARE @NotifyItems varchar(8000) SET @NotifyItems='' SELECT @NotifyItems=@NotifyItems+','+[dbo].[ConfigAppNotifyItem].[Item] FROM [dbo].[ConfigAppNotifyItem] WHERE [dbo].[ConfigAppNotifyItem].[ApplicationNo] = @ApplicationNo IF LEN(@NotifyItems)>0 SET @NotifyItems = SUBSTRING(@NotifyItems,2,LEN(@NotifyItems)) SELECT [dbo].[ConfigApplication].[ApplicationNo], [dbo].[ConfigApplication].[ApplicationID], [dbo].[ConfigApplication].[Description], [dbo].[ConfigApplication].[ApplicationType], [dbo].[ConfigApplication].[NotifyProtocol], ISNULL([dbo].[ConfigApplication].[NotifyPage],'') as NotifyPage, [dbo].[ConfigApplication].[ServerDbMode], @NotifyItems AS NotifyItems FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationNo] = @ApplicationNo END
--sql content merged from file: \StoredProcedures\EAIP_AddCustInterface_70.sql CREATE PROCEDURE [dbo].[EAIP_AddCustInterface_70](@CustID varchar(10), @InterfaceID varchar(20), @GroupID nvarchar(10), @STMode char(1), @Version varchar(10)='live') AS BEGIN DECLARE @ProfName nvarchar(100) DECLARE @ClientType varchar(10) DECLARE @ProfPwd nvarchar(10) DECLARE @MarketID varchar(20), @DbLabel varchar(10), @DefLangCode varchar(10), @CustNo int, @DefProfID varchar(10) SELECT @DefProfID=[dbo].[InterfaceVersion].[DefProfID], @DefLangCode=[dbo].[InterfaceVersion].[DefLangCode] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @DefProfID is null BEGIN RAISERROR('No default interface profile defined for "%s/%s" interface.',16,-1,@InterfaceID, @Version) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@DefProfID) RETURN SET @DbLabel='live' SELECT @MarketID=[dbo].[Customer].[MarketID], @CustNo=[dbo].[Customer].[CustNo] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID SELECT @ClientType=[a].[ClientType], @ProfName=[b].[InterfaceName] FROM [dbo].[Interface] AS a INNER JOIN [dbo].[InterfaceLanguage] AS b ON a.InterfaceID=b.InterfaceID WHERE a.InterfaceID=@InterfaceID AND b.Version=@Version AND b.LangCode='en' SELECT @ProfPwd='ep' + CONVERT( VARCHAR, RAND(DATEPART(ms, GETDATE()))*1000000 ) BEGIN TRANSACTION IF @GroupID='trial' EXEC [dbo].[EAIP_AddUserGroup_70] @CustID, @GroupID, 'T', 'Trial User Group', '' IF @GroupID='main' EXEC [dbo].[EAIP_AddUserGroup_70] @CustID, @GroupID, 'S', 'Main User Group', '' EXEC [dbo].[EAIP_AddProfile_70] @CustID, @GroupID, @DefProfID, @ProfPwd, @InterfaceID, @Version, @MarketID, @STMode, @DbLabel, @ProfName, @DefLangCode DECLARE @NewProfNo int DECLARE @NewContentAutoAddParamNo int SELECT @NewProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@DefProfID SELECT @NewContentAutoAddParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='newContentAutoAddToProfile' --Create a CustomParamScalarValue entry for the paramter "NewContentAutoAddToProfile" for the newly created default profile. -- EHPMEBSCOADMIN-2093 - Release 14.3 : For Default profile, NewContentAutoAdd param value should be 'No' for 'eds' /'wsapi' interface. -- For all other interface default profiles, NewContentAutoAdd param value should be 'Yes' IF (@InterfaceID='eds' OR @InterfaceID='wsapi') AND (@Version='live') EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @NewProfNo,'P',@NewContentAutoAddParamNo, '0' ELSE EXEC [dbo].[EAIP_UpdateCustomParamScalarValue_70] @NewProfNo,'P',@NewContentAutoAddParamNo, '1' IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetCustomerContentFilters_181](@CustID varchar(10)) AS SELECT cfl.ContentFilterListID, cfl.ContentFilterListDesc, cfl.ContentFilterType, CASE WHEN ccf.CustContentFilterNo IS NOT NULL THEN 'True' ELSE 'False' END AS Selected FROM dbo.ContentFilterList cfl LEFT OUTER JOIN dbo.CustContentFilters ccf ON cfl.ContentFilterNo=ccf.ContentFilterNo AND ccf.CustID=@CustID
CREATE PROCEDURE [dbo].[EAUI_GetStringValueMap](@FieldName varchar(40)) AS BEGIN SELECT [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description] FROM [dbo].[StringValueMap] WHERE [dbo].[StringValueMap].[FieldName]=@FieldName END
CREATE PROCEDURE [dbo].[EAUI_ConvertToEPDB_101] (@UserId nvarchar(20), @UserIP varchar(15),@DbVerNo int )AS BEGIN DECLARE @DbName varchar(10), @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel = [dbo].[DbList].[DbLabel] From [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @StatusDetails varchar(max) SET @StatusDetails = 'Convertion results for '+ @DbName+'/'+@DbLabel+':
' IF @DbLabel<>'rebuildQC' BEGIN SELECT @StatusDetails + 'EPDB Conversion is allowed only for RebuildQC label, conversion cancelled.' AS StatusDetails RETURN END DECLARE @InfoDetails varchar(max) SET @InfoDetails='' DECLARE @SubjectAuthVerNo int SELECT @SubjectAuthVerNo=d.DbVerNo FROM [dbo].[DbAuthority] a JOIN [dbo].[DbList] d ON a.AuthDbVerNo = d.DbVerNo AND a.MainDbVerNo=@DbVerNo AND d.DbType in (2,7) And d.ContentType in (3,13) Order By d.DbType -- give priority to hierarhical authority If @SubjectAuthVerNo is null SET @InfoDetails = 'Database does not have any Subject Authorities;
' IF EXISTS (SELECT 1 FROM [dbo].[DbAuthority] a join [dbo].[DbList] d on a.AuthDbVerNo = d.DbVerNo And d.DbName =@DbName + 'thes') SET @InfoDetails = @InfoDetails + 'Database already has authority '+@DbName + 'thes;
' IF @InfoDetails <>'' BEGIN SELECT @StatusDetails + @InfoDetails + ' Conversion cancelled.'AS StatusDetails RETURN END DECLARE @SubjectAuthDbname varchar(10) SELECT @SubjectAuthDbname =[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@SubjectAuthVerNo IF @SubjectAuthDbname<>@DbName+'de' AND @SubjectAuthDbname<>@DbName+'deh' SET @StatusDetails = @StatusDetails +'Warning: Subject Authority '+@SubjectAuthDbname+'/'+@DbLabel+' does not confirm to pattern xxxde or xxxdeh.
' DECLARE @ThesContentType int SELECT @ThesContentType =[dbo].[DbContentList].[ContentType] from [dbo].[DbContentList] Where [dbo].[DbContentList].[Description]='Thesaurus' BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[DbList] ([dbo].[DbList].[DbName],[dbo].[DbList].[DbLabel],[dbo].[DbList].[DisplayName],[dbo].[DbList].[DSFamilyName],[dbo].[DbList].[DbGroup],[dbo].[DbList].[DbType],[dbo].[DbList].[ContentType],[dbo].[DbList].[LastUpdateDate],[dbo].[DbList].[MultiSegment], [dbo].[DbList].[EnforceSimUsage],[dbo].[DbList].[ShowStats],[dbo].[DbList].[ShowOnDDSConsole],[dbo].[DbList].[WebClient],[dbo].[DbList].[WinClient],[dbo].[DbList].[CharClient],[dbo].[DbList].[Z3950Client],[dbo].[DbList].[InterfaceID],[dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild],[dbo].[DbList].[EDABuild],[dbo].[DbList].[IncludeWhenAutoAdd],[dbo].[DbList].[SourceType]) SELECT @DbName+'thes' ,@DbLabel, [dbo].[DbList].[DisplayName], @DbName, [dbo].[DbList].[DbGroup], [dbo].[DbList].[DbType],@ThesContentType, GETDATE(),0, [dbo].[DbList].[EnforceSimUsage],[dbo].[DbList].[ShowStats],[dbo].[DbList].[ShowOnDDSConsole],[dbo].[DbList].[WebClient],[dbo].[DbList].[WinClient],[dbo].[DbList].[CharClient],0,[dbo].[DbList].[InterfaceID],[dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild],[dbo].[DbList].[EDABuild],[dbo].[DbList].[IncludeWhenAutoAdd],[dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@SubjectAuthVerNo SET @StatusDetails = @StatusDetails +'Created authority database: '+@DbName+'thes/'+@DbLabel+'.
' DECLARE @NewDbVerNo int SELECT @NewDbVerNo = [dbo].[DbList].[DbVerNo] From [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName+'thes' AND [dbo].[DbList].[DbLabel]=@DbLabel DECLARE @ParamNo INT DECLARE @ParamDefault nvarchar(10) --full text SELECT @ParamNo=l.ParamNo, @ParamDefault =d.DefValue FROM [dbo].[DbParamDefaults] d JOIN [dbo].[DbParamList] l ON d.ParamNo=l.ParamNo AND l.ParamName = 'fullTextAllowed' IF @ParamDefault=N'1' INSERT INTO [dbo].[DbParamScalarValues]([dbo].[DbParamScalarValues].[ParamNo],[dbo].[DbParamScalarValues].[DbVerNo],[dbo].[DbParamScalarValues].[ParamValue]) VALUES ( @ParamNo,@NewDbVerNo,N'0') --relevancy Ranking SELECT @ParamNo=l.ParamNo, @ParamDefault =d.DefValue FROM [dbo].[DbParamDefaults] d JOIN [dbo].[DbParamList] l ON d.ParamNo=l.ParamNo AND l.ParamName = 'relevancyRankAllowed' IF @ParamDefault=N'0' INSERT INTO [dbo].[DbParamScalarValues]([dbo].[DbParamScalarValues].[ParamNo],[dbo].[DbParamScalarValues].[DbVerNo],[dbo].[DbParamScalarValues].[ParamValue]) VALUES ( @ParamNo,@NewDbVerNo,N'1') --thesaurus Expansion SELECT @ParamNo=l.ParamNo, @ParamDefault =d.DefValue FROM [dbo].[DbParamDefaults] d JOIN [dbo].[DbParamList] l ON d.ParamNo=l.ParamNo AND l.ParamName = 'thesaurusExpansionAllowed' IF @ParamDefault=N'1' INSERT INTO [dbo].[DbParamScalarValues]([dbo].[DbParamScalarValues].[ParamNo],[dbo].[DbParamScalarValues].[DbVerNo],[dbo].[DbParamScalarValues].[ParamValue]) VALUES ( @ParamNo,@NewDbVerNo,N'0') SELECT @ParamNo=l.ParamNo FROM [dbo].[DbParamList] l WHERE l.ParamName = 'toolbarLinkText' DECLARE @ToolBarText nvarchar(max) SET @ToolBarText=N'' select @ToolBarText=@ToolBarText+ N''+c.LinkText+ N' ' from [dbo].[DbContentCaptions] c JOIN [dbo].[DbList] l on c.[ContentType]=l.ContentType AND l.DbVerNo=@SubjectAuthVerNo INSERT INTO [dbo].[DbParamScalarValues] ([dbo].[DbParamScalarValues].[DbVerNo], [dbo].[DbParamScalarValues].[ParamNo], [dbo].[DbParamScalarValues].[ParamValue]) VALUES(@NewDbVerNo, @ParamNo, @ToolBarText) INSERT INTO [dbo].[DBMultiDbAuthList]([dbo].[DBMultiDbAuthList].[MultiDbAuthID], [dbo].[DBMultiDbAuthList].[DbVerNo]) VALUES ('150Subj', @NewDbVerNo) --to do - check the SeqNo value INSERT INTO [dbo].[DbAuthority] ([dbo].[DbAuthority].[AuthDbVerNo], [dbo].[DbAuthority].[MainDbVerNo], [dbo].[DbAuthority].[OwnedFlag], [dbo].[DbAuthority].[SeqNo]) VALUES (@NewDbVerNo, @DbVerNo,1,1) IF EXISTS (SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] =@DbVerNo Group BY [dbo].[DbSegment].[DbVerNo] Having COUNT(*)>1) BEGIN DELETE [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo] =@DbVerNo SET @StatusDetails =@StatusDetails +'Info: multiple segments removed
' INSERT INTO [dbo].[DbSegment]([dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName], [dbo].[DbSegment].[SegDescription],[dbo].[DbSegment].[SeqNo]) SELECT @DbVerNo, [dbo].[DbList].[DbName], [dbo].[DbList].[DisplayName], 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SET @StatusDetails =@StatusDetails +'Info: single segment created
' END UPDATE [dbo].[DbList] Set [dbo].[DbList].[MultiSegment] =0 WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo AND [dbo].[DbList].[MultiSegment] <>0 ---------------------------- --begin attach customizer ------------------------------ DECLARE @IssueAuthVerNo int SELECT @IssueAuthVerNo=d.DbVerNo FROM [dbo].[DbAuthority] a JOIN [dbo].[DbList] d ON a.AuthDbVerNo = d.DbVerNo And a.MainDbVerNo=@DbVerNo AND d.ContentType =8 DECLARE @IssueAuthName varchar(10) SELECT @IssueAuthName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] where [dbo].[DbList].[DbVerNo] = @IssueAuthVerNo IF @IssueAuthVerNo is not null BEGIN DECLARE @FeatureNo int SELECT @FeatureNo=[dbo].[FeatureList].[FeatureNo] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]='cust' AND [dbo].[FeatureList].[SubCategory]=@DbLabel AND [dbo].[FeatureList].[FeatureName]='RDKIssueAuthorityCustomizer' IF @FeatureNo is null SET @StatusDetails = @StatusDetails +'Warning: RDKIssueAuthorityCustomizer does not exist in '+@DbLabel+' label.
' IF @FeatureNo is not null AND NOT EXISTS (SELECT 1 FROM [dbo].[DbFeature] WHERE [dbo].[DbFeature].[DbVerNo] = @IssueAuthVerNo AND [dbo].[DbFeature].[FeatureNo]=@FeatureNo) BEGIN IF EXISTS ( SELECT 1 FROM [dbo].[DbFieldTag] ft WHERE ft.DbVerNo = @IssueAuthVerNo AND ft.FieldTag IN ( SELECT FieldValueXml.query('fields/field[@name="Tag"]').value('.', 'varchar(20)') FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo] = @FeatureNo AND [dbo].[FeatureValues].[ItemNo] > 0 ) ) BEGIN INSERT INTO [dbo].[DbFeature]([dbo].[DbFeature].[DbVerNo], [dbo].[DbFeature].[FeatureNo]) VALUES (@IssueAuthVerNo, @FeatureNo) SET @StatusDetails = @StatusDetails +'Info: RDKIssueAuthorityCustomizer was attached to '+@IssueAuthName+'.
' END ELSE SET @StatusDetails = @StatusDetails +'Warning: can not attach RDKIssueAuthorityCustomizer customizer to '+@IssueAuthName +' because database does not have requered tags.
' END END ------------------------- --end attach customizer ------------------------------ ------------------------- --begin clean up --Delete any xxxDE, xxxDEH, and xxxJN authorities associated with the main database ------------------------------ DECLARE @AuthCleanUpTempTable table(ind tinyint IDENTITY(1,1) , authDbname varchar(10)) INSERT INTO @AuthCleanUpTempTable(authDbname) Values(@DbName+'de') INSERT INTO @AuthCleanUpTempTable(authDbname) Values(@DbName+'deh') INSERT INTO @AuthCleanUpTempTable(authDbname) Values(@DbName+'jn') DECLARE @AuthCleanUpVerNo int DECLARE @AuthCleanUpDbName varchar(10) DECLARE @Index tinyint SET @Index=1 DECLARE @Count tinyint SELECT @Count =COUNT(*)+1 FROM @AuthCleanUpTempTable WHILE @Index<@Count BEGIN SELECT @AuthCleanUpDbName = authDbName FROM @AuthCleanUpTempTable WHERE ind=@Index SELECT @AuthCleanUpVerNo =[dbo].[DbList].[DbVerNo] From [dbo].[DbList] WHERE [dbo].[DbList].[DbName] =@AuthCleanUpDbName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @AuthCleanUpVerNo IS NOT NULL IF EXISTS (SELECT 1 FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo]=@DbVerNo AND [dbo].[DbAuthority].[AuthDbVerNo]=@AuthCleanUpVerNo) BEGIN DELETE [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo]=@DbVerNo AND [dbo].[DbAuthority].[AuthDbVerNo]=@AuthCleanUpVerNo DELETE [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@AuthCleanUpVerNo SET @StatusDetails = @StatusDetails +'Warning: removed authority database '+@AuthCleanUpDbName+'/'+@DbLabel+'.
' END SET @Index=@Index+1 END ------------------------- --end clean up ------------------------------ EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Database', 'Convert to EPDB', @DbName, @DbLabel COMMIT TRANSACTION SET @StatusDetails = @StatusDetails +'
' + @DbName+'/'+@DbLabel+ ' was converted to EPDB.' SELECT @StatusDetails AS StatusDetails END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SET @StatusDetails =@StatusDetails + 'Convertion cancelled, exception:
' + ERROR_MESSAGE() SELECT @StatusDetails AS StatusDetails END CATCH END
CREATE PROCEDURE [dbo].[IS_AddUserGroup_210](@CustID varchar(10), @GroupID nvarchar(10), @GroupName nvarchar(100)) AS BEGIN -- Wrapping procedure to avoid MSDTC issue EXEC EASUPPORT.[dbo].[IS_AddUserGroup_100] @CustId, @GroupId, @GroupName END
CREATE PROCEDURE [dbo].[EAIP_CheckIfParamIsAttachedToInterface_141] (@ParamName varchar(100), @ProfNo int) AS DECLARE @ReturnFlag bit SET @ReturnFlag = 0 IF EXISTS (SELECT 1 FROM [dbo].[InterfaceParamList] i join [dbo].[CustomParamList] c on c.ParamNo=i.ParamNo join [dbo].[Profile] p on p.ProfNo=@ProfNo AND p.InterfaceID=i.InterfaceID AND p.Version=i.Version Where c.ParamName=@ParamName) Set @ReturnFlag = 1 Select @ReturnFlag
CREATE PROCEDURE [dbo].[EAIPO_GetCustomerBrandingItemName_70](@CustID varchar(10), @NewItemName varchar(255) OUTPUT ) AS BEGIN EXEC [dbo].[EAIPO_GetNewItemName_70] @CustID, 'customerBrandCount', null, @NewItemName OUTPUT END
CREATE Procedure [dbo].[EAUI_GetMdbAsToAttachToDb_90](@DbVerNo int) AS SELECT mdbal.MultiDbAuthID, mdbac.LinkText + ' (' + mdbal.MultiDbAuthID + ')' Caption, mdbal.Description FROM [dbo].[MultiDbAuthList] mdbal LEFT JOIN [dbo].[DBMultiDbAuthList] dbmdbal ON mdbal.MultiDbAuthID = dbmdbal.MultiDbAuthID AND dbmdbal.DbVerNo = @DbVerNo INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON mdbal.MultiDbAuthID = mdbac.MultiDbAuthID AND mdbac.LangCode = 'en' WHERE dbmdbal.MultiDbAuthID Is Null ORDER BY mdbac.LinkText
CREATE TRIGGER dbo.[CustomParamScalarValuesDeletedTrigger] ON dbo.CustomParamScalarValues AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomParamScalarValues] ([TargetNo], [ParamName], [OldValue], [NewValue]) SELECT d.[TargetNo], cpl.[ParamName], ParamValue AS [OldValue] ,NULL AS [NewValue] FROM deleted d INNER JOIN [dbo].[CustomParamList] cpl ON d.ParamNo = cpl.ParamNo WHERE (cpl.ParamLevel = 'P' AND cpl.ParamName ='uiStatus') INSERT INTO [dbo].[ChangedCustomers] ([CustId]) SELECT c.CustID FROM Customer c INNER JOIN deleted d ON c.CustNo = d.TargetNo INNER JOIN [dbo].[CustomParamList] cpl ON d.ParamNo = cpl.paramno WHERE cpl.ParamLevel = 'G' and cpl.ParamName = 'defaultProfileForEbscoMobileApp' END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceFeatureFields_77](@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(100), @ItemNo int, @FieldsXML nvarchar(max))AS BEGIN DECLARE @InterfaceFeatureNo int SELECT @InterfaceFeatureNo=[dbo].[InterfaceFeatureList].[InterfaceFeatureNo] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceFeatureList].[Version]=@Version AND [dbo].[InterfaceFeatureList].[FeatureName]=@FeatureName IF @InterfaceFeatureNo is null RETURN BEGIN TRANSACTION UPDATE [dbo].[InterfaceFeatureValues] SET [dbo].[InterfaceFeatureValues].[FieldValueXml]=@FieldsXML WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]=@ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface Feature Fields','Translate (Update)', @InterfaceID, @Version, @FeatureName, @ItemNo COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetDsFamilyInfo_70](@DSFamilyName varchar(100), @DbLabel varchar(10), @Volume varchar(20)) AS BEGIN SELECT a.DbVerNo, a.DbName, a.DbType, DATEDIFF(second, CONVERT(DATETIME, '1970-01-01 00:00:00'),b.LastUpdateDate) AS LastUpdateDate , dbo.EAIF_GetDbParamScalarValue_70(a.DbVerNo, 'dbISSNField') as ISSNField, dbo.EAIF_GetDbParamScalarValue_70(a.DbVerNo, 'dbANField') as ANField, dbo.EAIF_GetDbParamScalarValue_70(a.DbVerNo, 'dbPubDateField') as PubDateField, [b].[EpkPath], a.DisplayName, ISNULL(a.DbCategory,'r') AS DbCategory FROM [dbo].[DbList] a INNER JOIN [dbo].[DbVolume] b ON a.DbVerNo = b.DbVerNo WHERE a.DSFamilyName = @DSFamilyName AND a.DbLabel = @DbLabel AND b.Volume = @Volume ORDER BY a.DbType END
CREATE Procedure [dbo].[EAUI_GetGuestAccessAuthTypes_144] @ProfNo int As Begin Declare @PrimaryParamNo int Select @PrimaryParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkPrimaryProxy' Select 'proxy', substring([dbo].[CustomParamScalarValues].[ParamValue],charindex(':',[dbo].[CustomParamScalarValues].[ParamValue])+1,len([dbo].[CustomParamScalarValues].[ParamValue])-charindex(':',[dbo].[CustomParamScalarValues].[ParamValue])), 0 AS SeqNo from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo]=@PrimaryParamNo and [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' and [dbo].[CustomParamScalarValues].[ParamValue] is not null and [dbo].[CustomParamScalarValues].[ParamValue]<>'' UNION SELECT [dbo].[GuestAccessAuthTypes].[AuthType], [dbo].[GuestAccessAuthTypes].[Description], [dbo].[GuestAccessAuthTypes].[SeqNo] FROM [dbo].[GuestAccessAuthTypes] ORDER BY SeqNo END
--sql content merged from file: \StoredProcedures\EAIP_UserGroup_Persist.sql CREATE PROCEDURE [dbo].[EAIP_UserGroup_Persist] @GroupNo int = NULL, @CustID varchar(10), @GroupID varchar(10), @GroupType char(1), @GroupName nvarchar(100), @GroupEmail nvarchar(100), @UserId nvarchar(20) = null, @UserIp varchar(15) = null AS IF @GroupNo IS NULL BEGIN INSERT INTO [dbo].[UserGroup] ( [dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail] ) VALUES ( @CustID, @GroupID, @GroupType, @GroupName, @GroupEmail ) SELECT @GroupNo = SCOPE_IDENTITY() IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'UserGroup', 'Insert UserGroup', @CustID, @GroupID, @GroupType, @GroupName, @GroupEmail END END ELSE BEGIN UPDATE [dbo].[UserGroup] SET [dbo].[UserGroup].[CustID] = @CustID, [dbo].[UserGroup].[GroupID] = @GroupID, [dbo].[UserGroup].[GroupType] = @GroupType, [dbo].[UserGroup].[GroupName] = @GroupName, [dbo].[UserGroup].[GroupEmail] = @GroupEmail WHERE [dbo].[UserGroup].[GroupNo] = @GroupNo IF @userId IS NOT NULL AND @userIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'UserGroup', 'Update UserGroup', @CustID, @GroupID, @GroupType, @GroupName, @GroupEmail END END SELECT @GroupNo
CREATE PROCEDURE [dbo].[EAUI_UpdateZ3950Form_70](@UserId nvarchar(20), @UserIP varchar(15), @VendorID int, @FormID int, @FormText varchar(255)) AS BEGIN UPDATE [dbo].[Z3950Forms] Set [dbo].[Z3950Forms].[FormText]=@FormText WHERE [dbo].[Z3950Forms].[VendorID]=@VendorID AND [dbo].[Z3950Forms].[FormID]=@FormID EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Z39.50 Vendors', 'Edit Form', @VendorID, @FormID, @FormText END
CREATE PROCEDURE dbo.EAUI_GetDatabasesWithFieldGroup_70 ( @DbVerNo int , @DbLabel varchar(10) ) AS BEGIN SELECT DISTINCT DL.DbVerNo , DL.DisplayName + N' (' + DL.DbName + N')' AS DisplayName FROM dbo.DbList AS DL INNER JOIN dbo.DbFieldGroup AS DFG ON DL.DbVerNo = DFG.DbVerNo WHERE DL.DbLabel = @DbLabel AND DL.DbVerNo <> @DbVerNo ORDER BY DisplayName ASC END
CREATE PROCEDURE EATL_UpdateAuthorityFilter_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo int ,DbName varchar(10) ,DbLabel varchar(10) ,ParamValue nvarchar(max) ) INSERT INTO #Objects ( DbVerNo ,DbName ,DbLabel ,ParamValue ) SELECT m.c.value('(./DbVerNo)[1]', 'int') ,m.c.value('(./DbName)[1]', 'varchar(10)') ,m.c.value('(./DbLabel)[1]', 'varchar(10)') ,m.c.value('(./ParamValue)[1]','nvarchar(max)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo int ,@DbName varchar(10) ,@DbLabel varchar(10) ,@ParamValue nvarchar(max) ,@ParamName varchar(100) = 'authorityFilters' ,@ItemName varchar(255) = '' ,@Mode varchar(6) = 'Update' SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@DbName = DbName ,@DbLabel = DbLabel ,@ParamValue = ParamValue FROM #Objects WHERE ID = @i EXECUTE [dbo].[EAUI_UpdateDbParamXmlValue_70] @UserID ,@UserIP ,@DbVerNo ,@DbName ,@DbLabel ,@ParamName ,@ItemName ,@ParamValue ,@Mode SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE dbo.EAIP_GetSearchExpanders_244 ( @CustId NVARCHAR(10), @GroupId NVARCHAR(10), @ProfId NVARCHAR(10) ) AS BEGIN DECLARE @ProfNo INT = dbo.EAIF_GetProfNo_70(@CustId, @GroupId, @ProfId); IF (@ProfNo IS NULL) BEGIN SELECT @ProfNo AS ProfNo; RETURN; END DECLARE @InterfaceID NVARCHAR(10); DECLARE @Version NVARCHAR(10); DECLARE @AutoAdd BIT; SELECT @InterfaceID = p.InterfaceID, @Version = p.Version FROM dbo.Profile p WHERE p.ProfNo = @ProfNo; SELECT @AutoAdd = iv.AutoAddExpanders FROM dbo.InterfaceVersion iv WHERE iv.InterfaceID = @InterfaceID AND iv.Version = @Version; IF @AutoAdd = 1 BEGIN SELECT CAST(ROW_NUMBER() OVER(ORDER BY ge.ControlName DESC) AS INT) AS id, COALESCE(pe.ControlShow, ie.ControlShow, ge.ControlShow) AS Show, ge.Description AS Expander, COALESCE(pe.ControlDefault,ie.ControlDefault, ge.ControlDefault) AS DefaultToSelected FROM dbo.GlobalExpander ge LEFT JOIN dbo.ProfExpander pe ON pe.ControlName = ge.ControlName AND pe.ProfNo = @ProfNo LEFT JOIN dbo.InterfaceExpander ie ON ie.ControlName = ge.ControlName AND ie.InterfaceID = @InterfaceID AND ie.Version = @Version SELECT CAST(DENSE_RANK() OVER(ORDER BY ge.ControlName DESC) AS INT) AS id, iull.LangCode AS Locale, COALESCE(pec.Caption, gec.DefCaption, '') AS Caption FROM dbo.GlobalExpander ge LEFT JOIN dbo.ProfExpander pe ON pe.ControlName = ge.ControlName AND pe.ProfNo = @ProfNo LEFT JOIN dbo.InterfaceExpander ie ON ie.ControlName = ge.ControlName AND ie.InterfaceID = @InterfaceID AND ie.Version = @Version INNER JOIN dbo.InterfaceUserLangList iull ON iull.InterfaceID = @InterfaceID AND iull.Version = @Version LEFT JOIN dbo.ProfExpanderCaption pec ON pec.ProfNo = pe.ProfNo AND pec.ControlName = pe.ControlName AND pec.LangCode = iull.LangCode LEFT JOIN dbo.GlobalExpanderCaption gec ON gec.ControlName = ge.ControlName AND gec.LangCode = iull.LangCode ORDER BY ge.ControlName DESC, iull.SeqNo ASC END ELSE BEGIN SELECT CAST(ROW_NUMBER() OVER(ORDER BY ge.ControlName DESC) AS INT) AS id, ISNULL(pe.ControlShow,ISNULL(ie.ControlShow,ge.ControlShow)) AS Show, ge.Description AS Expander, ISNULL(pe.ControlDefault,ISNULL(ie.ControlDefault, ge.ControlDefault)) AS DefaultToSelected FROM dbo.GlobalExpander ge LEFT JOIN dbo.ProfExpander pe ON pe.ControlName = ge.ControlName AND pe.ProfNo = @ProfNo INNER JOIN dbo.InterfaceExpander ie ON ie.ControlName = ge.ControlName WHERE ie.InterfaceID = @InterfaceID AND ie.Version = @Version SELECT CAST(DENSE_RANK() OVER(ORDER BY ge.ControlName DESC) AS INT) AS id, iull.LangCode AS Locale, COALESCE(pec.Caption,gec.DefCaption, '') AS Caption FROM dbo.GlobalExpander ge LEFT JOIN dbo.ProfExpander pe ON pe.ControlName = ge.ControlName AND pe.ProfNo = @ProfNo INNER JOIN dbo.InterfaceExpander ie ON ie.ControlName = ge.ControlName INNER JOIN dbo.InterfaceUserLangList iull ON iull.InterfaceID = @InterfaceID AND iull.Version = @Version LEFT JOIN dbo.ProfExpanderCaption pec ON pec.ProfNo = pe.ProfNo AND pec.ControlName = pe.ControlName AND pec.LangCode = iull.LangCode LEFT JOIN dbo.GlobalExpanderCaption gec ON gec.ControlName = ge.ControlName AND gec.LangCode = iull.LangCode WHERE ie.InterfaceID = @InterfaceID AND ie.Version = @Version ORDER BY ge.ControlName DESC, iull.SeqNo ASC END END
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseThesaurus_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20), @ThesNumber int, @ThesFile varchar(255), @UserControlled bit, @StoreKWIC bit) AS BEGIN DECLARE @ThesNumberAsText varchar(20) SELECT @ThesNumberAsText=CONVERT(varchar,@ThesNumber) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Thesaurus', 'Segment:', @SegName,'Volume:',@Volume,'Thesaurus:',@ThesNumberAsText UPDATE [dbo].[DbThesaurus] SET [dbo].[DbThesaurus].[ThesFile] = @ThesFile, [dbo].[DbThesaurus].[UserControlled] = @UserControlled, [dbo].[DbThesaurus].[StoreKWIC] = @StoreKWIC WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName AND [dbo].[DbThesaurus].[Volume] = @Volume AND [dbo].[DbThesaurus].[ThesNumber] = @ThesNumber IF (@@ERROR <> 0) BEGIN RAISERROR('Error updating thesaurus %s for database %s %s. Update failed.',16,-1,@ThesNumberAsText,@DbName,@DbLabel) RETURN END END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceClientType_70](@ProfNo int) RETURNS VARCHAR(10) AS BEGIN RETURN (SELECT [intf].[ClientType] FROM [dbo].[Interface] intf INNER JOIN [dbo].[Profile] prf ON intf.InterfaceID=prf.InterfaceID WHERE prf.ProfNo=@ProfNo) END
CREATE PROCEDURE [dbo].[EAUI_GetCfgApplicationList_70] AS BEGIN SELECT [a].[ApplicationNo], [a].[ApplicationType], m.Description as 'Type', [a].[ApplicationID], a.Description, [a].[NotifyProtocol] FROM dbo.ConfigApplication a INNER JOIN dbo.CharValueMap m ON a.ApplicationType=m.FieldCode WHERE [m].[FieldName]='ApplicationType' ORDER BY [a].[ApplicationID] END
-- Based on EAIP_AddCustomer_70, to be used from BLL/service components -- together with other calls to Authentication to create UidAccount and PersonalAccount -- In calling component check for PersonalAccount should be done to make sure a record does not exist for where UserId = CustId -- transaction in TransactionScope should not complete if this procedure returns error -- A record should be created in UidAccount table where UserID = CustId, AuthPassword as 'password' and GroupId = main -- Also create the default User Rights & Permissions for Accessing Admin. in Authentication->PersonalAccount table CREATE PROCEDURE [dbo].[EAIP_AddCustomer_100](@CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @Status char(1), @Consortium bit) AS BEGIN Declare @Pos int declare @char char(1) Declare @charCode int IF @CustID='system' OR @CustID='all' BEGIN RAISERROR('The CustID "%s" is reserved by the system.',16,-1,@CustID) RETURN END set @pos=1 while @pos<=datalength(@CustID) Begin set @charcode=ascii(substring(@CustID,@pos,1)) -- [0-9] = charcodes 48 through 57 -- [A-Z] = charcodes 65 through 90 -- [a-z] = charcodes 97 through 122 -- [_] = charcode 95 if (@charcode not between 48 and 57) and (@charcode not between 65 and 90) and (@charcode not between 97 and 122) and @charcode <> 95 Begin set @char=substring(@CustID,@pos,1) RAISERROR('The CustID "%s" has an invalid character: "%s". Only letters, digits, and _ (underscore) are allowed.',16,-1,@CustID,@char) Return End set @pos=@pos+1 End IF NOT EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID) BEGIN IF @CustName IS NULL SELECT @CustName=@CustID SELECT @CustID=lower(@CustID) INSERT INTO [dbo].[Customer]([dbo].[Customer].[CustID], [dbo].[Customer].[CustName], [dbo].[Customer].[CustType], [dbo].[Customer].[MarketID], [dbo].[Customer].[Status], [dbo].[Customer].[Consortium], [dbo].[Customer].[TimeStamp]) VALUES(@CustID, @CustName, @CustType, @MarketID, @Status, @Consortium, GETDATE()) IF (@@ERROR <> 0) BEGIN RAISERROR('Inserting Into Customer Failed For:"%s".',16,-1,@CustId) RETURN END ---Create the Main User Group -- GroupType has defval='N' - Normal user group INSERT INTO [dbo].[UserGroup]([dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail]) VALUES (@CustID,'main','Main User Group', NULL) IF (@@ERROR <> 0) BEGIN RAISERROR('Inserting into UserGroup Failed For:"%s.main."',16,-1,@CustID) RETURN END ---Create the default Yes/No messages DECLARE @MsgNo int EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID, 'This title is held locally', @YesMsgNo=@MsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID, 'This title is not held locally', @NoMsgNo=@MsgNo OUTPUT END ELSE BEGIN RAISERROR('CustID "%s" already exists.',16,-1,@CustID) RETURN END END
CREATE PROCEDURE [dbo].[EAIP_GetCustomerContentFilters_Paged_241] @CustID varchar(10), @browseField varchar(25) = 'ID', @browseTerm nvarchar(255) = '', @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN WITH CTE AS ( SELECT cfl.ContentFilterListID, cfl.ContentFilterListDesc, cfl.ContentFilterType, CASE WHEN ccf.CustContentFilterNo IS NOT NULL THEN 'True' ELSE 'False' END AS Selected FROM dbo.ContentFilterList cfl LEFT OUTER JOIN dbo.CustContentFilters ccf ON cfl.ContentFilterNo=ccf.ContentFilterNo AND ccf.CustID=@CustID WHERE @browseTerm = '' OR (@browseField = 'ID' AND ContentFilterListID LIKE '%' + @browseTerm + '%') OR (@browseField = 'ContentFilterDesc' AND ContentFilterListDesc LIKE '%' + @browseTerm + '%')), PagedCte AS ( SELECT ContentFilterListID, ContentFilterListDesc, ContentFilterType, Selected FROM CTE ORDER BY ContentFilterListID ASC OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY) SELECT ContentFilterListID, ContentFilterListDesc, ContentFilterType, Selected, NULL TotalCount FROM PagedCte UNION ALL SELECT NULL ContentFilterListID, NULL ContentFilterListDesc, NULL ContentFilterType, NULL Selected, COUNT(*) TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_GetSTSDetails_90] @MultiDbSTSID varchar(10) AS Select [dtl].[DocTypeID], [dtc].[Caption] From [dbo].[DocTypeList] dtl Join [dbo].[DocTypeCaption] dtc On dtl.DocTypeNo=dtc.DocTypeNo Join [dbo].[DocTypeMultiDbSTSList] dtmdbsl On dtl.DocTypeNo=dtmdbsl.DocTypeNo where [dtc].[LangCode]='en'
CREATE PROCEDURE [dbo].[EAUI_CopyDbFieldGroup_70]( @UserID nvarchar(20), @UserIP varchar(15), @SourceDbVerNo int, @SourceGroupList varchar(2048), @TargetDbVerNo int) AS BEGIN DECLARE @GroupTable table (FieldGroupNo int) INSERT INTO @GroupTable SELECT CONVERT(int, [dbo].[EAIF_GetItemTable_70].[Item]) FROM dbo.EAIF_GetItemTable_70(@SourceGroupList,'+') BEGIN TRANSACTION --Delete the old ones DELETE dfg FROM [dbo].[DbFieldGroup] dfg INNER JOIN @GroupTable b ON dfg.FieldGroupNo=b.FieldGroupNo WHERE DbVerNo=@TargetDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Copy Group failed to clean old groups.', 16, -1) RETURN END --Copy the SourceGroup(s) MINUS TargetGroups into DbFieldGroup INSERT INTO [dbo].[DbFieldGroup]([a].[DbVerNo], [a].[FieldGroupNo]) SELECT @TargetDbVerNo, b.FieldGroupNo FROM [dbo].[DbFieldGroup] a INNER JOIN @GroupTable b ON a.FieldGroupNo = b.FieldGroupNo WHERE a.DbVerNo = @SourceDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Copy Group failed to copy source group.', 16, -1) RETURN END --Copy all FieldElements INSERT INTO [dbo].[DbFieldElement]([a].[DbVerNo], [a].[FieldGroupNo], [a].[FieldElementNo]) SELECT @TargetDbVerNo, b.FieldGroupNo, a.FieldElementNo FROM [dbo].[DbFieldElement] a INNER JOIN @GroupTable b ON a.FieldGroupNo = b.FieldGroupNo WHERE a.DbVerNo = @SourceDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Copy Group failed to copy Field Names.', 16, -1) RETURN END --Copy all language Captions INSERT INTO [dbo].[DbFieldGroupCaption]([a].[DbVerNo], [a].[FieldGroupNo], [a].[LangCode], [a].[Caption]) SELECT @TargetDbVerNo, b.FieldGroupNo, a.LangCode, a.Caption FROM [dbo].[DbFieldGroupCaption] a INNER JOIN @GroupTable b ON a.FieldGroupNo = b.FieldGroupNo WHERE a.DbVerNo = @SourceDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Copy Group failed to copy Field Names.', 16, -1) RETURN END --Copy all Markets INSERT INTO [dbo].[DbFieldGroupDefaults]([a].[DbVerNo], [a].[FieldGroupNo], [a].[OutputMode], [a].[MarketID], [a].[DefValue]) SELECT @TargetDbVerNo, b.FieldGroupNo, a.OutputMode, a.MarketID, a.DefValue FROM [dbo].[DbFieldGroupDefaults] a INNER JOIN @GroupTable b ON a.FieldGroupNo = b.FieldGroupNo WHERE a.DbVerNo = @SourceDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Copy Group failed to copy Market Defaults.', 16, -1) RETURN END COMMIT TRANSACTION /* Log the Transaction */ DECLARE @SourceDbName varchar(10), @SourceDbLabel varchar(10), @TargetDb varchar(110), @SourceGroupNameList varchar(950) SELECT @SourceDbName=[dbo].[DbList].[DbName], @SourceDbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@SourceDbVerNo SELECT @TargetDb = [dbo].[DbList].[DbName] + ' - ' + [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@TargetDbVerNo SELECT @SourceGroupNameList = COALESCE(@SourceGroupNameList+',','') + [dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo] IN ( SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@SourceGroupList,'+') ) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @SourceDbName, @SourceDbLabel, 'Field Customization', 'Copy Groups:', @SourceGroupNameList, 'Target Database:', @TargetDb END
CREATE PROCEDURE [dbo].[IS_DelCustomer_210] ( @CustID varchar(10) ) AS BEGIN -- Wrapping procedure to avoid MSDTC issue EXEC EASUPPORT.[dbo].[IS_DelCustomer_100] @CustID END
CREATE PROCEDURE [dbo].[EAIP_CheckIfProfileHasEnabledDbs_131](@ProfNo int,@UserEditLevel int) AS BEGIN SELECT dbo.EAIF_CheckIfProfileHasEnabledDbs_131(@ProfNo,@UserEditLevel) END
CREATE PROCEDURE [dbo].[EAIPO_GetCustomerSSItemName_70](@CustID varchar(10), @NewItemName varchar(255) OUTPUT ) AS BEGIN EXEC [dbo].[EAIPO_GetNewItemName_70] @CustID, 'customerSSCount', null, @NewItemName OUTPUT END
CREATE Procedure [dbo].[EAUI_GetMDbASuggestedForDb_90](@DbVerNo int) AS SELECT DISTINCT mdbac.LinkText + N' (' + mdbal.MultiDbAuthID + N')' Caption FROM [dbo].[MultiDbAuthList] mdbal INNER JOIN [dbo].[MultiDbAuthCaption] mdbac ON mdbal.MultiDbAuthID = mdbac.MultiDbAuthID AND mdbac.LangCode = 'en' INNER JOIN [dbo].[MultiDbAuthContentTypes] mdbact ON mdbal.MultiDbAuthID = mdbact.MultiDbAuthID INNER JOIN [dbo].[DbList] dbl ON dbl.ContentType = mdbact.ContentType AND dbl.DbVerNo = @DbVerNo ORDER BY Caption
CREATE TRIGGER dbo.[CustomParamScalarValuesInsertedTrigger] ON dbo.CustomParamScalarValues AFTER INSERT AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomParamScalarValues] ([TargetNo], [ParamName], [OldValue], [NewValue]) SELECT i.[TargetNo], cpl.[ParamName], NULL AS [OldValue] ,i.ParamValue AS [NewValue] FROM inserted i INNER JOIN [dbo].[CustomParamList] cpl ON i.ParamNo = cpl.ParamNo WHERE (cpl.ParamLevel = 'P' AND cpl.ParamName = 'uiStatus') INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT c.CustID, 'I' FROM Customer c INNER JOIN inserted i ON c.CustNo = i.TargetNo INNER JOIN [dbo].[CustomParamList] cpl ON i.ParamNo = cpl.paramno WHERE cpl.ParamLevel = 'G' and cpl.ParamName = 'defaultProfileForEbscoMobileApp' END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceFeatureFields_Batch] @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML AS BEGIN CREATE TABLE #Objects( ID INT identity(1, 1) ,InterfaceID varchar(10) ,Version varchar(10) ,FeatureName varchar(100) ,ItemNo int ,FieldsXML nvarchar(max) ) INSERT INTO #Objects ( InterfaceID ,Version ,FeatureName ,ItemNo ,FieldsXML ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./FeatureName)[1]', 'varchar(100)') ,m.c.value('(./ItemNo)[1]', 'int') ,m.c.value('(./FieldsXML)[1]', 'nvarchar(max)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID varchar(10) ,@Version varchar(10) ,@FeatureName varchar(100) ,@ItemNo int ,@FieldsXML nvarchar(max) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@FeatureName = FeatureName ,@ItemNo = ItemNo ,@FieldsXML = FieldsXML FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceFeatureFields_77] @UserID ,@UserIP ,@InterfaceID ,@Version ,@FeatureName ,@ItemNo ,@FieldsXML SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetEJSCollectionInfo_78] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int SELECT @ProfNo=[dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID And [dbo].[Profile].[GroupID]=@GroupID And [dbo].[Profile].[ProfID]=@ProfID IF @ProfNo IS NULL RETURN DECLARE @CustCode varchar(50) DECLARE @UserName varchar(50) SELECT @CustCode = dbo.EAIF_GetProfileParamScalarValue_70( @ProfNo,'eonlineCustID') SELECT @UserName = dbo.EAIF_GetProfileParamScalarValue_70( @ProfNo,'eonlineUserID') --If we ever really need to add the real custID (ParentID) pl use -- SharedFrom = CASE WHEN cl.SharedFrom <> 0 THEN (select CustID From Collection where ColNo=cl.SharedFrom) -- ELSE cl.CustId END SELECT ecl.EOColID, ecl.EORemoteColID, IsSharedFrom = CASE WHEN ISNULL(cl.SharedFrom, 0) <> 0 THEN 1 ELSE 0 END FROM [dbo].[Collection] cl WITH (NOLOCK) INNER JOIN [dbo].[EOCollection] ecl WITH (NOLOCK) ON cl.CustID=ecl.EACustID AND cl.ColID=ecl.EOColID WHERE cl.Eonline=1 AND cl.CustID=@CustID AND ecl.EOCustCode = @CustCode AND ecl.EOUserName = @UserName AND cl.IsDeleted = 0 END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceCaptions_70] (@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10))AS BEGIN SELECT [dbo].[InterfaceLanguage].[InterfaceName], [dbo].[InterfaceLanguage].[HelpText], [dbo].[InterfaceLanguage].[LinkText] FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode END
--sql content merged from file: \StoredProcedures\EAIP_UserGroup_Select.sql CREATE PROCEDURE [dbo].[EAIP_UserGroup_Select] @GroupNo int = NULL, @GroupID varchar(10) = NULL, @CustID varchar(10) = NULL AS IF @GroupNo IS NOT NULL BEGIN SELECT [dbo].[UserGroup].[GroupNo], [dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[GroupNo] = @GroupNo END ELSE IF @GroupID IS NOT NULL BEGIN SELECT [dbo].[UserGroup].[GroupNo], [dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[GroupID] = @GroupID END ELSE IF @GroupNo IS NOT NULL BEGIN SELECT [dbo].[UserGroup].[GroupNo], [dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustID END
CREATE PROCEDURE [dbo].[EAUI_UpdateZ3950Vendor_70] (@UserId nvarchar(20), @UserIP varchar(15), @VendorID int, @VendorName varchar(100), @CallType varchar(50), @SearchMask varchar(100), @XSLData VARCHAR(MAX)) AS BEGIN UPDATE [dbo].[Z3950Vendors] SET [dbo].[Z3950Vendors].[VendorName]=@VendorName , [dbo].[Z3950Vendors].[CallType]=@CallType, [dbo].[Z3950Vendors].[SearchMask]=@SearchMask, [dbo].[Z3950Vendors].[XSL]=@XSLData WHERE [dbo].[Z3950Vendors].[VendorID]=@VendorID EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Z39.50 Vendors', 'Edit Vendor', @VendorID, @VendorName , @CallType, @SearchMask END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseThesaurus_70](@DbVerNo int, @SegName varchar(10), @Volume varchar(20), @ThesNumber int) AS BEGIN SELECT [dbo].[DbThesaurus].[ThesNumber], [dbo].[DbThesaurus].[Volume], [dbo].[DbThesaurus].[ThesFile], convert(int,[dbo].[DbThesaurus].[UserControlled]) AS UserControlled, convert(int,[dbo].[DbThesaurus].[StoreKWIC]) AS StoreKWIC FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName AND [dbo].[DbThesaurus].[Volume] = @Volume AND [dbo].[DbThesaurus].[ThesNumber] = @ThesNumber END
-- To be used from BLL/service components -- together with other calls to Authentication to create UidAccount and PersonalAccount -- Call to EAIP_AddCustomer_70 replaced with EAIP_AddCustomer_100 -- For CustType = I or P Only -- In calling component check for PersonalAccount should be done to make sure a record does not exist for where UserId = CustId -- transaction in TransactionScope should not complete if this procedure returns error -- A record should be created in UidAccount table where UserID = CustId, AuthPassword as 'password' and GroupId = main -- Also create the default User Rights & Permissions for Accessing Admin. in Authentication->PersonalAccount table CREATE PROCEDURE [dbo].[EAUI_AddInternalCustomer_100](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @LogStatistics char(1))AS BEGIN IF (@CustType = 'I' OR @CustType = 'P')--Internal or partner only! BEGIN EXEC [dbo].[EAIP_AddCustomer_100] @CustID, @CustName, @CustType, @MarketID, 'a', 0 IF (@@ERROR <> 0) BEGIN RETURN END IF (@LogStatistics = '1') BEGIN EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logStatistics', @LogStatistics END -- EhpmEbscoAdmin-1524 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableHoldingsManagement', 1 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableFullTextFinder', 1 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enablePublicationFinder', 1 EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Internal Customer & Partners', 'Add Internal or Partner Customer', @CustID, @CustName, @CustType, @MarketID END ELSE BEGIN RAISERROR('CustType of %s is not allowed.', 16, -1, @CustType) END END
CREATE PROCEDURE [dbo].[EAIP_GetSearchModes_244] ( @CustID VARCHAR(10) ,@GroupID VARCHAR(10) ,@ProfID VARCHAR(10) ) AS DECLARE @ProfNo INT = [dbo].[EAIF_GetProfNo_70](@CustID, @GroupID, @ProfID); IF (@ProfNo IS NULL) BEGIN SELECT @ProfNo AS ProfNo; RETURN; END DECLARE @ParamNo INT = [dbo].[EAIF_GetCustomParamNumber_70]('searchModes', 'P'); DECLARE @InterfaceID VARCHAR(10); DECLARE @Version VARCHAR(10); DECLARE @MarketID VARCHAR(20); DECLARE @ValueTemplateXML XML DECLARE @ValueTemplateItemsXML XML SELECT @InterfaceID = InterfaceID ,@Version = [Version] ,@MarketID = MarketID FROM [dbo].[Profile] WHERE ProfNo = @ProfNo; SELECT @ValueTemplateXML = ValueTemplate FROM [dbo].[CustomParamXmlFields] f WHERE f.ParamNo = @ParamNo AND FieldName = 'precisionOperator'; SELECT @ValueTemplateItemsXML = ic.items.query('.') FROM @ValueTemplateXML.nodes('/itemsCollection/items') ic(items) WHERE (',' + ic.items.value('@interfaceid', 'VARCHAR(2000)') + ',') LIKE '%,' + @InterfaceID + ',%' IF @ValueTemplateItemsXML IS NULL BEGIN SELECT @ValueTemplateItemsXML = ic.items.query('.') FROM @ValueTemplateXML.nodes('/itemsCollection/items') ic(items) WHERE ic.items.exist('@interfaceid') = 0 END SELECT items.item.value('@text', 'NVARCHAR(20)') AS [Text] ,items.item.value('@value', 'INT') AS [Value] INTO #PrecisionOperatorValueTemplate FROM @ValueTemplateItemsXML.nodes('/items/item') items(item) SELECT i.SeqNo AS id ,f.FieldName ,g.ItemID ,COALESCE(p.[Value], iv.[Value], g.[Value]) AS [Value] INTO #Params FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON i.ItemID = g.ItemID AND f.FieldNo = g.FieldNo AND f.ParamNo = g.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo = iv.ParamNo AND g.ItemID = iv.ItemID AND g.FieldNo = iv.FieldNo AND iv.InterfaceID = @InterfaceID AND iv.[Version] = @Version AND iv.MarketID = @MarketID LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] p ON p.TargetNo = @ProfNO AND p.[Level] = 'P' AND g.ParamNo = p.ParamNo AND g.ItemID = p.ItemID AND g.FieldNo = p.FieldNo WHERE f.ParamNo = @ParamNo; SELECT id ,CONVERT(BIT, Show) AS Show ,Mode ,CONVERT(BIT, DefValue) AS DefaultToSelected ,( SELECT [Text] FROM #PrecisionOperatorValueTemplate WHERE [Value] = PrecisionOperator ) AS PrecisionOperator ,CONVERT(INT, PrecisionDistance) AS PrecisionDistance FROM #Params sm PIVOT(MAX([Value]) FOR FieldName IN ( Show ,Mode ,DefValue ,PrecisionOperator ,PrecisionDistance )) p ORDER BY id; SELECT il.id ,il.LangCode AS Locale ,COALESCE(p.[Value], iv.[Value], g.[Value], '') AS Caption FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN ( SELECT id ,iul.SeqNo AS LangSeqNo ,LangCode FROM [dbo].[InterfaceUserLangList] iul CROSS JOIN ( SELECT DISTINCT id FROM #Params ) p WHERE @InterfaceID = iul.InterfaceID AND iul.Version = @Version ) il ON il.id = i.SeqNo LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] g ON f.ParamNo = g.ParamNo AND i.ItemID = g.ItemID AND f.FieldNo = g.FieldNo AND g.LangCode = il.LangCode LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON f.ParamNo = iv.ParamNo AND i.ItemID = iv.ItemID AND f.FieldNo = iv.FieldNo AND iv.InterfaceID = @InterfaceID AND iv.[Version] = @Version AND iv.MarketID = @MarketID AND iv.LangCode = il.LangCode LEFT OUTER JOIN [dbo].[CustomParamTblSMValues] p ON p.TargetNo = @ProfNO AND p.[Level] = 'P' AND f.ParamNo = p.ParamNo AND i.ItemID = p.ItemID AND f.FieldNo = p.FieldNo AND p.LangCode = il.LangCode WHERE f.ParamNo = @ParamNo AND f.FieldName = 'Caption' ORDER BY id ,LangSeqNo;
CREATE PROCEDURE [dbo].[EAUI_UpdateDatabaseVolume_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @Volume varchar(20), @EpkPath varchar(255)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Update Volume', 'Volume:', @Volume,'EpkPath:',@EpkPath UPDATE [dbo].[DbVolume] SET [dbo].[DbVolume].[EpkPath] = @EpkPath, [dbo].[DbVolume].[LastUpdateDate] = GETDATE() WHERE [dbo].[DbVolume].[DbVerNo]= @DbVerNo AND [dbo].[DbVolume].[Volume]=@Volume IF (@@ERROR <> 0) BEGIN RAISERROR('Update failed for volume %s and database %s, %s',16,-1,@Volume, @DbName, @DbLabel) RETURN END END
CREATE FUNCTION dbo.EAIF_GetInterfaceIDbyProfile_86(@ProfNO int) RETURNS varchar(255) AS BEGIN Declare @InterfaceID varchar(20) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNO RETURN @InterfaceID END
CREATE PROCEDURE [dbo].[EAUI_GetCfgApplicationListFilteredPaged_253] ( @browseField VARCHAR(25) = 'applicationid', @browseTerm NVARCHAR(255) = '', @pageIndex INT = 0, @pageSize INT = 10 ) AS BEGIN SET @browseTerm = COALESCE(@browseTerm, ''); WITH CTE AS ( SELECT [a].[ApplicationNo], [a].[ApplicationType], [m].[Description] AS 'Type', [a].[ApplicationID], [a].[Description], [a].[NotifyProtocol] FROM dbo.ConfigApplication a INNER JOIN dbo.CharValueMap m ON [a].[ApplicationType] = [m].[FieldCode] WHERE [m].[FieldName] = 'ApplicationType' AND (@browseTerm = '' OR (@browseField = 'type' AND [m].[Description] LIKE '%' + @browseTerm + '%') OR (@browseField = 'applicationid' AND [a].[ApplicationID] LIKE '%' + @browseTerm + '%') OR (@browseField = 'description' AND [a].[Description] LIKE '%' + @browseTerm + '%') ) ), PagedCte AS ( SELECT [ApplicationNo], [ApplicationType], [Type], [ApplicationID], [Description], [NotifyProtocol] FROM CTE ORDER BY CASE WHEN @browseField = 'type' THEN CTE.Type WHEN @browseField = 'description' THEN CTE.Description END , CTE.ApplicationID OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT [ApplicationNo], [ApplicationType], [Type], [ApplicationID], [Description], [NotifyProtocol], NULL AS [TotalCount] FROM PagedCte UNION ALL SELECT NULL AS [ApplicationNo], NULL AS [ApplicationType], NULL AS [Type], NULL AS [ApplicationID], NULL AS [Description], NULL AS [NotifyProtocol], COUNT(*) AS [TotalCount] FROM CTE END
CREATE PROCEDURE [dbo].[EAIP_AddCustomerGroup_154]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @GroupID nvarchar(10), @GroupType char(1), @GroupName nvarchar(100), @GroupEmail nvarchar(100)) AS BEGIN IF NOT EXISTS (SELECT 1 from [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID) BEGIN RAISERROR('The Customer %s does not exist.', 16, -1, @CustID) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID]=@GroupID) BEGIN RAISERROR('The Group ID "%s" already exists.', 16, -1, @GroupID) RETURN END INSERT INTO [dbo].[UserGroup]([dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail]) VALUES(@CustID, @GroupID, @GroupType, @GroupName, @GroupEmail) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Add Customer Group', @CustID, @GroupID END
--eacopy PROCEDURE CREATE PROCEDURE dbo.EAIP_GetCustomerEmailAddressForCopy_153(@custNo int) AS BEGIN OPEN SYMMETRIC KEY Sym_EmailAddress DECRYPTION BY CERTIFICATE Cert_EmailAddress SELECT CPV.TargetNo , CPL.ParamName , CPV.ParamLevel , CPV.CreateDate , CONVERT(nvarchar(260), DECRYPTBYKEY(CPV.EmailAddress)) AS EmailAddress , CPV.EmailHash , CPV.EmailName FROM dbo.CustomParamEmailListValues AS CPV INNER JOIN dbo.CustomParamEmailList AS CPL ON CPL.ParamNo = CPV.ParamNo INNER JOIN dbo.Customer AS C ON C.CustNo = CPV.TargetNo WHERE C.CustNo = @custNo AND CPL.ParamLevel = 'C' ORDER BY CPV.TargetNo ASC CLOSE SYMMETRIC KEY Sym_EmailAddress END
CREATE PROCEDURE [dbo].[EAUI_GetSubTopicList_77] (@TopicNo int) AS BEGIN SELECT tl.TopicNo , tl.TopicID , tl.SearchString, tc.Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE tl.ParentTopicNo = @TopicNo AND tc.LangCode = 'en' ORDER BY tc.Caption END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceDbAuthorities_85]( @UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10)) AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceDbAuthorities_85] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface DbAuthorities', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[IS_DelCustSubscription_210] ( @SubscriberID varchar(10), @CustID varchar(10), @PrdOffID varchar(20), @Mode char(1), @SubscriptionNo int = 0, @UpdateConsAdminToSiteAdmin bit OUTPUT, @UserId varchar(10) = 'opsys' ) AS BEGIN -- Wrapping procedure to avoid MSDTC issue EXEC EASUPPORT.[dbo].[IS_DelCustSubscription_100] @SubscriberID, @CustID, @PrdOffID, @Mode, @SubscriptionNo, @UpdateConsAdminToSiteAdmin OUTPUT, @UserId END
--sql content merged from file: \StoredProcedures\EAIP_CheckIfProfileIsEISEnabled_93.sql CREATE PROCEDURE [dbo].[EAIP_CheckIfProfileIsEISEnabled_93](@ProfNo int) AS BEGIN --DECLARE @EISEnabled bit -- SET @EISEnabled = 0 -- IF (SELECT COUNT(*) FROM ProfDatabase a, DbList b, Profile p -- WHERE a.ProfNo = p.ProfNo AND a.DbVerNo = b.DbVerNo -- AND b.SourceType = 'M' AND p.ProfNo=@ProfNo -- AND (a.Mode is null OR a.Mode<>'X') -- AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 )) > 0 -- SET @EISEnabled=1 --SELECT @EISEnabled SELECT dbo.EAIF_CheckIfProfileIsEISEnabled_104(@ProfNo) END
CREATE PROCEDURE [dbo].[EAIPO_GetCustomLinkItemName_70](@CustID varchar(10), @SourceItemName varchar(255)=NULL, @NewItemName varchar(255) OUTPUT ) AS BEGIN BEGIN TRY BEGIN TRAN DECLARE @CustomLinkCount VARCHAR(100) = 'customLinkCount'; SELECT TOP 1 1 FROM [dbo].[AdminState] WITH (UPDLOCK, ROWLOCK) WHERE ParamName = @CustomLinkCount; EXEC [dbo].[EAIPO_GetNewItemName_70] @CustID, @CustomLinkCount, @SourceItemName, @NewItemName OUTPUT COMMIT TRAN END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH END
CREATE Procedure [dbo].[EAUI_GetMdbAUsage_90](@MDbAId varchar(10)) AS SELECT dbl.DisplayName + N' (' + dbl.DbName + N'-' + dbl.DbLabel + N')' as Items FROM [dbo].[DBMultiDbAuthList] dbmda INNER JOIN [dbo].[DbList] dbl ON dbmda.DbVerNo = dbl.DbVerNo WHERE dbmda.MultiDbAuthID = @MDbAId SELECT il.InterfaceName + N' (' + iv.InterfaceID + N'-' + iv.Version + N')' as Items FROM [dbo].[InterfaceMultiDbAuthList] imdba INNER JOIN [dbo].[InterfaceVersion] iv ON imdba.InterfaceID = iv.InterfaceID AND imdba.Version = iv.Version INNER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version = il.Version WHERE imdba.MultiDbAuthID = @MDbAId AND il.LangCode = 'en'
CREATE TRIGGER dbo.[CustomParamScalarValuesUpdatedTrigger] ON dbo.CustomParamScalarValues AFTER UPDATE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedCustomParamScalarValues] ([TargetNo], [ParamName], [OldValue], [NewValue]) SELECT i.[TargetNo], cpl.[ParamName], d.ParamValue AS [OldValue] ,i.ParamValue AS [NewValue] FROM inserted i INNER JOIN deleted AS d ON i.TargetNo = d.TargetNo AND i.ParamLevel = d.ParamLevel AND i.ParamNo = d.ParamNo AND i.ParamValue <> d.ParamValue INNER JOIN [dbo].[CustomParamList] cpl ON i.ParamNo = cpl.ParamNo WHERE (cpl.ParamLevel = 'P' AND cpl.ParamName = 'uiStatus') INSERT INTO [dbo].[ChangedCustomers] ([CustId], [Action]) SELECT c.CustID, 'U' FROM Customer c INNER JOIN inserted i ON c.CustNo = i.TargetNo INNER JOIN [dbo].[CustomParamList] cpl ON i.ParamNo = cpl.paramno WHERE cpl.ParamLevel = 'G' and cpl.ParamName = 'defaultProfileForEbscoMobileApp' END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceKnownSearchItem_103](@UserID nvarchar(20), @UserIP varchar(10), @KnownSearchItemNo int, @Label nvarchar(255), @GhostText nvarchar(255), @LangCode varchar(10))AS BEGIN BEGIN TRY -- check if ghost text is 'empty' IF @GhostText = N'' SET @GhostText = NULL DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo] = @KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode] = @LangCode) BEGIN UPDATE [dbo].[InterfaceKnownSearchItemCaption] SET [dbo].[InterfaceKnownSearchItemCaption].[Label] = @Label, [dbo].[InterfaceKnownSearchItemCaption].[GhostText] = @GhostText WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo] = @KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode] = @LangCode SET @LogFlag ='Translate(Update) Interface Known Search Item' END ELSE BEGIN INSERT INTO [dbo].[InterfaceKnownSearchItemCaption]([dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo], [dbo].[InterfaceKnownSearchItemCaption].[LangCode], [dbo].[InterfaceKnownSearchItemCaption].[Label], [dbo].[InterfaceKnownSearchItemCaption].[GhostText]) VALUES (@KnownSearchItemNo, @LangCode, @Label, @GhostText ) SET @LogFlag ='Translate(Insert) Interface Known Search Item' END -- log the transaction EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface KnownSearchItem',@LogFlag, @KnownSearchItemNo, @LangCode, @Label COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EPCS_GetEpCustsForAtoZCust_2020]( @AtoZCustomerID int, @CustIDList varchar(max) output) AS BEGIN DECLARE @res VARCHAR(MAX) SET @res = '' DECLARE @tempCust VARCHAR(10) SET @tempCust = CAST(@AtoZCustomerID AS VARCHAR(10)) DECLARE @azcustidparamno INT SELECT @azcustidparamno = ParamNo FROM CustomParamList WHERE ParamName = 'a-zCustID' DECLARE @isepkbmasterparamno INT SELECT @isepkbmasterparamno = ParamNo FROM CustomParamList WHERE ParamName = 'isEPKBMaster' DECLARE @cust TABLE ( EPCustID VARCHAR(10) ) -- @cust represents a complete list of EPCustIDs attached to this AtoZCustomerID, excluding those customers now using EPKB INSERT INTO @cust SELECT DISTINCT c.CustId FROM Customer c JOIN Profile p ON c.CustId = p.CustId JOIN CustomParamScalarValues v ON v.ParamNo = @azcustidparamno AND v.TargetNo = p.ProfNo LEFT JOIN CustomParamScalarValues isEPKBMaster ON isEPKBMaster.ParamNo = @isepkbmasterparamno AND isEPKBMaster.TargetNo = c.CustNo WHERE v.ParamValue = @tempCust AND ISNULL(isEPKBMaster.ParamValue, '0') != '1' -- Exclude those customers that no longer use AtoZ SELECT @res = @res + EPCustID + CHAR(9) FROM @cust ORDER BY EPCustID SET @CustIDList = @res END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceClusterDetails_102](@ClustId varchar(20), @InterfaceId varchar(10), @Version varchar(10), @LangCode varchar(10)) AS BEGIN SELECT il.InterfaceName+'('+@InterfaceId+'-'+@Version+')' AS Interface, gc.ID AS ClustId, gcc.Caption, gc.Tag AS SearchTag, ISNULL(gcid.MinDisplay, gc.MinDisplay) as MinDisplay, ISNULL(gcid.MaxDisplay, gc.MaxDisplay) as MaxDisplay, ISNULL(gcid.MaxPercentageResults, gc.MaxPercentageResults) as MaxPercentageResults, CaseConversion = CASE ISNULL(gcid.CaseConversion, gc.CaseConversion) WHEN 0 THEN '0-no conversion' WHEN 1 THEN '1-Title Case' WHEN 3 THEN '3-Sentence case' END, ISNULL(gcid.Show, gc.Show) AS Show FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ID = gcc.ID AND gcc.LangCode = @LangCode INNER JOIN [dbo].[InterfaceLanguage] il ON il.InterfaceID = @InterfaceId AND il.Version = @Version AND il.LangCode = @LangCode LEFT JOIN [dbo].[GlobalClusterInterface] gci on gc.ID = gci.ClustId AND gci.InterfaceId = @InterfaceId AND gci.Version = @Version LEFT JOIN [dbo].[GlobalClusterInterfaceDetails] gcid ON gci.ClustId = gcid.ClustId AND gci.InterfaceId = gcid.InterfaceId AND gci.Version = gcid.Version WHERE (gci.ClustId = @ClustId AND gci.InterfaceId = @InterfaceId AND gci.Version = @Version) OR (gci.ClustId is null AND gc.ID = @ClustId AND gc.AutoAdd2Interfaces = 1) END
create Procedure [dbo].[EAIP_ValidateConsortiaMember_100] (@ChildID varchar(10), @CustID varchar(10)) as Begin Declare @Count int set @Count=0 if exists (Select 1 from [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@CustID AND [dbo].[CustomerGroup].[ChildID]=@ChildID) Select @Count=Count(*) from [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@CustID AND [dbo].[CustomerGroup].[ChildID]=@ChildID select @Count End
CREATE PROCEDURE [dbo].[EPC_AddDbSegFileInfo_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20), @LookupDir varchar(255), @JumpFile varchar(255), @EpgFile varchar(255), @EpdFile varchar(255), @EpiFile varchar(255), @EpuFile varchar(255), @EplFile varchar(255), @EpsFile varchar(255), @EpfFile varchar(255), @ImageServerUrl varchar(255)) AS BEGIN INSERT INTO [dbo].[DbSegFileInfo] ([dbo].[DbSegFileInfo].[DbVerNo], [dbo].[DbSegFileInfo].[SegName], [dbo].[DbSegFileInfo].[Volume], [dbo].[DbSegFileInfo].[LookupDir], [dbo].[DbSegFileInfo].[JumpFile],[dbo].[DbSegFileInfo].[EpgFile], [dbo].[DbSegFileInfo].[EpdFile], [dbo].[DbSegFileInfo].[EpiFile], [dbo].[DbSegFileInfo].[EpuFile], [dbo].[DbSegFileInfo].[EplFile], [dbo].[DbSegFileInfo].[EpsFile], [dbo].[DbSegFileInfo].[EpfFile], [dbo].[DbSegFileInfo].[ImageServerURL]) VALUES (@DbVerNo, @SegName, @Volume, @LookupDir, @JumpFile, @EpgFile, @EpdFile, @EpiFile, @EpuFile, @EplFile, @EpsFile, @EpfFile, @ImageServerUrl) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert of file information failed for database %s %s, segment %s, and volume %s',16,-1,@DbName, @DbLabel, @SegName, @Volume) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel,'Add Segment File Information', 'Segment:', @SegName, 'Volume:', @Volume END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseThesaurusList_70](@DbVerNo int, @SegName varchar(10), @Volume varchar(20)) AS BEGIN SELECT [dbo].[DbThesaurus].[Volume], [dbo].[DbThesaurus].[ThesNumber], [dbo].[DbThesaurus].[ThesFile], [dbo].[DbThesaurus].[UserControlled], [dbo].[DbThesaurus].[StoreKWIC] FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName AND [dbo].[DbThesaurus].[Volume] = @Volume ORDER BY [dbo].[DbThesaurus].[ThesNumber] END
CREATE PROCEDURE [dbo].[EAUI_AddInternalCustomer_151](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @LogStatistics char(1), @EnableUsageConsolidation char(1))AS BEGIN IF (@CustType = 'I' OR @CustType = 'P')--Internal or partner only! BEGIN EXEC [dbo].[EAIP_AddCustomer_100] @CustID, @CustName, @CustType, @MarketID, 'a', 0 IF (@@ERROR <> 0) BEGIN RETURN END IF (@LogStatistics = '1') BEGIN EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logStatistics', @LogStatistics END IF (@EnableUsageConsolidation = '1') BEGIN EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableUsageConsolidation', @EnableUsageConsolidation END -- EhpmEbscoAdmin-1524 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableHoldingsManagement', 1 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableFullTextFinder', 1 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enablePublicationFinder', 1 EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Internal Customer & Partners', 'Add Internal or Partner Customer', @CustID, @CustName, @CustType, @MarketID END ELSE BEGIN RAISERROR('CustType of %s is not allowed.', 16, -1, @CustType) END END
-- note SearchTagNo is not included because it is an identity field local -- to the Server/Database and cannot be copied to the target CREATE PROCEDURE [dbo].[EAIP_GetSearchTagFallbackDefaults_102] AS BEGIN SELECT [dbo].[SearchTagFallbackDefaults].[SearchTag], CAST([dbo].[SearchTagFallbackDefaults].[SeqNo] as INT) as SeqNo, [dbo].[SearchTagFallbackDefaults].[Description], [dbo].[SearchTagFallbackDefaults].[FallBackBehavior] FROM [dbo].[SearchTagFallbackDefaults] ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbBrowseOption_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @OptionNo int, @OptionType varchar(1), @SearchString varchar(255), @TargetDb varchar(10), @SourceType varchar(100), @TabImage varchar (255), @SubsetID varchar(20), @ViewID varchar(20), @OptionCaption nvarchar(255), @ResultCaption nvarchar(255), @Description nvarchar(max), @Lang varchar(10), @IsHeading int) AS BEGIN DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[BrowseOptionList].[BrowseOptionId] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionNo]=@OptionNo IF @SearchString='' SELECT @SearchString =null IF @TargetDb='' SELECT @TargetDb=null IF @SourceType='' SELECT @SourceType=null IF @TabImage='' SELECT @TabImage=null IF @SubsetID='' SELECT @SubsetID=null IF @ViewID='' SELECT @ViewID=null IF @ResultCaption=N'' SELECT @ResultCaption =null IF @Description=N'' SELECT @Description=null IF @SourceType IS NOT NULL AND NOT EXISTS( SELECT 1 FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[DbDocType] ddt ON dtl.DocTypeNo =ddt.DocTypeNo WHERE ddt.DbVerNo = @DbVerNo AND dtl.DocTypeID = @SourceType ) BEGIN RAISERROR ('Document Type ID "%s" passed as a Source Type does not exist or is not attached to the database.',16,1, @SourceType) RETURN END BEGIN TRANSACTION Update [dbo].[DbBrowseOption] Set [dbo].[DbBrowseOption].[OptionType]=@OptionType,[dbo].[DbBrowseOption].[SearchString]=@SearchString, [dbo].[DbBrowseOption].[TargetDb]=@TargetDb,[dbo].[DbBrowseOption].[SourceType]=@SourceType,[dbo].[DbBrowseOption].[TabImage]=@TabImage, [dbo].[DbBrowseOption].[AuthoritySubset]=@SubsetID,[dbo].[DbBrowseOption].[AuthorityView]=@ViewID,[dbo].[DbBrowseOption].[IsHeading]=@IsHeading WHERE [dbo].[DbBrowseOption].[DbVerNo]=@DbVerNo AND [dbo].[DbBrowseOption].[BrowseOptionNo]=@OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[DbBrowseOptionCaption] WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbBrowseOptionCaption].[BrowseOptionNo]=@OptionNo AND [dbo].[DbBrowseOptionCaption].[LangCode]=@Lang) UPDATE [dbo].[DbBrowseOptionCaption] SET [dbo].[DbBrowseOptionCaption].[OptionCaption]=@OptionCaption,[dbo].[DbBrowseOptionCaption].[ResultCaption]=@ResultCaption,[dbo].[DbBrowseOptionCaption].[Description]=@Description WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbBrowseOptionCaption].[BrowseOptionNo]=@OptionNo AND [dbo].[DbBrowseOptionCaption].[LangCode]=@Lang ELSE INSERT INTO [dbo].[DbBrowseOptionCaption] ([dbo].[DbBrowseOptionCaption].[DbVerNo],[dbo].[DbBrowseOptionCaption].[BrowseOptionNo],[dbo].[DbBrowseOptionCaption].[LangCode],[dbo].[DbBrowseOptionCaption].[OptionCaption],[dbo].[DbBrowseOptionCaption].[ResultCaption],[dbo].[DbBrowseOptionCaption].[Description] ) VALUES (@DbVerNo,@OptionNo,@Lang,@OptionCaption,@ResultCaption,@Description) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'BrowseOptions', 'Update DbBrowse Option', @DbName, @DbLabel, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetInterfaceLimiterGroups_76(@IntfScreenNo int) RETURNS varchar(8000) AS BEGIN DECLARE @groups varchar(8000) SET @groups='' SELECT @groups = @groups + ' ' RETURN @groups END' FROM [dbo].[InterfaceLimiterGroup] a WHERE a.IntfScreenNo=@IntfScreenNo SET @groups= @groups+'
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppParam_70](@ParamNo int) AS BEGIN SELECT [p].[ParamName], Description=ISNULL([d].[PromptText], ''), [p].[ParamType], EditControl = ISNULL( [d].[EditControl], (CASE [p].[ParamType] WHEN 'X' THEN 'Link' ELSE 'TextBox' END ) ), [d].[ValueTemplate], ParamValue = ISNULL(convert(nvarchar(max),x.ParamValue),convert(nvarchar(2000),s.ParamValue)) FROM (([dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON p.ParamNo = d.ParamNo) LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] s ON s.TargetNo = p.ApplicationNo AND s.ParamNo = p.ParamNo AND s.ParamLevel = 'A') LEFT OUTER JOIN [dbo].[ConfigParamXmlValues] x ON x.TargetNo = p.ApplicationNo AND x.ParamNo = p.ParamNo AND x.ParamLevel = 'A' WHERE p.ParamNo = @ParamNo END
CREATE procedure [dbo].[EAIP_AddCustomParam_91] @UserId nvarchar(20), @UserIp varchar(30), @ParamLevel char(1), @ParamName varchar(100), @ParamType char(1), @WebClient bit, @WinClient bit, @CharClient bit, @Z3950Client bit, @DefValue nvarchar(2000) = null, @ParentParamNo smallint = null, @AllowDefaultUpdate bit, @DefValuePrefix nvarchar(255) = null as Declare @ParentNo int if @ParentParamNo=0 set @ParentNo=null else set @ParentNo=@ParentParamNo if exists (Select 1 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName) Begin RAISERROR('The CustomParameter (%s) already exists in CustomParamList', 16, -1, @ParamName) RETURN End Begin Try begin transaction Insert [dbo].[CustomParamList] ([dbo].[CustomParamList].[ParamLevel], [dbo].[CustomParamList].[ParamName], [dbo].[CustomParamList].[ParamType], [dbo].[CustomParamList].[WebClient], [dbo].[CustomParamList].[WinClient], [dbo].[CustomParamList].[CharClient], [dbo].[CustomParamList].[Z3950Client], [dbo].[CustomParamList].[DefValue], [dbo].[CustomParamList].[ParentParamNo], [dbo].[CustomParamList].[AllowDefaultUpdate], [dbo].[CustomParamList].[DefValuePrefix]) Values (@ParamLevel, @ParamName, @ParamType, @WebClient, @WinClient, @CharClient, @Z3950Client, @DefValue, @ParentNo, @AllowDefaultUpdate, @DefValuePrefix) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'CustomParameter', 'Add CustomParameter', @ParamName, @DefValue commit transaction End Try Begin Catch rollback transaction End Catch
--sql content merged from file: \StoredProcedures\EAIP_GetCustomerAddresses_99.sql CREATE PROCEDURE dbo.EAIP_GetCustomerEmailAddressList_153 ( @custId varchar(10) , @listName varchar(255) ) AS BEGIN OPEN SYMMETRIC KEY Sym_EmailAddress DECRYPTION BY CERTIFICATE Cert_EmailAddress SELECT CONVERT(nvarchar(260), DECRYPTBYKEY(CPV.EmailAddress)) AS EmailAddress FROM dbo.CustomParamEmailListValues AS CPV INNER JOIN dbo.CustomParamEmailList AS CPL ON CPL.ParamNo = CPV.ParamNo INNER JOIN dbo.Customer AS C ON C.CustNo = CPV.TargetNo WHERE C.CustID = @custId AND CPL.ParamName = @listName AND CPL.ParamLevel = 'C' ORDER BY EmailAddress ASC CLOSE SYMMETRIC KEY Sym_EmailAddress END
CREATE PROCEDURE [dbo].[EAUI_GetSubtopicsToAttach_77] ( @DbVerNo int, @TopicNo int )AS BEGIN SELECT tl.TopicNo , tc.Caption+'('+tl.TopicID+')' AS Caption FROM [dbo].[TopicList] tl LEFT OUTER JOIN [dbo].[DbTopic] dt ON dt.TopicNo = tl.TopicNo AND dt.DbVerNo = @DbVerNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE tl.ParentTopicNo = @TopicNo AND tc.LangCode = 'en' AND dt.TopicNo is null ORDER BY Caption END
Create Procedure [dbo].[EAUI_CopyInterfaceDbFeaturesByCategory_103](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10), @Category varchar(20)) as Begin EXEC [dbo].[EAIP_CopyInterfaceDbFeaturesByCategory_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo, @Category IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Db Features', @SourceIntf, @TargetIntf End
CREATE PROCEDURE [dbo].[NOV_GetCommunityURL](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetConfigApplicationParamScalarValue_70('webauth', 'authGenericWebSite')+'community.aspx' END
CREATE PROCEDURE [dbo].[EAIP_CheckPendingSystemLinkUpdateRequests_171](@SystemCustomLinkId VARCHAR(255)) AS BEGIN IF EXISTS (SELECT 1 FROM dbo.SystemLinkUpdateStatus WHERE [dbo].[SystemLinkUpdateStatus].[SystemLinkID]=@SystemCustomLinkId AND [dbo].[SystemLinkUpdateStatus].[UpdateStatus] IN ('S', 'I')) SELECT 'true' AS PendingLinkUpdateExists ELSE SELECT 'false' AS PendingLinkUpdateExists END
CREATE PROCEDURE [dbo].[EAUI_CopyProfile_104]( @UserID nvarchar(20), @UserIP varchar(15), @SrcCustID varchar(10), @SrcGroupID nvarchar(10), @SrcProfID varchar(10), @DstCustID varchar(10), @DstGroupID nvarchar(10), @DstProfID varchar(10), @ParamNumbers varchar(8000), @SubParamNumbers varchar(8000), @SubParamValues varchar(8000), @SelectedDbs varchar(max), @SelectedDbGroups varchar(max), @SelectedWidgets nvarchar(max), @SelectedToolbars nvarchar(max) ) AS BEGIN DECLARE @SrcProfile varchar(32), @DestProfile varchar(32) SELECT @SrcProfile = @SrcCustID + '.' + @SrcGroupID + '.' + @SrcProfID, @DestProfile = @DstCustID + '.' + @DstGroupID + '.' + @DstProfID EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Copy Profile', @SrcProfile, @DestProfile EXEC [dbo].[EAIP_CopyProfile_104] @SrcCustID, @SrcGroupID, @SrcProfID, @DstCustID, @DstGroupID, @DstProfID,@ParamNumbers,@SubParamNumbers,@SubParamValues, @SelectedDbs, @SelectedDbGroups, @SelectedWidgets, @SelectedToolbars END
CREATE Procedure [dbo].[EAUI_GetMdbAUsage2_90] @MDbAId varchar(10) as Select a.MultiDbAuthID, [a].[DbName], [Database], [b].[Interface] from (Select [dbmdbl].[MultiDbAuthID], [dbl].[DbName], [dbl].[DisplayName] + N' (' + [dbl].[DbName] + N'-' + [dbl].[DbLabel] + N')' as [Database] from [dbo].[DBMultiDbAuthList] dbmdbl Join [dbo].[DbList] dbl on dbmdbl.DbVerNo=dbl.DbVerNo WHERE dbmdbl.MultiDbAuthID = @MDbAId) a Join [dbo].[EAIF_GetMDbAuthInterfaceList_90](@MDbAId) b on a.MultiDbAuthID=b.MultiDbAuthID order by [a].[DbName], [b].[Interface]
CREATE TRIGGER [dbo].[TRIG_InsertDbList] ON dbo.DbList FOR INSERT AS BEGIN INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault],[dbo].[ProfDatabase].[CustomLimiter],[dbo].[ProfDatabase].[CtrlCustID]) SELECT [a].[ProfNo], [b].[DbVerNo], 1, 1, 0,0,null FROM [dbo].[Profile] AS a CROSS JOIN inserted AS b WHERE a.CustID='system' AND a.GroupID='main' AND a.ProfID='ehost' AND b.DbType=1 and b.DbLabel='live' END
CREATE PROCEDURE EATL_UpdateInterfaceKnownSearchItem_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,KnownSearchItemNo INT ,Label NVARCHAR(255) ,GhostText NVARCHAR(255) ) INSERT INTO #Objects ( KnownSearchItemNo ,Label ,GhostText ) SELECT m.c.value('(./KnownSearchItemNo)[1]', 'int') ,m.c.value('(./Label)[1]', 'nvarchar(255)') ,m.c.value('(./GhostText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@KnownSearchItemNo INT ,@Label NVARCHAR(255) ,@GhostText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @KnownSearchItemNo = KnownSearchItemNo ,@Label = Label ,@GhostText = GhostText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceKnownSearchItem_103] @UserID ,@UserIP ,@KnownSearchItemNo ,@Label ,@GhostText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetEplDbSegments_70](@CustID varchar(10), @Label varchar(20)) AS BEGIN SELECT DISTINCT ms.DbName, s.SegName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON p.ProfNo=d.ProfNo INNER JOIN [dbo].[DbList] ms ON d.DbVerNo=ms.DbVerNo INNER JOIN [dbo].[DbSegment] s ON ms.DbVerNo=s.DbVerNo WHERE p.CustID=@CustID AND p.DbLabel=@Label AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) AND ms.DbType=1 ORDER BY ms.DbName, [s].[SegName] END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceClusterListByCaption_102](@InterfaceID varchar(10), @Version varchar(10), @Caption nvarchar(255) = '', @LangCode varchar(10) = 'en')AS BEGIN SELECT gc.ID as ClustId, gcc.Caption, ISNULL(gcid.MinDisplay, gc.MinDisplay) as MinDisplay, ISNULL(gcid.MaxDisplay, gc.MaxDisplay) as MaxDisplay, ISNULL(gcid.MaxPercentageResults, gc.MaxPercentageResults) as MaxPercentageResults, gc.AutoAdd2Interfaces, CaseConversion = CASE ISNULL(gcid.CaseConversion, gc.CaseConversion) WHEN 0 THEN '0-no conversion' WHEN 1 THEN '1-Title Case' WHEN 3 THEN '3-Sentence case' END, Show = CASE ISNULL(gcid.Show, gc.Show) WHEN 1 THEN 'On' ELSE 'Off' END FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ID = gcc.ID AND gcc.LangCode = @LangCode LEFT JOIN [dbo].[GlobalClusterInterface] gci on gc.ID = gci.ClustId AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT JOIN [dbo].[GlobalClusterInterfaceDetails] gcid ON gci.ClustId = gcid.ClustId AND gci.InterfaceId = gcid.InterfaceId AND gci.Version = gcid.Version WHERE ((gci.InterfaceId = @InterfaceId AND gci.Version = @Version) OR (gci.ClustId is null AND gc.AutoAdd2Interfaces = 1)) AND [gcc].[Caption] >= @Caption ORDER BY [gcc].[Caption] END
CREATE PROCEDURE [dbo].[EAIP_ValidateDabatasesWithCustomizer_88](@FeatureNo Int, @UserID nvarchar(20), @UserIP varchar(15)) AS BEGIN SET NOCOUNT ON DECLARE @CustomizerTags TABLE (Tag varchar(20)) DECLARE @DatabasesDisabled TABLE (DbVerNo Int) INSERT INTO @CustomizerTags (Tag) SELECT FieldValueXml.query('fields/field[@name="Tag"]').value('.', 'varchar(20)') FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo] = @FeatureNo AND [dbo].[FeatureValues].[ItemNo] > 0 -- find and delete customizers from database with no appropriate tags DELETE FROM [dbo].[DbFeature] OUTPUT deleted.DbVerNo INTO @DatabasesDisabled FROM [dbo].[DbFeature] df WHERE [df].[FeatureNo] = @FeatureNo AND NOT EXISTS(SELECT TOP 1 ft.FieldTag FROM [dbo].[DbFieldTag] ft INNER JOIN @CustomizerTags ct ON ft.FieldTag = ct.Tag WHERE ft.DbVerNo = df.DbVerNo) INSERT INTO EASUPPORT.dbo.ActivityLog([EASUPPORT].[dbo].[ActivityLog].[UserID], [EASUPPORT].[dbo].[ActivityLog].[IPAddress], [EASUPPORT].[dbo].[ActivityLog].[LogTime], [EASUPPORT].[dbo].[ActivityLog].[Category], [EASUPPORT].[dbo].[ActivityLog].[Activity], [EASUPPORT].[dbo].[ActivityLog].[Param1], [EASUPPORT].[dbo].[ActivityLog].[Param2], [EASUPPORT].[dbo].[ActivityLog].[Param3], [EASUPPORT].[dbo].[ActivityLog].[Param4]) SELECT @UserID, @UserIP, getdate(), 'Database', 'Customizer check', DbName, DbLabel, CAST(@FeatureNo AS Varchar(20)), 'Customizer "' + fl.FeatureName + '" was disabled' FROM @DatabasesDisabled dd INNER JOIN [dbo].[DbList] dl ON dd.DbVerNo = dl.DbVerNo INNER JOIN [dbo].[FeatureList] fl ON fl.FeatureNo = @FeatureNo END
CREATE PROCEDURE [dbo].[EPC_DeleteDbBibMaps_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10)) AS BEGIN --Clean DbBibMaps EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Delete this.SegName DbBibMaps', 'Segment:', @SegName DELETE FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo]=@DbVerNo AND [dbo].[DbBibMap].[SegName]=@SegName END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseTopicList_77] (@DbVerNo int)AS BEGIN SELECT distinct ptl.TopicNo AS TopicNo, tc.Caption FROM [dbo].[DbTopic] dt INNER JOIN [dbo].[TopicList] tl ON dt.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo = ptl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON ptl.TopicNo = tc.TopicNo WHERE dt.DbVerNo = @DbVerNo AND tc.LangCode='en' ORDER BY tc.Caption END
--sql content merged from file: \StoredProcedures\EAUI_AddModifyDbDescriptions_92.sql CREATE PROCEDURE [dbo].[EAUI_AddModifyDbDescriptions_92] ( @DbVerNo int, @DbResourceType nvarchar (100), @DbShortDescription nvarchar(max), @DbLongDescription nvarchar(max), @Lang varchar(10), @UserId nvarchar(20), @UserIp varchar(15) ) AS BEGIN TRY BEGIN TRANSACTION EXEC [dbo].[EAIP_AddModifyDbDescriptions_92] @DbVerNo,@DbResourceType,@DbShortDescription,@DbLongDescription,@Lang DECLARE @DbName varchar (10) SELECT @DbName=dbo.EAIF_GetDbName_70(@DbVerNo) IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, '', 'AddModifyDbDescriptions', @DbName, @DbResourceType,@Lang END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE PROCEDURE [dbo].[EAIP_GetSearchThemesList_83] AS BEGIN SELECT st.ThemeID, ISNULL(st.SearchString,'') SearchString, ISNULL(st.Image, '') Image, ISNULL(st.ParentThemeID,'') ParentThemeID, ISNULL(dbo.EAIF_SearchThemeLangAndCaptions_83(st.ThemeID),'') as Captions, ISNULL(dbo.EAIF_SearchThemeLangAndImgAltTexts_83(st.ThemeID),'') as ImageAltTexts, ISNULL(st.CustomAttributes,'') CustomAttributes, ISNULL(dbo.EAIF_SearchThemeLangAndDescription_88(st.ThemeID),'') as Descriptions FROM [dbo].[SearchTheme] st WITH (NOLOCK) INNER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.ThemeID=sc.ThemeID WHERE sc.LangCode='en' END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbClusterDetails_102](@UserId varchar(20), @UserIP varchar(15), @ClustId varchar(20), @DbName varchar(10), @DbLabel varchar(10), @DbSearchTag nvarchar(5)) AS BEGIN -- check if the DbSearchTag is the same as the global search tag, if so set it to NULL DECLARE @GlobalSearchTag VARCHAR(20) SELECT @GlobalSearchTag = [dbo].[GlobalCluster].[Tag] FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @ClustId IF ((@DbSearchTag = @GlobalSearchTag) OR (LEN(@DbSearchTag) = 0)) BEGIN SET @DbSearchTag = NULL END -- get the primary key values for the DbCluster table -- for db info, leave DbLabel as is DECLARE @DbVerNo INT SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel -- when dealing with cluster info -- set DbLabel to 'custom' if it's not one of the 4 defined ones IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' -- get the cluster number and the auto add to db value DECLARE @ClustNo INT DECLARE @AutoAdd2Db BIT SELECT @ClustNo = [dbo].[ClusterList].[ClustNo], @AutoAdd2Db = [dbo].[ClusterList].[AutoAdd2Db] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClustId AND [dbo].[ClusterList].[DbLabel] = @DbLabel -- check to see if an entry already exists for this DbVerNo, ClustNo combination IF EXISTS (SELECT 1 FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClustNo) BEGIN -- if the row is already there and the DbSearchTag is null (i.e. it matches the global search tag) -- then delete the row IF (@DbSearchTag IS NULL AND @AutoAdd2Db = 1) BEGIN DELETE FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClustNo END ELSE BEGIN UPDATE [dbo].[DbCluster] SET [dbo].[DbCluster].[DbSearchTag] = @DbSearchTag WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClustNo END END ELSE BEGIN INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag]) VALUES (@DbVerNo, @ClustNo, 1, @DbSearchTag) END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIP, @DbName, @DbLabel, @ClustId, 'Update DbSearchTag:', @DbSearchTag END
CREATE FUNCTION dbo.EAIF_GetInterfaceListForDefaultLang_81(@LangCode varchar(10)) RETURNS varchar(8000) AS BEGIN DECLARE @IntList varchar(8000) SET @IntList='' DECLARE @Count int SELECT TOP 15 @IntList=@IntList+[dbo].[InterfaceVersion].[InterfaceID]+'-'+[dbo].[InterfaceVersion].[Version]+', 'from [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefLangCode]=@LangCode AND [dbo].[InterfaceVersion].[InterfaceID]<>'all' ORDER BY [dbo].[InterfaceVersion].[InterfaceID] SELECT @Count =count(*) from [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[DefLangCode]=@LangCode AND [dbo].[InterfaceVersion].[InterfaceID]<>'all' IF @Count>0 SET @IntList=SUBSTRING(@IntList,1,LEN(@IntList)-1) IF @Count>15 SET @IntList=@IntList+'...' RETURN @IntList END
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppParamByName_82](@ApplicationID varchar(10),@ParamName varchar(50)) AS BEGIN DECLARE @ApplicationNo int DECLARE @ParamNo int DECLARE @RetValue varchar(2000) SELECT @ApplicationNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID SET @ParamNo = dbo.EAIF_GetConfigParamNumber_70(@ApplicationNo,@ParamName) SELECT [dbo].[ConfigParamScalarValues].[ParamValue] FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[TargetNo]=@ApplicationNo AND [dbo].[ConfigParamScalarValues].[ParamLevel]='A' AND [dbo].[ConfigParamScalarValues].[ParamNo]=@ParamNo END
CREATE procedure [dbo].[EAIP_AddCustomParamTblGlobalDefaultSMValue_91] @UserId nvarchar(20), @UserIp varchar(30), @ParamNo smallint, @ItemID varchar(10), @FieldNo int, @LangCode varchar(10), @Value nvarchar(255) as if exists (select 1 from [dbo].[CustomParamTblGlobalDefaultSMValues] where [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID]=@ItemID and [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo]=@FieldNo and [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode]=@LangCode) Begin RAISERROR('The Value (%d) already exists for ParamNo (%d), ItemID (%s), FieldNo (%s), LangCode (%s) in CustomParamTblGlobalDefaultSMValues' , 16, -1, @ParamNo, @ItemID, @FieldNo, @LangCode) Return End Begin Try Begin Transaction Insert [dbo].[CustomParamTblGlobalDefaultSMValues] ([dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID], [dbo].[CustomParamTblGlobalDefaultSMValues].[FieldNo], [dbo].[CustomParamTblGlobalDefaultSMValues].[LangCode], [dbo].[CustomParamTblGlobalDefaultSMValues].[Value]) Values (@ParamNo, @ItemID, @FieldNo, @LangCode, @Value) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'CustomParamTblGlobalDefaultSMValues', 'Add CustomParamTblGlobalDefaultSMValue', @ParamNo, @FieldNo, @ItemID, @Value Commit Transaction End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetCustomerGroupDetails_154] ( @CustId VARCHAR(10), @GroupId VARCHAR(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustId) BEGIN RAISERROR('The Customer %s does not exist.', 16, -1, @CustId) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustId AND [dbo].[UserGroup].[GroupID] = @GroupId) BEGIN RAISERROR('The Group %s does not exist.', 16, -1, @GroupId) RETURN END DECLARE @ParamNo INT DECLARE @DefValue VARCHAR(4000) DECLARE @tempTable table (CustID VARCHAR(10), GroupID VARCHAR(10), PersonalizationEnabledProfileCount int) INSERT @tempTable SELECT ug.CustID, ug.GroupID, SUM(CONVERT(int, ISNULL(iv.AllowPersonalization, 0))) FROM [dbo].[UserGroup] ug LEFT OUTER JOIN [dbo].[Profile] p ON ug.CustID=p.CustID and ug.GroupID=p.GroupID LEFT OUTER JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 WHERE ug.CustID=@CustID and ug.GroupID=@GroupId GROUP BY ug.CustID, ug.GroupID SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' SELECT c.CustID, ug.GroupID, GroupType, GroupName, GroupEmail, ISNULL(ISNULL(ParamValue, DefValue),@DefValue) AS AllowPersonalization, t.PersonalizationEnabledProfileCount FROM [dbo].[Customer] c JOIN [dbo].[UserGroup] ug ON c.CustID=ug.CustID JOIN @tempTable t ON ug.CustID=t.CustID and ug.GroupID=t.GroupID LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' LEFT OUTER JOIN [dbo].[CustomParamDefaults] dval ON val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70(CustType) WHERE c.CustID = @CustID ORDER BY GroupName END
CREATE PROCEDURE [dbo].[EAUI_GetSystemCollection_70](@ColNo int) AS BEGIN SELECT [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], [dbo].[Collection].[EPFullText], [dbo].[Collection].[CustomLink], [dbo].[Collection].[SmartLink], Category = ISNULL([dbo].[Collection].[Category], 'other') FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='system' AND [dbo].[Collection].[ColNo]=@ColNo and [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceDocTypes_81] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceDocTypes_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface DocTypes', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[PES_CleanLoadTable] AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[FieldGroupList]) BEGIN DELETE FROM [dbo].[FieldGroupList] DBCC CHECKIDENT (FieldGroupList, RESEED, 0) END IF EXISTS (SELECT 1 FROM [dbo].[FieldElementList]) BEGIN DELETE FROM [dbo].[FieldElementList] DBCC CHECKIDENT (FieldElementList, RESEED, 0) END END
--sql content merged from file: \StoredProcedures\EAIP_CkeckIfShowProfileLimitersDatabaseList_97.sql Create Procedure [dbo].[EAIP_CkeckIfShowProfileLimitersDatabaseList_97](@profNo int) as Begin Declare @ShowProfileLimitersDbList bit Select @ShowProfileLimitersDbList=isnull(cpd.DefValue, cpl.DefValue) from [dbo].[CustomParamDefaults] cpd join [dbo].[Profile] p on cpd.InterfaceID=p.InterfaceID and cpd.Version=p.Version and cpd.MarketID=p.MarketID and cpd.STMode=p.STMode join [dbo].[CustomParamList] cpl on cpd.ParamNo=cpl.ParamNo where P.ProfNo=@profNo and cpl.ParamName='showProfileLimitersDatabaseList' If @ShowProfileLimitersDbList is null set @ShowProfileLimitersDbList=1 Select @ShowProfileLimitersDbList End
CREATE PROCEDURE [dbo].[EAUI_GetCustomerBranding_70](@CustID varchar(10), @ItemName varchar(255) ) AS BEGIN EXEC [dbo].[EAUI_GetCustomerParamXmlValue_70] @CustID,'customerBranding', @ItemName END
CREATE Procedure [dbo].[EAUI_GetMDbAuthorityDetails_90](@MDbAID varchar(10), @LangCode varchar(50)) AS SET NOCOUNT ON SELECT [mdbal].[Description], [mdbac].[LinkText] Caption, [mdbac].[MouseOverText] FROM [dbo].[MultiDbAuthList] mdbal LEFT JOIN [dbo].[MultiDbAuthCaption] mdbac ON mdbal.MultiDbAuthID = mdbac.MultiDbAuthID AND mdbac.LangCode = @LangCode WHERE mdbal.MultiDbAuthID = @MDbAID SELECT [dbo].[MultiDbAuthContentTypes].[ContentType] FROM [dbo].[MultiDbAuthContentTypes] WHERE [dbo].[MultiDbAuthContentTypes].[MultiDbAuthID] = @MDbAID
CREATE TRIGGER [dbo].[ProfDatabaseDeletedTrigger] ON [dbo].[ProfDatabase] AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedProfDatabase] (ProfNo) SELECT ProfNo FROM deleted; END
CREATE Procedure [dbo].[EATL_UpdateInterfaceMDbAuthority_90](@UserID nvarchar(20), @UserIP varchar(15), @MultiDbAuthId varchar(10), @InterfaceID varchar(10), @Version varchar(10), @LinkText nvarchar(255), @MouseOverText nvarchar(255), @Lang varchar(10))AS BEGIN SET NOCOUNT ON; DECLARE @LogFlag varchar(100) IF Exists(SELECT 1 FROM [dbo].[InterfaceMultiDbAuthList] WHERE [dbo].[InterfaceMultiDbAuthList].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceMultiDbAuthList].[Version] = @Version AND [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID] = @MultiDbAuthId) BEGIN IF Exists (SELECT 1 FROM [dbo].[MultiDbAuthInterfaceCaption] WHERE [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceID AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @Version AND [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MultiDbAuthId AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @Lang) BEGIN UPDATE [dbo].[MultiDbAuthInterfaceCaption] SET [dbo].[MultiDbAuthInterfaceCaption].[LinkText] = @LinkText, [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceID AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @Version AND [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MultiDbAuthId AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @Lang; SELECT @LogFlag ='Translate(Update) Interface MultiDb Authority' END ELSE BEGIN INSERT INTO [dbo].[MultiDbAuthInterfaceCaption] ([dbo].[MultiDbAuthInterfaceCaption].[InterfaceID], [dbo].[MultiDbAuthInterfaceCaption].[Version], [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId], [dbo].[MultiDbAuthInterfaceCaption].[LangCode], [dbo].[MultiDbAuthInterfaceCaption].[LinkText], [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText]) VALUES(@InterfaceID, @Version, @MultiDbAuthId, @Lang, @LinkText, @MouseOverText) SELECT @LogFlag ='Translate(Insert) Interface MultiDb Authority' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @MultiDbAuthId, @LogFlag, 'Lang:', @Lang, 'LinkText:', @LinkText, 'MouseOverText:', @MouseOverText END END
CREATE PROCEDURE [dbo].[EPCS_GetEplLocalTitles_70](@CustId varchar(10), @CollId nvarchar(50) , @InputLastUpdateDateStr varchar(17)=null ) AS BEGIN DECLARE @ColNo int, @LastUpdateDate datetime, @InputLastUpdateDate DateTime SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END), /* 112--YYYYMMDD, 108--HH:MM:SS(24hr) */ @LastUpdateDate= [dbo].[Collection].[LastUpdateDate] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustId AND [dbo].[Collection].[ColID]=@CollId AND [dbo].[Collection].[IsDeleted] = 0 IF @InputLastUpdateDateStr is not null SELECT @InputLastUpdateDate = dbo.EAIF_EplStringToDateTime( @InputLastUpdateDateStr ) ELSE SELECT @InputLastUpdateDate = @LastUpdateDate IF @LastUpdateDate < @InputLastUpdateDate SELECT 0 as Status, ISNULL(dbo.EAIF_EplDateTimeToString(@LastUpdateDate),'19000101 00:00:00') as LastUpdateDate ELSE BEGIN SELECT 1 as Status, ISNULL(dbo.EAIF_EplDateTimeToString(@LastUpdateDate),'19000101 00:00:00') as LastUpdateDate SELECT m.ISSN, Dates = STUFF(CAST(( SELECT N'|' + ld.[FromDate] + '-' + ISNULL(ld.[ToDate], '99999999') FROM [dbo].[LocalDate] AS ld WHERE ld.[ColNo] = l.ColNo AND ld.[TitleNo] = l.TitleNo ORDER BY ld.[FromDate] FOR XML PATH(N''), TYPE) as nvarchar(2000)), 1, 1, N'') FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON l.ColNo = @ColNo AND l.TitleNo = m.TitleNo WHERE m.ISSN IS NOT NULL AND DATALENGTH(m.ISSN) > 0 ORDER BY m.ISSN END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceClusterListByClustID_102](@InterfaceID varchar(10),@Version varchar(10), @ClustID varchar(20) = '', @LangCode varchar(10) = 'en')AS BEGIN SELECT gc.ID as ClustId, gcc.Caption, ISNULL(gcid.MinDisplay, gc.MinDisplay) as MinDisplay, ISNULL(gcid.MaxDisplay, gc.MaxDisplay) as MaxDisplay, ISNULL(gcid.MaxPercentageResults, gc.MaxPercentageResults) as MaxPercentageResults, gc.AutoAdd2Interfaces, CaseConversion = CASE ISNULL(gcid.CaseConversion, gc.CaseConversion) WHEN 0 THEN '0-no conversion' WHEN 1 THEN '1-Title Case' WHEN 3 THEN '3-Sentence case' END, Show = CASE ISNULL(gcid.Show, gc.Show) WHEN 1 THEN 'On' ELSE 'Off' END FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ID = gcc.ID AND gcc.LangCode = @LangCode LEFT JOIN [dbo].[GlobalClusterInterface] gci on gc.ID = gci.ClustId AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT JOIN [dbo].[GlobalClusterInterfaceDetails] gcid ON gci.ClustId = gcid.ClustId AND gci.InterfaceId = gcid.InterfaceId AND gci.Version = gcid.Version WHERE ((gci.InterfaceId = @InterfaceId AND gci.Version = @Version) OR (gci.ClustId is null AND gc.AutoAdd2Interfaces = 1)) AND gc.ID >= @ClustID ORDER BY ClustId END
create Procedure [dbo].[EAIP_ValidateGroup_100](@CustID varchar(10), @GroupID varchar(10)) as Begin Declare @Count int set @Count=0 if exists (Select 1 from [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID]=@GroupID) Select @Count=Count(*) from [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID]=@GroupID select @Count End
CREATE PROCEDURE [dbo].[EPC_DeleteDbFieldTags_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10)) AS BEGIN --Clean DbFieldTags EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Delete this.SegName DbFieldTags', 'Segment:', @SegName, 'DDSUpdate' DELETE FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName END
CREATE PROC [dbo].[EAUI_GetDatabaseTypeCategory_70] (@DbDescription varchar(50)) as BEGIN SELECT d.DbType, d.Category FROM [dbo].[DbTypeList] d WHERE d.Description = @DbDescription END
CREATE Procedure [dbo].[EAUI_AddModifyDbParam_104] (@UserID nvarchar(20), @UserIP varchar(15), @ParamName varchar(100), @ParamType char(1), @DefValue nvarchar(2000) = NULL, @PromptText varchar(255), @HelpText varchar(255), @EditLevel tinyint, @EditControl varchar(50), @ValueTemplate varchar(1000)=null, @ProcInfo varchar(1000)=null, @newParamPosition VARCHAR(10) = NULL, @paramNameToCompare VARCHAR(100) = '', @paramSourceType varchar(10) = 'D', @paramUsePhysical tinyint = 0, @notes varchar(500) ='', @ParameterUsage smallint) AS BEGIN -- ParameterUsage: has following int values, addition of these values will be stored based on param usage --ParamUsage Bit Assignment Int Value --Ehost UI 0000 0001 1 --Search Service 0000 0010 2 --EPDS 0000 0100 4 --Production 0000 1000 8 DECLARE @newParamNumber INT DECLARE @AddMod varchar(25) if exists (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName) SET @AddMod='Add' else SET @AddMod='Modify' EXEC dbo.EAIP_AddDbParam_104 @ParamName,@ParamType,@DefValue,@PromptText, @HelpText, @EditLevel, @EditControl,@ValueTemplate,@ProcInfo,@newParamPosition,@paramNameToCompare,@paramSourceType,@paramUsePhysical, @notes,@ParameterUsage SELECT @newParamNumber = dbo.EAIF_GetDbParamNumber_70(@ParamName) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'AddModifyDbParam',@AddMod, @newParamNumber,@ParamName END
CREATE PROCEDURE [dbo].[EAIP_GetSystemCustomLinkUpdateRequestsByStatus_171](@Status CHAR(1)) AS BEGIN SELECT [dbo].[SystemLinkUpdateStatus].[SystemLinkUpdateStatusID], [dbo].[SystemLinkUpdateStatus].[SystemLinkID], [dbo].[SystemLinkUpdateStatus].[ChangedSourceXml], [dbo].[SystemLinkUpdateStatus].[UserID], [dbo].[SystemLinkUpdateStatus].[UserIP] FROM dbo.SystemLinkUpdateStatus WHERE [dbo].[SystemLinkUpdateStatus].[UpdateStatus]=@Status ORDER BY [dbo].[SystemLinkUpdateStatus].[SystemLinkUpdateStatusID] END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbFieldGroup_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @FieldGroupNo int, @Description nvarchar(255), @ElementsList varchar(2048), @LangCode varchar(10), @Caption nvarchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroup].[FieldGroupNo]=@FieldGroupNo) BEGIN BEGIN TRANSACTION /* FieldGroupList */ UPDATE [dbo].[FieldGroupList] SET [dbo].[FieldGroupList].[Description]=@Description WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Group--Description.', 16, -1) RETURN END /* DbFieldElement */ DELETE FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldElement].[FieldGroupNo]=@FieldGroupNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Group--Delete old Element assignment.', 16, -1) RETURN END INSERT INTO [dbo].[DbFieldElement]([dbo].[DbFieldElement].[DbVerNo], [dbo].[DbFieldElement].[FieldGroupNo], [dbo].[DbFieldElement].[FieldElementNo]) SELECT @DbVerNo, @FieldGroupNo, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ElementsList,'+') IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Group--Assign Elements.', 16, -1) RETURN END /* DbFieldGroupCaption */ IF EXISTS(SELECT 1 FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupCaption].[LangCode]=@LangCode) BEGIN UPDATE [dbo].[DbFieldGroupCaption] SET [dbo].[DbFieldGroupCaption].[Caption]=@Caption WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupCaption].[LangCode]=@LangCode IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Group--Modify Caption.', 16, -1) RETURN END END ELSE BEGIN INSERT INTO [dbo].[DbFieldGroupCaption]([dbo].[DbFieldGroupCaption].[DbVerNo], [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption]) VALUES(@DbVerNo, @FieldGroupNo, @LangCode, @Caption) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Group--Add Caption.', 16, -1) RETURN END END /* Log the Transaction */ DECLARE @DbName varchar(10), @DbLabel varchar(10), @FieldGroupId varchar(100), @ElementNameList varchar(950) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @FieldGroupId=[dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo SELECT @ElementNameList = COALESCE(@ElementNameList+',','') + [dbo].[FieldElementList].[FieldElementName] FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementNo] IN ( SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ElementsList,'+') ) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Field Customization', 'Modify Group:', @FieldGroupId, 'Field Names:', @ElementNameList, 'Caption:', @Caption COMMIT TRANSACTION END END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceListForNewFeature_83](@FeatureID varchar(10)) RETURNS varchar(8000) AS BEGIN DECLARE @IntList varchar(8000) SET @IntList='' DECLARE @Count int SELECT TOP 15 @IntList=@IntList+[dbo].[InterfaceNewFeature].[InterfaceID ]+'-'+[dbo].[InterfaceNewFeature].[Version]+', ' from [dbo].[InterfaceNewFeature] WHERE [dbo].[InterfaceNewFeature].[FeatureID]=@FeatureID ORDER BY [dbo].[InterfaceNewFeature].[InterfaceID ] SELECT @Count =count(*) from [dbo].[InterfaceNewFeature] where [dbo].[InterfaceNewFeature].[FeatureID]=@FeatureID IF @Count>0 SET @IntList=SUBSTRING(@IntList,1,LEN(@IntList)-1) IF @Count>15 SET @IntList=@IntList+'...' RETURN @IntList END
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppParamList_70](@AppNo int, @Origin varchar(100)='') AS BEGIN SELECT p.ParamNo, [p].[ParamName], ParamType=m.Description, Description=ISNULL([d].[PromptText], ''),DefaultValue=IsNull(convert(nvarchar(2000),e.ParamValue),N'') FROM ([dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON p.ParamNo = d.ParamNo) LEFT OUTER JOIN (SELECT * FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName] = 'ParamType') m ON [p].[ParamType] = [m].[FieldCode] LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] e ON e.TargetNo=@AppNo AND e.ParamLevel='A' AND p.ParamNo=e.ParamNo WHERE [p].[ApplicationNo] = @AppNo And [p].[ParamName]>=@Origin END
--sql content merged from file: \StoredProcedures\EAIP_AddCustomParamTblInterfaceSMValues_91.sql CREATE procedure [dbo].[EAIP_AddCustomParamTblInterfaceSMValues_91] @UserId nvarchar(20), @UserIp varchar(30), @ParamNo int, @ItemID varchar(10), @FieldNo int, @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @LangCode varchar(10), @Value nvarchar(255) as if exists (select 1 from [dbo].[CustomParamTblInterfaceSMValues] where [dbo].[CustomParamTblInterfaceSMValues].[ParamNo]=@ParamNo and [dbo].[CustomParamTblInterfaceSMValues].[ItemID]=@ItemID and [dbo].[CustomParamTblInterfaceSMValues].[FieldNo]=@FieldNo and [dbo].[CustomParamTblInterfaceSMValues].[InterfaceID]=@InterfaceID and [dbo].[CustomParamTblInterfaceSMValues].[Version]=@Version and [dbo].[CustomParamTblInterfaceSMValues].[MarketID]=@MarketID and [dbo].[CustomParamTblInterfaceSMValues].[LangCode]=@LangCode) Begin RAISERROR('The Item (%s) already exists for Parameter (%d), Field (%d) for Interface Version (%s), (%s) and Market (%s) in CustomParamTblInterfaceSMValues', 16, -1, @ItemID, @ParamNo, @FieldNo, @InterfaceID, @Version,@MarketID) RETURN End Begin Try begin transaction Insert [dbo].[CustomParamTblInterfaceSMValues] ([dbo].[CustomParamTblInterfaceSMValues].[ParamNo], [dbo].[CustomParamTblInterfaceSMValues].[ItemID], [dbo].[CustomParamTblInterfaceSMValues].[FieldNo], [dbo].[CustomParamTblInterfaceSMValues].[InterfaceID], [dbo].[CustomParamTblInterfaceSMValues].[Version], [dbo].[CustomParamTblInterfaceSMValues].[MarketID], [dbo].[CustomParamTblInterfaceSMValues].[LangCode], [dbo].[CustomParamTblInterfaceSMValues].[Value]) Values (@ParamNo, @ItemID, @FieldNo, @InterfaceID, @Version,@MarketID, @LangCode, @Value) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'CustomParamTblInterfaceSMValues', 'Add CustomParamTblInterfaceSMValues', @ParamNo, @FieldNo, @ItemID, @Value commit transaction End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetCustomerGroupInfo_231] ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX) ) AS BEGIN DECLARE @CustName NVARCHAR(100) DECLARE @GroupName NVARCHAR(100) DECLARE @GroupNo INT DECLARE @STMode CHAR(1) DECLARE @MarketID VARCHAR(20) SET @RequiredGroupParams = REPLACE(@RequiredGroupParams, ' ', '') SELECT @CustName = c.CustName, @GroupName = ug.GroupName, @GroupNo = ug.GroupNo, @STMode = dbo.EAIF_CustTypeToSTMode_70(c.[CustType]), @MarketID = c.MarketID FROM [dbo].[Customer] c INNER JOIN [dbo].[UserGroup] ug ON c.CustID = ug.CustID WHERE c.CustID = @CustID AND GroupID = @GroupID SELECT @CustName AS CustName, @GroupName AS GroupName SELECT cpl.ParamName, ISNULL(cpsv.ParamValue, dv.DefValue) AS ParamValue FROM [dbo].[CustomParamList] cpl LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@RequiredGroupParams, ',') AS rgp ON cpl.ParamName = rgp.Item LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpl.ParamNo = cpsv.ParamNo AND cpsv.TargetNo = @GroupNo LEFT OUTER JOIN [dbo].[CustomParamDefaults] dv ON cpl.ParamNo = dv.ParamNo AND dv.InterfaceID = 'all' AND dv.Version = 'all' AND dv.MarketID = @MarketId AND dv.STMode = @STMode WHERE cpl.ParamLevel = 'G' AND ( rgp.Item IS NOT NULL OR ISNULL(NULLIF(@RequiredGroupParams, ''), '') = '' ) END
CREATE PROCEDURE [dbo].[EAUI_GetSystemCollectionList_70](@Size int = 0, @Origin nvarchar(50) = '') AS BEGIN SET ROWCOUNT @Size SELECT [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], EPFullText = CASE [dbo].[Collection].[EPFullText] WHEN 1 THEN 'Yes' ELSE 'No' END, CustomLink = CASE [dbo].[Collection].[CustomLink] WHEN 1 THEN 'Yes' ELSE 'No' END, SmartLink = CASE [dbo].[Collection].[SmartLink] WHEN 1 THEN 'Yes' ELSE 'No' END, Category = ISNULL([dbo].[Collection].[Category], 'other') FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID] = 'system' AND [dbo].[Collection].[ColID] >= @Origin and [dbo].[Collection].[IsDeleted] = 0 ORDER BY [dbo].[Collection].[ColID] SET ROWCOUNT 0 END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceExpanders_81] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceExpanders_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Expanders', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[PES_CreateLoadTable] AS BEGIN if exists (select * from dbo.sysobjects where [dbo].[sysobjects].[id] = object_id(N'[PES_DbGrpElement_Tmp]') and OBJECTPROPERTY([dbo].[sysobjects].[id], N'IsUserTable') = 1) drop table [dbo].[PES_DbGrpElement_Tmp] CREATE TABLE [dbo].[PES_DbGrpElement_Tmp] (DbName varchar(10), FieldGroupId varchar(100), FieldElementName varchar(100)) if exists (select * from dbo.sysobjects where [dbo].[sysobjects].[id] = object_id(N'[PES_DbGrpElement]') and OBJECTPROPERTY([dbo].[sysobjects].[id], N'IsUserTable') = 1) drop table [dbo].[PES_DbGrpElement] CREATE TABLE [dbo].[PES_DbGrpElement] (DbName varchar(10), FieldGroupId varchar(100), FieldElementName varchar(100)) if exists (select * from dbo.sysobjects where [dbo].[sysobjects].[id] = object_id(N'[PES_DbGrpEngCaption]') and OBJECTPROPERTY([dbo].[sysobjects].[id], N'IsUserTable') = 1) drop table [dbo].[PES_DbGrpEngCaption] CREATE TABLE [dbo].[PES_DbGrpEngCaption](FieldGroupId varchar(100), Caption varchar(255), OffOnValue varchar(3)) if exists (select * from dbo.sysobjects where [dbo].[sysobjects].[id] = object_id(N'[PES_ElementDesc]') and OBJECTPROPERTY([dbo].[sysobjects].[id], N'IsUserTable') = 1) drop table [dbo].[PES_ElementDesc] CREATE TABLE [dbo].[PES_ElementDesc](FieldElementName varchar(100), Caption varchar(255)) END
CREATE PROCEDURE [dbo].[EAIP_CleanupNewEdsProfileChanges_214] AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE FROM [dbo].[ChangedProfile] WHERE DateModified < DATEADD(DD, -5, GETUTCDATE()); DELETE FROM [dbo].[ChangedCustomParamScalarValues] WHERE DateModified < DATEADD(DD, -5, GETUTCDATE()); DELETE FROM [dbo].[DeletedUserGroup] WHERE DateModified < DATEADD(DD, -5, GETUTCDATE()); COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR ( @ErrorMessage, @ErrorSeverity, @ErrorState ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerLink_70](@CustID varchar(10), @ItemName varchar(255) ) AS BEGIN EXEC [dbo].[EAUI_GetCustomerParamXmlValue_70] @CustID,'customerCustomLink', @ItemName END
--sql content merged from file: \StoredProcedures\EAUI_GetMDbLimiterControlTypes_89.sql CREATE Procedure [dbo].[EAUI_GetMDbLimiterControlTypes_89] As Select [dbo].[LimiterControlType].[ControlName], [dbo].[LimiterControlType].[ControlType] From [dbo].[LimiterControlType] where [dbo].[LimiterControlType].[ControlTag] NOT IN ('QUERY_CHECK_BOX', 'DATE_LIST') Order by [dbo].[LimiterControlType].[ControlName]
CREATE TRIGGER [dbo].[ProfDatabaseInsertedTrigger] ON [dbo].[ProfDatabase] AFTER INSERT AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedProfDatabase] (ProfNo) SELECT ProfNo FROM inserted; END
CREATE PROCEDURE EATL_UpdateInterfaceMDbAuthority_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@MultiDbAuthorityInterfaces XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #MultiDbAuthorityInterfaces ( ID INT identity(1, 1) ,MultiDbAuthId VARCHAR(10) ,InterfaceID VARCHAR(10) ,Version VARCHAR(10) ,LinkText NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #MultiDbAuthorityInterfaces ( MultiDbAuthId ,InterfaceID ,Version ,LinkText ,MouseOverText ) SELECT m.c.value('(./Id)[1]', 'varchar(10)') ,m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./InterfaceVersion)[1]', 'varchar(10)') ,m.c.value('(./LinkText)[1]', 'nvarchar(max)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(max)') FROM @MultiDbAuthorityInterfaces.nodes('/ArrayOfMultiDbAuthorityInterface/MultiDbAuthorityInterface') AS m(c) DECLARE @i INT ,@Count INT ,@MultiDbAuthId VARCHAR(10) ,@InterfaceID VARCHAR(10) ,@Version VARCHAR(10) ,@LinkText NVARCHAR(255) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #MultiDbAuthorityInterfaces ) WHILE @i <= @Count BEGIN SELECT @MultiDbAuthId = MultiDbAuthId ,@InterfaceID = InterfaceID ,@Version = Version ,@LinkText = LinkText ,@MouseOverText = MouseOverText FROM #MultiDbAuthorityInterfaces WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceMDbAuthority_90] @UserID ,@UserIP ,@MultiDbAuthId ,@InterfaceID ,@Version ,@LinkText ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #MultiDbAuthorityInterfaces END
CREATE PROCEDURE [dbo].[EPCS_GetEplRecreateLocalTitles_70](@CustId varchar(10), @CollId nvarchar(50), @InputLastUpdateDateStr varchar(17) ) AS BEGIN DECLARE @LastUpdateDate DateTime, @InputLastUpdateDate DateTime SELECT @LastUpdateDate = [dbo].[Collection].[LastUpdateDate] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustId AND [dbo].[Collection].[ColID]=@CollId AND [dbo].[Collection].[IsDeleted] = 0 SELECT @InputLastUpdateDate = dbo.EAIF_EplStringToDateTime( @InputLastUpdateDateStr ) IF @LastUpdateDate >= @InputLastUpdateDate EXEC [dbo].[EPCS_GetEplLocalTitles_70] @CustId, @CollId ELSE SELECT dbo.EAIF_EplDateTimeToString(@LastUpdateDate) as LastUpdateDate, NULL as ISSN, NULL as Dates END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceClusterListForAttach_102](@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10) = 'en')AS BEGIN SELECT gc.ID AS ClustId, gcc.Caption + ' (' + gc.ID + ')' AS Caption FROM [dbo].[GlobalCluster] gc JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ID = gcc.ID AND gcc.LangCode= @LangCode LEFT OUTER JOIN [dbo].[GlobalClusterInterface] gci ON gc.ID = gci.ClustId AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version WHERE gci.ClustId IS NULL AND gc.AutoAdd2Interfaces = 0 END
CREATE PROCEDURE [dbo].[EAIP_VerifyCluster_89](@Id Varchar(20), @DbLabel Varchar(50), @Caption nVarchar(255), @Tag Varchar(20), @XPath Varchar(4000), @XPathEnh Varchar(4000), @Show Bit, @MinDisplay Smallint, @MaxDisplay Smallint, @SeqNo Smallint, @AutoAdd2Db Bit, @Notes NVarchar(1000), @DbVerNo Int) AS BEGIN DECLARE @ClustNo Int IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' IF(NOT Exists(SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @Id)) BEGIN INSERT INTO [dbo].[GlobalCluster] ([dbo].[GlobalCluster].[ID], [dbo].[GlobalCluster].[Tag], [dbo].[GlobalCluster].[XPath], [dbo].[GlobalCluster].[XPathEnh], [dbo].[GlobalCluster].[Notes], [dbo].[GlobalCluster].[Show], [dbo].[GlobalCluster].[MinDisplay], [dbo].[GlobalCluster].[MaxDisplay]) VALUES (@Id, @Tag, @XPath, @XPathEnh, @Notes, @Show, @MinDisplay, @MaxDisplay) END ELSE BEGIN UPDATE [dbo].[GlobalCluster] SET [dbo].[GlobalCluster].[Tag] = @Tag, [dbo].[GlobalCluster].[XPath] = @XPath, [dbo].[GlobalCluster].[XPathEnh] = @XPathEnh, [dbo].[GlobalCluster].[Notes] = @Notes, [dbo].[GlobalCluster].[Show] = @Show, [dbo].[GlobalCluster].[MinDisplay] =@MinDisplay, [dbo].[GlobalCluster].[MaxDisplay] = @MaxDisplay WHERE [dbo].[GlobalCluster].[ID] = @Id END DELETE FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID] = @Id AND [dbo].[GlobalClusterCaption].[LangCode] = 'en' INSERT INTO [dbo].[GlobalClusterCaption] ([dbo].[GlobalClusterCaption].[ID], [dbo].[GlobalClusterCaption].[LangCode], [dbo].[GlobalClusterCaption].[Caption]) VALUES (@Id, 'en', @Caption) IF(NOT Exists(SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @Id AND [dbo].[ClusterList].[DbLabel] = @DbLabel)) BEGIN INSERT INTO [dbo].[ClusterList] ([dbo].[ClusterList].[ClustId], [dbo].[ClusterList].[DbLabel], [dbo].[ClusterList].[SeqNo], [dbo].[ClusterList].[AutoAdd2Db]) VALUES(@Id, @DbLabel, @SeqNo, @AutoAdd2Db) SELECT @ClustNo = SCOPE_IDENTITY() SELECT @AutoAdd2Db = 0 END ELSE BEGIN UPDATE [dbo].[ClusterList] SET @ClustNo = [dbo].[ClusterList].[ClustNo], [dbo].[ClusterList].[SeqNo] = @SeqNo, [dbo].[ClusterList].[AutoAdd2Db] = @AutoAdd2Db WHERE [dbo].[ClusterList].[ClustId] = @Id AND [dbo].[ClusterList].[DbLabel] = @DbLabel END DELETE FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClustNo IF(@AutoAdd2Db = 0) INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable]) VALUES (@DbVerNo, @ClustNo, 1) END
CREATE PROCEDURE [dbo].[EPC_DeleteDbForms_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Delete this.Database Forms', '', '', 'DDSUpdate' DELETE FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo END
CREATE procedure [dbo].[EAUI_GetDatabaseTypeList_70] as BEGIN SELECT [dbo].[DbTypeList].[DbType], [dbo].[DbTypeList].[Description] FROM [dbo].[DbTypeList] END
--sql content merged from file: \StoredProcedures\EAUI_AddModifyDbParam_96.sql CREATE Procedure dbo.EAUI_AddModifyDbParam_96 (@UserID nvarchar(20), @UserIP varchar(15), @ParamName varchar(100), @ParamType char(1), @DefValue nvarchar(2000) = NULL, @PromptText varchar(255), @HelpText varchar(255), @EditLevel tinyint, @EditControl varchar(50), @ValueTemplate varchar(1000)=null, @ProcInfo varchar(1000)=null, @newParamPosition VARCHAR(10) = NULL, @paramNameToCompare VARCHAR(100) = '', @paramSourceType varchar(10) = 'D') AS BEGIN DECLARE @newParamNumber INT DECLARE @AddMod varchar(25) if exists (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName) SET @AddMod='Add' else SET @AddMod='Modify' EXEC [dbo].[EAIP_AddDbParam_92] @ParamName,@ParamType,@DefValue,@PromptText, @HelpText, @EditLevel, @EditControl,@ValueTemplate,@ProcInfo,@newParamPosition,@paramNameToCompare,@paramSourceType SELECT @newParamNumber = dbo.EAIF_GetDbParamNumber_70(@ParamName) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'AddModifyDbParam',@AddMod, @newParamNumber,@ParamName END
CREATE PROCEDURE [dbo].[EAIP_GetToolbarItemList_77](@InterfaceID varchar(10), @Version varchar(10), @ItemName varchar(10) ) AS /** procedure is used by EPCopy **/ BEGIN SELECT [dbo].[InterfaceToolbar].[ItemName], [dbo].[InterfaceToolbar].[Category], [dbo].[InterfaceToolbar].[Alignment], [dbo].[InterfaceToolbar].[Image], [dbo].[InterfaceToolbar].[SeqNo], dbo.EAIF_InterfaceToolbarItemLangAndCaptions_77([dbo].[InterfaceToolbar].[IntfToolbarItem]) AS Captions, dbo.EAIF_InterfaceToolbarItemDbs([dbo].[InterfaceToolbar].[IntfToolbarItem]) As Dbs FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version] =@Version AND [dbo].[InterfaceToolbar].[ItemName] like @ItemName+'%' END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbFieldGroupMktDefaults_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @FieldGroupNo int, @OutputMode varchar(10), @MarketID varchar(20), @DefValue bit) AS BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupDefaults].[OutputMode]=@OutputMode AND [dbo].[DbFieldGroupDefaults].[MarketID]=@MarketID) BEGIN INSERT INTO [dbo].[DbFieldGroupDefaults]([dbo].[DbFieldGroupDefaults].[DbVerNo], [dbo].[DbFieldGroupDefaults].[FieldGroupNo], [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue]) VALUES(@DbVerNo, @FieldGroupNo, @OutputMode, @MarketID, @DefValue) END ELSE BEGIN UPDATE [dbo].[DbFieldGroupDefaults] SET [dbo].[DbFieldGroupDefaults].[DefValue]=@DefValue WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupDefaults].[OutputMode]=@OutputMode AND [dbo].[DbFieldGroupDefaults].[MarketID]=@MarketID END /* Log the Transaction */ DECLARE @DbName varchar(10), @DbLabel varchar(10), @FieldGroupId varchar(100), @CharDefValue char(1) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @FieldGroupId=[dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo SET @CharDefValue=CONVERT(CHAR(1), @DefValue) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Field Customization', 'Market Defaults', @FieldGroupId, 'Market:', @MarketID, 'Default:', @CharDefValue END
CREATE FUNCTION dbo.EAIF_GetInterfaceListForSearchThemes_84(@ThemeID varchar(20)) RETURNS varchar(8000) AS BEGIN DECLARE @IntList varchar(8000) SET @IntList='' DECLARE @Count int SELECT TOP 10 @IntList=@IntList+[dbo].[InterfaceSearchTheme].[InterfaceID]+'-'+[dbo].[InterfaceSearchTheme].[Version]+', ' from [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[ThemeID]=@ThemeID ORDER BY [dbo].[InterfaceSearchTheme].[InterfaceID] SELECT @Count =count(*) from [dbo].[InterfaceSearchTheme] where [dbo].[InterfaceSearchTheme].[ThemeID]=@ThemeID IF @Count>0 SET @IntList=SUBSTRING(@IntList,1,LEN(@IntList)-1) IF @Count>10 SET @IntList=@IntList+'...' RETURN @IntList END
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppServer_70]( @ServerNo int ) AS BEGIN SELECT [dbo].[ConfigServer].[ServerURI], [dbo].[ConfigServer].[Description], [dbo].[ConfigServer].[ServerStatus], [dbo].[ConfigServer].[ServerType] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerNo]=@ServerNo END
--sql content merged from file: \StoredProcedures\EAIP_AddCustomParamXMLField_91.sql CREATE procedure [dbo].[EAIP_AddCustomParamXMLField_91] (@UserId nvarchar(20), @UserIp varchar(30), @ParamNo int, @FieldName varchar(20), @FieldDisplayName varchar(255), @FieldType varchar(10), @MaxLength int, @ControlType varchar(20), @ValueTemplate varchar(255), @SeqNo int, @SortField bit, @EditLevel varchar(5), @DisplayLevel varchar(5), @Required bit, @ReturnToClient bit) as begin if exists (select 1 from [dbo].[CustomParamXmlFields] where [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo and [dbo].[CustomParamXmlFields].[FieldName]=@FieldName) Begin RAISERROR('The XMLField (%s) already exists for Parameter (%d) in CustomParamXMLFields', 16, -1, @FieldName, @ParamNo) RETURN End Begin Try begin transaction Insert [dbo].[CustomParamXmlFields] ([dbo].[CustomParamXmlFields].[ParamNo], [dbo].[CustomParamXmlFields].[FieldName], [dbo].[CustomParamXmlFields].[FieldDisplayName], [dbo].[CustomParamXmlFields].[FieldType], [dbo].[CustomParamXmlFields].[MaxLength], [dbo].[CustomParamXmlFields].[ControlType], [dbo].[CustomParamXmlFields].[ValueTemplate], [dbo].[CustomParamXmlFields].[SeqNo], [dbo].[CustomParamXmlFields].[SortField], [dbo].[CustomParamXmlFields].[EditLevel], [dbo].[CustomParamXmlFields].[DisplayLevel],[dbo].[CustomParamXmlFields].[Required],[dbo].[CustomParamXmlFields].[ReturnToClient]) values (@ParamNo, @FieldName, @FieldDisplayName, @FieldType, @MaxLength, @ControlType, @ValueTemplate, @SeqNo, @SortField, @EditLevel, @DisplayLevel,@Required,@ReturnToClient) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'CustomParamXMLField', 'Add CustomParamXMLField', @ParamNo, @FieldName commit transaction End Try Begin Catch rollback transaction End Catch end
CREATE procedure [dbo].[EAIP_GetCustomerGroupList_100] (@CustID varchar(10)) as Begin DECLARE @ParamNo int declare @DefValue varchar(4000) declare @tempTable table (CustID varchar(10), GroupID varchar(10), PersonalizationEnabledProfileCount int) Insert @tempTable select ug.CustID, ug.GroupID, SUM(convert(int, isnull(iv.AllowPersonalization, 0))) from [dbo].[UserGroup] ug left outer join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 where ug.CustID=@CustID Group by ug.CustID, ug.GroupID SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' select c.CustID, ug.GroupID, GroupType, GroupName, GroupEmail, isnull(isnull(ParamValue, DefValue),@DefValue) as AllowPersonalization, t.PersonalizationEnabledProfileCount from [dbo].[Customer] c join [dbo].[UserGroup] ug on c.CustID=ug.CustID join @tempTable t on ug.CustID=t.CustID and ug.GroupID=t.GroupID left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70(CustType) where c.CustID = @CustID order by GroupName End
CREATE PROCEDURE [dbo].[EAUI_GetSystemCollectionListBrowseByColName_70](@Origin nvarchar(10) = N'') AS BEGIN SELECT [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], EPFullText = CASE [dbo].[Collection].[EPFullText] WHEN 1 THEN 'Yes' ELSE 'No' END, CustomLink = CASE [dbo].[Collection].[CustomLink] WHEN 1 THEN 'Yes' ELSE 'No' END, SmartLink = CASE [dbo].[Collection].[SmartLink] WHEN 1 THEN 'Yes' ELSE 'No' END, Category = ISNULL([dbo].[Collection].[Category], 'other') FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID] = 'system' AND [dbo].[Collection].[ColName] >= @Origin AND [dbo].[Collection].[IsDeleted] = 0 ORDER BY [dbo].[Collection].[ColName] END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceFeatures_79] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceFeatureList].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceFeatureList] ([ifl].[InterfaceID],[ifl].[Version],[ifl].[FeatureName],[ifl].[ScreenID],[ifl].[FeatureType], [ifl].[DbDependant],[ifl].[VisibleItemCount],[ifl].[SelectionMode]) SELECT @InterfaceIDTo, @VersionTo, ifl.FeatureName,ISNULL(isc.ScreenID,''),ifl.FeatureType, ifl.DbDependant,ifl.VisibleItemCount,ifl.SelectionMode FROM [dbo].[InterfaceFeatureList] ifl LEFT OUTER JOIN [dbo].[InterfaceScreen] isc ON ifl.ScreenID = isc.ScreenID AND isc.InterfaceID= @InterfaceIDTo AND isc.Version =@VersionTo WHERE ifl.InterfaceID=@InterfaceIDFrom AND ifl.Version = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceFeatureFields]([iff].[InterfaceFeatureNo],[iff].[FieldName], [iff].[FieldLevel],[iff].[FieldType],[iff].[IncludeInSummary],[iff].[EditControl],[iff].[ValueTemplate]) SELECT ifl2.InterfaceFeatureNo, iff.FieldName, iff.FieldLevel, iff.FieldType, iff.IncludeInSummary, iff.EditControl, iff.ValueTemplate FROM [dbo].[InterfaceFeatureList] ifl INNER JOIN [dbo].[InterfaceFeatureFields] iff ON ifl.InterfaceFeatureNo = iff.InterfaceFeatureNo INNER JOIN [dbo].[InterfaceFeatureList] ifl2 ON ifl.FeatureName = ifl2.FeatureName WHERE ifl.InterfaceID = @InterfaceIDFrom AND ifl.Version = @VersionFrom AND ifl2.InterfaceID = @InterfaceIDTo AND ifl2.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceFeatureValues]([ifv].[InterfaceFeatureNo],[ifv].[ItemNo],[ifv].[FieldValueXml],[ifv].[SeqNo],[ifv].[Show]) SELECT ifl2.InterfaceFeatureNo, ifv.ItemNo, ifv.FieldValueXml, ifv.SeqNo, ifv.Show FROM [dbo].[InterfaceFeatureList] ifl INNER JOIN [dbo].[InterfaceFeatureValues] ifv ON ifl.InterfaceFeatureNo = ifv.InterfaceFeatureNo INNER JOIN [dbo].[InterfaceFeatureList] ifl2 ON ifl.FeatureName = ifl2.FeatureName WHERE ifl.InterfaceID = @InterfaceIDFrom AND ifl.Version = @VersionFrom AND ifl2.InterfaceID = @InterfaceIDTo AND ifl2.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Features', @SourceIntf, @TargetIntf COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[PES_LoadData](@DbLabel varchar(10)) AS BEGIN ------------------------------- --Remove Duplicates, if any ------------------------------- INSERT INTO [dbo].[PES_DbGrpElement] SELECT DISTINCT * FROM [dbo].[PES_DbGrpElement_Tmp] ------------------------------- --Populate FieldGroupList ------------------------------- INSERT INTO [dbo].[FieldGroupList]([dbo].[FieldGroupList].[FieldGroupId]) SELECT DISTINCT [dbo].[PES_DbGrpElement].[FieldGroupId] FROM [dbo].[PES_DbGrpElement] WHERE [dbo].[PES_DbGrpElement].[FieldGroupId] NOT IN (SELECT [dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList]) UPDATE a SET a.Description=b.Caption FROM [dbo].[FieldGroupList] a INNER JOIN dbo.PES_DbGrpEngCaption b ON a.FieldGroupId=b.FieldGroupId ------------------------------- --Populate FieldElementList ------------------------------- INSERT INTO [dbo].[FieldElementList]([dbo].[FieldElementList].[FieldElementName]) SELECT DISTINCT [dbo].[PES_DbGrpElement].[FieldElementName] FROM [dbo].[PES_DbGrpElement] WHERE [dbo].[PES_DbGrpElement].[FieldElementName] NOT IN (SELECT [dbo].[FieldElementList].[FieldElementName] FROM [dbo].[FieldElementList]) UPDATE a SET a.Description=b.Caption FROM [dbo].[FieldElementList] a INNER JOIN dbo.PES_ElementDesc b ON a.FieldElementName=b.FieldElementName ------------------------------- --Populate DbFieldGroup ------------------------------- DELETE FROM [dbo].[PES_DbGrpElement] WHERE [dbo].[PES_DbGrpElement].[DbName] NOT IN (SELECT [dbo].[DbList].[DbName] From [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel]=@DbLabel) INSERT INTO [dbo].[DbFieldGroup] SELECT DISTINCT dbo.EAIF_GetDbVerNo_70([dbo].[PES_DbGrpElement].[DbName],@DbLabel), dbo.PES_GetFieldGroupNo([dbo].[PES_DbGrpElement].[FieldGroupId]) FROM [dbo].[PES_DbGrpElement] ------------------------------- --Populate DbFieldElement ------------------------------- INSERT INTO [dbo].[DbFieldElement] SELECT dbo.EAIF_GetDbVerNo_70([dbo].[PES_DbGrpElement].[DbName],@DbLabel), dbo.PES_GetFieldGroupNo([dbo].[PES_DbGrpElement].[FieldGroupId]), dbo.PES_GetFieldElementNo([dbo].[PES_DbGrpElement].[FieldElementName]) FROM [dbo].[PES_DbGrpElement] ------------------------------- --Populate DbFieldGroupCaption ------------------------------- INSERT INTO [dbo].[DbFieldGroupCaption]([dbo].[DbFieldGroupCaption].[DbVerNo], [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode]) SELECT DISTINCT dbo.EAIF_GetDbVerNo_70([dbo].[PES_DbGrpElement].[DbName],@DbLabel), dbo.PES_GetFieldGroupNo([dbo].[PES_DbGrpElement].[FieldGroupId]), 'en' FROM [dbo].[PES_DbGrpElement] UPDATE a SET a.Caption=b.Caption FROM [dbo].[DbFieldGroupCaption] a INNER JOIN [dbo].[PES_DbGrpEngCaption] b ON a.FieldGroupNo=dbo.PES_GetFieldGroupNo(b.FieldGroupId) WHERE a.LangCode='en' --------------------------------- --Populate DbFieldGroupDefaults --------------------------------- INSERT INTO [dbo].[DbFieldGroupDefaults]([dbo].[DbFieldGroupDefaults].[DbVerNo], [dbo].[DbFieldGroupDefaults].[FieldGroupNo], [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue]) SELECT DISTINCT dbo.EAIF_GetDbVerNo_70(DbName,@DbLabel), dbo.PES_GetFieldGroupNo(FieldGroupId), 'PES', b.MarketID, 0 FROM [dbo].[PES_DbGrpElement] a CROSS JOIN EASUPPORT.dbo.MarketList b UPDATE a SET a.DefValue=(CASE when lower(b.OffOnValue)='on' then 1 else 0 end) FROM [dbo].[DbFieldGroupDefaults] a INNER JOIN [dbo].[PES_DbGrpEngCaption] b ON a.FieldGroupNo=dbo.PES_GetFieldGroupNo(b.FieldGroupId) WHERE a.OutputMode='PES' END
--sql content merged from file: \StoredProcedures\EAIP_CompareDbLimTemplates_86.sql CREATE PROCEDURE [dbo].[EAIP_CompareDbLimTemplates_86](@DbVerNo int, @LimiterNo int, @Template nvarchar(max)) AS BEGIN -- procedure selects 1 if existing template and template that is passed as a parameter have all the same value attributes; -- procedure selects nothing if at least one attribute is diffarent -- limitatiomns: only templates that does not exceed 8000 length are compared DECLARE @ret int DECLARE @Template_old nvarchar(max) DECLARE @xmlDocHandle1 int DECLARE @xmlDocHandle2 int SELECT @Template_old=SUBSTRING([dbo].[DbLimiterDetail].[ControlTemplate], 8000, 100) from [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[DbVerNo]=@DbVerNo and [dbo].[DbLimiterDetail].[LimiterNo]=@LimiterNo IF LEN(@Template_old)>0 BEGIN RETURN END SELECT @Template_old=[dbo].[DbLimiterDetail].[ControlTemplate] from [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[DbVerNo]=@DbVerNo and [dbo].[DbLimiterDetail].[LimiterNo]=@LimiterNo EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle1 OUTPUT, @Template_old EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle2 OUTPUT, @Template IF EXISTS ( select 1 from (SELECT thevalue FROM OPENXML (@xmlDocHandle1, '/lbItems/lbItem',1) WITH (thevalue varchar(255) '@value', thetext varchar(255) '.')) a LEFT OUTER JOIN (SELECT thevalue FROM OPENXML (@xmlDocHandle2, '/lbItems/lbItem',1) WITH (thevalue varchar(255) '@value', thetext varchar(255) '.')) b ON a.thevalue=b.thevalue Where b.thevalue is null) SET @Ret=0 ELSE SET @Ret= 1 EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle1 EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle2 IF @Ret= 1 SELECT @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerLoginPrompt_70](@CustID varchar(10), @ItemName varchar(255) ) AS BEGIN EXEC [dbo].[EAUI_GetCustomerParamXmlValue_70] @CustID,'loginText', @ItemName END
CREATE PROCEDURE [dbo].[EAUI_GetMDbLimiterDetail_89] (@LimiterNo int) AS SELECT mdbll.LimiterID, [mdbll].[Description], lct.ControlType, mdbll.LogicalOpCode, [mdbll].[SearchString], [mdbll].[AutoAdd], [mdbll].[EnableQueryMask], [mdbll].[QueryMaskId] FROM [dbo].[MDbLimiterList] mdbll JOIN [dbo].[LimiterControlType] lct ON (mdbll.ControlType = lct.ControlType) WHERE mdbll.LimiterNo=@LimiterNo
CREATE TRIGGER [dbo].[ProfDatabaseUpdatedTrigger] ON [dbo].[ProfDatabase] AFTER UPDATE AS BEGIN SET NOCOUNT ON; INSERT INTO [dbo].[ChangedProfDatabase] (ProfNo) SELECT ProfNo FROM inserted; END
CREATE Procedure [dbo].[EATL_UpdateInterfaceMultiDbSTS_90] @UserID nvarchar(20), @UserIP varchar(50), @InterfaceID varchar(50), @Version varchar(50), @MultiDbSTSID varchar(10), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10) as DECLARE @IntfMultiDbSTSNo int SELECT @IntfMultiDbSTSNo=imdbsl.IntfMultiDbSTSNo FROM [dbo].[InterfaceMultiDbSTSList] imdbsl join [dbo].[MultiDbSTSList] mdbsl on imdbsl.MultiDbSTSID=mdbsl.MultiDBSTSID WHERE mdbsl.MultiDBSTSID=@MultiDbSTSID AND imdbsl.InterfaceID=@InterfaceID AND imdbsl.Version=@Version IF @IntfMultiDbSTSNo is null RETURN IF LEN(@Caption)=0 SET @Caption = null IF LEN(@MouseOverText)=0 SET @MouseOverText = null DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceMultiDbSTSCaption] WHERE [dbo].[InterfaceMultiDbSTSCaption].[IntfMultiDbSTSNo]=@IntfMultiDbSTSNo AND [dbo].[InterfaceMultiDbSTSCaption].[LangCode]=@LangCode) BEGIN UPDATE [dbo].[InterfaceMultiDbSTSCaption] SET [dbo].[InterfaceMultiDbSTSCaption].[Caption]=@Caption, [dbo].[InterfaceMultiDbSTSCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[InterfaceMultiDbSTSCaption].[IntfMultiDbSTSNo]=@IntfMultiDbSTSNo AND [dbo].[InterfaceMultiDbSTSCaption].[LangCode]=@LangCode SET @LogFlag ='Translate(Update) Interface MultiDbSTS Caption and MouseOverText' END ELSE BEGIN INSERT INTO [dbo].[InterfaceMultiDbSTSCaption]([dbo].[InterfaceMultiDbSTSCaption].[IntfMultiDbSTSNo],[dbo].[InterfaceMultiDbSTSCaption].[LangCode],[dbo].[InterfaceMultiDbSTSCaption].[Caption],[dbo].[InterfaceMultiDbSTSCaption].[MouseOverText]) VALUES (@IntfMultiDbSTSNo,@LangCode,@Caption,@MouseOverText) SET @LogFlag ='Translate(Insert) Interface MultiDbSTS Caption and MouseOverText' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @CapAndMouseOver nvarchar(600) SET @CapAndMouseOver = @Caption +';'+ @MouseOverText EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface MultiDbSTS',@LogFlag, @InterfaceID, @Version, @MultiDbSTSID, @LangCode, @CapAndMouseOver COMMIT TRANSACTION
CREATE PROCEDURE [dbo].[EPCS_GetExternalDbMappingList_102] AS SELECT dbl.DbVerNo , dbl.DbName , ISNULL(dlesm.ExternalDbID, '') ExternalDbID_M , ISNULL(dlesi.ExternalDbID,'') ExternalDbID_I , dles.ConnectorProvider from [dbo].[DbListExternalSource] dles INNER JOIN [dbo].[DbList] dbl ON dbl.DbVerNo = dles.DbVerNo LEFT OUTER JOIN dbo.DbListExternalSourceMuse dlesm ON dlesm.DbVerNo = dles.DbVerNo LEFT OUTER JOIN dbo.DbListExternalSourceIndexData dlesi ON dlesi.DbVerNo = dles.DbVerNo
--sql content merged from file: \StoredProcedures\EAUI_GetInterfaceClusters_98.sql CREATE procedure [dbo].[EAUI_GetInterfaceClusters_98] (@InterfaceID varchar(10), @Version varchar(10)) as Begin SELECT cl.ClustNo, cl.ClustId ClusterID, ISNULL(ic.SeqNo, cl.SeqNo) SeqNo, ISNULL(ic.Show, ISNULL(gcid.Show, gc.Show)) Show, ISNULL(convert(int,ic.DefaultToOpen), -1) DefaultToOpen FROM [dbo].[ClusterList] cl LEFT OUTER JOIN [dbo].[InterfaceClusters] ic on ic.ClustNo=cl.ClustNo and ic.InterfaceID=@InterfaceID and ic.Version=@Version JOIN [dbo].[GlobalCluster] gc ON gc.ID = cl.ClustId LEFT OUTER JOIN [dbo].[GlobalClusterInterface] gci ON gci.ClustId = cl.ClustId AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT OUTER JOIN [dbo].[GlobalClusterInterfaceDetails] gcid ON gcid.ClustId = gci.ClustId AND gcid.InterfaceId = gci.InterfaceId AND gcid.Version = gci.Version WHERE cl.DbLabel='live' AND ((gci.InterfaceId = @InterfaceId AND gci.Version = @Version) OR (gci.ClustId is null AND gc.AutoAdd2Interfaces = 1)) ORDER BY cl.SeqNo End
CREATE PROCEDURE dbo.EAIP_VerifyInterfaceVersion_162 ( @InterfaceID varchar(10) ,@Version varchar(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version ''%s-%s'' given in CopyAttributesFrom parameter does not exist.', 16,-1, @InterfaceID, @Version) RETURN END END
CREATE PROCEDURE [dbo].[EPC_DeleteDbSegFileInfo_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20)) AS BEGIN DELETE FROM [dbo].[DbSegFileInfo] WHERE [dbo].[DbSegFileInfo].[DbVerNo]=@DbVerNo AND [dbo].[DbSegFileInfo].[SegName]=@SegName AND [dbo].[DbSegFileInfo].[Volume]=@Volume EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Delete this.SegName FileInfo', 'Segment:', @SegName, 'Volume:', @Volume END
--sql content merged from file: \StoredProcedures\EAUI_GetDatabaseUnattachedAuthorities_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDatabaseUnattachedAuthorities_70] ( @DbVerNo int, @DbLabel varchar(10) ) AS BEGIN declare @MainDbFamilyName varchar(100) select @MainDbFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT a.DbVerNo, a.DisplayName+N'('+a.DbName+N')' AS DisplayName FROM [dbo].[DbList] a WITH (INDEX(IX_DbList_DbLabel)) LEFT JOIN [dbo].[DbTypeList] b ON a.DbType = b.DbType WHERE b.Category='A' AND [a].[DbLabel] = @DbLabel AND (a.DbType = 4 OR a.DSFamilyName LIKE '%'+ @MainDbFamilyName +'%') AND [a].[DbVerNo] NOT IN (SELECT [dbo].[DbAuthority].[AuthDbVerNo] AS DbVerNo FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @DbVerNo ) ORDER BY DisplayName END
CREATE PROCEDURE [dbo].[EAUI_CopyInterface_81] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10), @InterfaceName nvarchar(100), @DefProfID varchar(10)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID]=@DefProfID) BEGIN RAISERROR('The default profile ID %s already exists',16,-1,@DefProfID) RETURN END BEGIN TRANSACTION DECLARE @ClientType varchar(10), @IsMobile bit SELECT @ClientType=[dbo].[Interface].[ClientType] FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@InterfaceIDFrom EXEC [dbo].[EAIP_AddInterface_70] @InterfaceIDTo, @InterfaceIDTo, 'N', @ClientType INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode],[dbo].[InterfaceVersion].[PersistentLinkURL], [dbo].[InterfaceVersion].[SupportDbTitleLists],[dbo].[InterfaceVersion].[DefProfID],[dbo].[InterfaceVersion].[DefLangCode], [dbo].[InterfaceVersion].[NewWin], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceVersion].[SiteID],[dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[PersistentLinkURL],[dbo].[InterfaceVersion].[SupportDbTitleLists],@DefProfID,[dbo].[InterfaceVersion].[DefLangCode],[dbo].[InterfaceVersion].[NewWin], [dbo].[InterfaceVersion].[IsMobile], [dbo].[InterfaceVersion].[AllowPersonalization], [dbo].[InterfaceVersion].[AllowPrimaryDatabases], [dbo].[InterfaceVersion].[InterfaceType] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceVersion].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) VALUES (@InterfaceIDTo, @VersionTo, 'en',@InterfaceName) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceVersionParameters_76] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo , @VersionTo IF @@ERROR <> 0 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceLanguages_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceScreens_76] @InterfaceIDFrom , @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceToolbar_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceFeatures_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceExpanders_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceDocTypes_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceTopics_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceSearchThemes_83] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceDbAuthorities_85] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfaceKnownSearchItems_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopyInterfacePrimaryDatabases_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Exec [dbo].[EAIP_CopyInterfaceDbFeaturesByCategory_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface', @SourceIntf, @TargetIntf COMMIT TRANSACTION END
Create PROCEDURE [dbo].[EAIP_HasProductAvailable_133] (@ProfNo int, @ProductID VARCHAR(10)) AS BEGIN DECLARE @CustType CHAR(1) DECLARE @DbVerNo int SELECT @CustType=[c].[CustType] FROM [dbo].[Customer] c JOIN [dbo].[Profile] p ON c.CustID=p.CustID AND p.ProfNo=@ProfNo SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ProductID AND [dbo].[DbList].[DbLabel]='live' IF @CustType='I' BEGIN SELECT 1 RETURN END ELSE BEGIN IF EXISTS(SELECT 1 FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo AND [dbo].[ProfDatabase].[DbVerNo]=@DbVerNo AND ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], getdate())<0)) BEGIN SELECT 1 RETURN END ELSE BEGIN SELECT 0 RETURN END End END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbInterfaceBrowseOptions_76] (@UserID nvarchar(20), @UserIP varchar(15),@DbVerNo int, @ScreenNo int, @OptionNo int, @Show int, @SeqNo int ) AS BEGIN DECLARE @DbName varchar(30) SELECT @DbName=[dbo].[DbList].[DbName]+'('+ [dbo].[DbList].[DbLabel]+')'FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Interface varchar(30) DECLARE @ScreenDescr nvarchar(255) SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID]+'('+ [dbo].[InterfaceScreen].[Version]+')', @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[BrowseOptionList].[BrowseOptionId] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionNo]=@OptionNo BEGIN TRANSACTION UPDATE [dbo].[DbInterfaceBrowseOption] SET [dbo].[DbInterfaceBrowseOption].[Show]=@Show, [dbo].[DbInterfaceBrowseOption].[SeqNo]=@SeqNo WHERE [dbo].[DbInterfaceBrowseOption].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceBrowseOption].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceBrowseOption].[BrowseOptionNo]=@OptionNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'BrowseOptions','Update DBInterface Browse Option',@Interface, @DbName, @ScreenDescr, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceProfile_70](@CustID varchar(10), @GroupID varchar(10), @InterfaceID varchar(10)) RETURNS varchar(10) BEGIN DECLARE @ProfID varchar(10) SELECT TOP 1 @ProfID=[a].[ProfID] FROM [dbo].[Profile] a WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.InterfaceID = @InterfaceID ORDER by a.SeqNo RETURN @ProfID END
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppServerList_70]( @AppNo int ) AS BEGIN SELECT [s].[ServerNo], [s].[ServerURI], s.Description, ServerStatus=m.Description, [s].[ServerType] FROM dbo.ConfigServer s INNER JOIN dbo.CharValueMap m ON s.ServerStatus=m.FieldCode WHERE [s].[ApplicationNo]=@AppNo AND [m].[FieldName]='ServerStatus' END
CREATE PROCEDURE [dbo].[EAIP_AddCustRights_70](@CustID varchar(10), @PrdOffNo int, @InGroupID varchar(10), @CtrlCustID varchar(10), @CallerUserID nvarchar(20), @CallerUserIP varchar(15), @Mode char(1)='S', @InterfaceID varchar(10)='', @Version varchar(10)='', @EndDate datetime ) AS BEGIN DECLARE @POType char(1) SELECT @POType = [po].[SourceType] FROM EASUPPORT.dbo.ProductOffering po WHERE [po].[PrdOffNo]=@PrdOffNo IF @POType <> 'M' AND @POType <>'D' AND @POType<>'C' return -- nothing to do - no databases are assotiated with 'S' or 'E' type of products/product offerings ----------------------------------------------------------------------------- -- Step 1 -- Start to retrive customer products and Interface for the current subscription and other subscriptions -- referensing the same products. DECLARE @WRK_CustProducts TABLE ( SourceType char(1) , New bit, ProductId varchar(10), InterfaceId varchar(10), Version varchar(10), Limiters varchar(255), DbVerNo int, EndDate datetime, Mode char(1), GracePeriod int, AccessEndDate datetime) --Note: see if table with indexes will do better IF @POType = 'D' Begin INSERT INTO @WRK_CustProducts ( SourceType, New, ProductId, InterfaceId, Version , Limiters, DbVerNo, EndDate, Mode, GracePeriod) SELECT po.SourceType, CASE WHEN cs.PrdOffNo=@PrdOffNo THEN 1 ELSE 0 END AS New, pkg.ProductID, pdi.InterfaceID, pdi.Version, ISNULL(pkg.Limiters,'') AS Limiters, ISNULL(d.DbVerNo,'') As DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod FROM EASUPPORT.dbo.CustSubscription AS cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering AS po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo LEFT OUTER JOIN [dbo].[DbList] AS d WITH (NOLOCK) on pkg.ProductID=d.DbName and d.DbLabel='live' INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product AS pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID AND pr.ProductID=d.DbName INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg2 WITH (NOLOCK) ON pkg.ProductID=pkg2.ProductID WHERE cs.CustID=@CustID AND pkg2.PrdOffNo=@PrdOffNo GROUP BY po.SourceType, CASE WHEN cs.PrdOffNo=@PrdOffNo THEN 1 ELSE 0 END, pkg.ProductID, pdi.InterfaceID, pdi.Version, ISNULL(d.DbVerNo,''), ISNULL(pkg.Limiters,''), cs.EndDate, cs.Mode, pr.GracePeriod End ELSE IF @POType = 'M' BEGIN INSERT INTO @WRK_CustProducts ( SourceType, ProductId, InterfaceId, Version , DbVerNo, EndDate, Mode, GracePeriod) SELECT po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod FROM EASUPPORT.dbo.CustSubscription AS cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering AS po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product AS pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID INNER JOIN [dbo].[Customer] AS c ON c.CustID=cs.CustID INNER JOIN [dbo].[CustExternalDbList] AS d WITH (NOLOCK) ON c.CustNo=d.CustNo WHERE cs.CustID=@CustID AND cs.PrdOffNo=@PrdOffNo GROUP BY po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod UPDATE @WRK_CustProducts Set New=1, Limiters='' END Else If @POType = 'C' Begin Insert @WRK_CustProducts ( SourceType, ProductId, InterfaceId, Version , Limiters, DbVerNo, EndDate, Mode, GracePeriod) Select po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, ISNULL(pkg.Limiters,'') AS Limiters, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod From EASUPPORT.dbo.CustSubscription AS cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering AS po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product AS pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID INNER JOIN EASUPPORT.dbo.CustomerCatalogs AS cc WITH (NOLOCK) ON cc.CustID=cs.CustID AND cc.SubscriptionNo=cs.SubscriptionNo INNER JOIN [dbo].[DbList] AS d WITH (NOLOCK) ON cc.DbName=d.DbName Where cs.CustID=@CustID AND cs.PrdOffNo=@PrdOffNo AND d.DbLabel='Live' Group by po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, ISNULL(pkg.Limiters,''), d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod UPDATE @WRK_CustProducts Set New=1 End --End to retrieve all customer subscription, products and Interface -------------------------------------------------------------------------- --------------------------------------------------------------------------- -- Step 2. --Start AccessEnddate culculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), Graceperiod int, EndDate datetime, AcessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode, Graceperiod, EndDate) select distinct Mode, GracePeriod, EndDate from @WRK_CustProducts update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode='T' Update @WRK_CustProducts SET [AccessEndDate] =wa.AcessEndDate FROM @WRK_CustProducts AS wp INNER JOIN @WRK_AccessEndDate AS wa ON wp.Mode=wa.Mode And wp.EndDate=wa.EndDate and ISNULL(wp.GracePeriod, 0)=ISNULL(wa.Graceperiod, 0) --End AccessEnddate culculation --------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -- Step 3. --Start: Eliminate duplicates for identical products coming from diff. subscriptions /* Always select the longer running subscription, even if the longer running mode is 'T'. Ideally we should set Mode to 'S' if customer has current 'S' even if the 'T' subscription has later AccessEndDate, but to support this we have to have a process to reset the mode when 'S' expired and we don't have it.. :(. In reality it should be a rare event. */ delete @WRK_CustProducts from @WRK_CustProducts AS w INNER JOIN (SELECT DbVerNo, Max(AccessEndDate) AS AccessEndDate FROM @WRK_CustProducts Group By DbVerNo) AS a ON w.DbVerNo=a.DbVerNo and w.AccessEndDate<>a.AccessEndDate /* In case several subscriptions with overlapping products has the same EndDate - there still will be duplicates - needs to remove them */ delete @WRK_CustProducts from @WRK_CustProducts AS w INNER JOIN ( select DbVerNo, InterfaceId, Version,Mode,AccessEndDate from @WRK_CustProducts Group By DbVerNo,InterfaceId, Version, Mode,AccessEndDate Having count(*)>1 ) AS a ON w.DbVerNo=a.DbVerNo and w.InterfaceId=a.InterfaceId and w.Version=a.Version and w.Mode=a.Mode and w.AccessEndDate=a.AccessEndDate Where w.New=0 /* EADM-4355 fix: AddModSubscription call failed due to primary key violation exception. Eliminate 'Trial' subscriptions if there are overlapping products with the same access end date but will different subscription Mode. If not removed, it would cause a primary key violation when data from @WRK_CustProducts gets inserted in @WRK_ProfDbs in Step 4. */ DELETE wcpt from @WRK_CustProducts wcpt Join @WRK_CustProducts wcps ON wcps.DbVerNo=wcpt.DbVerNo and wcps.InterfaceId=wcpt.InterfaceId and wcps.Version = wcpt.Version and wcps.AccessEndDate= wcpt.AccessEndDate AND wcps.Mode='S' Where wcpt.Mode='T' --End: Eliminate duplicates for identical products coming from diff. subscriptions ------------------------------------------------------------------------------------------- ------------------------------------------------------------------------ -- Step 4 -- Start: list of customer profile databases for current subscriptions: DECLARE @ContentAutoAddParamNo int SELECT @ContentAutoAddParamNo=ISNULL([dbo].[CustomParamList].[ParamNo],-1) FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='newContentAutoAddToProfile' DECLARE @WRK_ProfDbs TABLE (ProfNo int, DbVerNo int, Mode char(1), AccessEndDate datetime, Enable int, SeqNo int, SelDefault int, CtrlCustID varchar(10), PdMode char(1), PdAccessEndDate datetime, PdSeqNo int, NewDb int, NewContentAutoAdd int PRIMARY KEY (ProfNo, DbVerNo)) --NOTE: see if temp table with indexes will do better Insert Into @WRK_ProfDbs (ProfNo , DbVerNo, Mode, AccessEndDate, Enable, SelDefault, NewDb, CtrlCustID) SELECT DISTINCT p.ProfNo,-- p.GroupId, p.ProfID, w.ProductID, w.DbVerNo, w.Mode, w.AccessEndDate, CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 AND p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 /* Profile customization exists, Auto Add turned On*/ WHEN cv.ParamValue IS NULL AND p.ProfID=iv.DefProfID and /* No Profile customization exists, However it is Default Profile*/ p.InterfaceID=@InterfaceID and p.Version=@Version and p.GroupID=@InGroupID and p.InterfaceID NOT IN ('eds','wsapi') AND p.Version ='live' --- EHPMEBSCOADMIN-2084 : Release 14.3 THEN 1 /*Set Enable to 1 (On)*/ ELSE 0 END AS Enable, /*Set Enable to 0 (Off) When */ -- CASE /*Profile customization exists, Auto Add disabled OR*/ --- WHEN p.ProfId=iv.DefProfId and /*No Profile customization exists and it is custom profile*/ --- p.InterfaceID=@InterfaceID and --- p.Version=@Version and --w.New=1 and --w.Mode=@Mode and -- p.GroupID=@InGroupID -- THEN 1 -- ELSE 0 END AS Enable, 0, 1, @CtrlCustID FROM [dbo].[Profile] p WITH (NOLOCK) JOIN @WRK_CustProducts w ON p.InterfaceID=w.InterfaceId AND p.Version=w.Version JOIN [dbo].[InterfaceVersion] iv WITH (NOLOCK) ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.CustID=@CustID --AND -- p.InterfaceID=w.InterfaceID AND -- p.Version=w.Version and -- p.InterfaceID=iv.InterfaceID AND -- p.Version=iv.Version --Copy over the current values of Mode, AccessEndDate and SeqNo from profDatabase Update @WRK_ProfDbs SET [PdMode] =pd.Mode, [PdAccessEndDate]= pd.AccessEndDate, [PdSeqNo]=pd.SeqNo, [NewDb]=0 From @WRK_ProfDbs AS w INNER JOIN [dbo].[ProfDatabase] AS pd WITH (NOLOCK) ON w.ProfNo=pd.ProfNo and w.DbVerNo=pd.DbVerNo --------------------------------------------------------------- -- Step 5 ---Start: calculate SeqNo --ask Robert for help ??? IF EXISTS (SELECT 1 FROM @WRK_ProfDbs WHERE NewDb=1) BEGIN Declare @MaxSeqNoTable table (ProfNo int, MaxSeqNo int) Insert @MaxSeqNoTable select p.ProfNo, isnull(max(pdb.SeqNo),0) as MaxSeqNo from [dbo].[ProfDatabase] pdb WITH (NOLOCK) right outer join @WRK_ProfDbs p on pdb.ProfNo=p.ProfNo group by p.ProfNo Update @WRK_ProfDbs set [SeqNo]=a.Pos from (Select a.ProfNo, b.DbVerNo, [a].[MaxSeqNo]+Pos pos from @MaxSeqNoTable a join (Select ProfNo, DbVerNo, Row_Number() Over (Partition by ProfNo Order by DbVerNo) as Pos from @WRK_ProfDbs) b on a.ProfNo=b.ProfNo) a join @WRK_ProfDbs b on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo Where [b].[PdSeqNo] is null END ---End: calculate SeqNo ----------------------------------------------------------------------- -- Step 6 --Mark databases that have to be selected by default - for new databases only --IF @POType='D' or @POType='C' -- Update @WRK_ProfDbs Set SelDefault=1 -- from DbparamList l, DbParamScalarValues v, @WRK_ProfDbs w -- where l.ParamName='defSelected' and l.paramNo=v.paramNo and -- v.DbVerNo=w.DbVerNo and w.PdMode is null and v.paramValue='1' IF @POType='D' or @POType='C' BEGIN DECLARE @ParamNo int DECLARE @InheritFromPhysical BIT SELECT @ParamNo=[dbo].[DbParamList].[ParamNo], @InheritFromPhysical = [dbo].[DbParamList].[InheritFromPhysical] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] ='defSelected'; -- If it is not subset database or InheritFromPhysical is 0: Use param value for dbverno in @WRK_ProfDbs -- If it is subset database and InheritFromPhysical is 1: Use param value from physical dbverno UPDATE @WRK_ProfDbs SET [SelDefault] = 1 FROM @WRK_ProfDbs w LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = w.DbVerNo AND sv.ParamNo = @ParamNo LEFT OUTER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = w.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON psv.DbVerNo = ss.PhysDbVerNo AND psv.ParamNo = @ParamNo WHERE w.PdMode IS NULL AND ( ((@InheritFromPhysical = 0 OR ss.PhysDbVerNo IS NULL) AND sv.ParamValue='1') OR (@InheritFromPhysical = 1 AND ss.PhysDbVerNo IS NOT NULL AND psv.ParamValue='1') ) END -- Step 7 ------------------------------------------------------------------------------------------- -- Process hidden limiters is any applicable. ------------------------------------------------------------------------------------------------ DECLARE @WRK_ProfDbLimiter2 TABLE (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int, SeqNo int) IF (@POType='D' or @POType='C' ) AND EXISTS (Select 1 FROM @WRK_CustProducts WHERE LEN(Limiters)>0) BEGIN DECLARE @ProfNo int DECLARE @DbVerNO int DECLARE @LimiterList varchar(100) DECLARE @IntfScreenNo int DECLARE C1_C CURSOR FOR SELECT wd.ProfNo, wd.DbVerNo, wp.Limiters, ins.IntfScreenNo FROM @WRK_ProfDbs AS wd INNER JOIN @WRK_CustProducts AS wp ON wd.DbVerNo=wp.DbVerNo INNER JOIN [dbo].[Profile] AS p WITH (NOLOCK) ON p.ProfNo=wd.ProfNo INNER JOIN [dbo].[InterfaceScreen] AS ins WITH (NOLOCK) ON p.InterfaceID = ins.InterfaceID AND p.Version=ins.Version WHERE wp.Limiters <> '' GROUP BY wd.ProfNo, wd.DbVerNo,wp.Limiters, ins.IntfScreenNo OPEN C1_C FETCH NEXT FROM C1_C INTO @ProfNo,@DbVerNo,@LimiterList,@IntfScreenNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @WRK_ProfDbLimiter2(ProfNo,DbVerNo,IntfScreenNo,LimiterNo,SeqNo) SELECT @ProfNo,@DbVerNo,@IntfScreenNo, ll.LimiterNo,-1 FROM dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a INNER JOIN [dbo].[LimiterList] AS ll ON a.Item = ll.LimiterId WHERE ll.DbLabel='live' IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C ROLLBACK TRANSACTION RETURN END END FETCH NEXT FROM C1_C INTO @ProfNo,@DbVerNO,@LimiterList,@IntfScreenNo END CLOSE C1_C DEALLOCATE C1_C /**************************************** Now delete all existing profile database Limiters *****************************************/ DELETE @WRK_ProfDbLimiter2 FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[ProfDbLimiter2] AS b WITH (NOLOCK) ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo AND a.IntfScreenNo=b.IntfScreenNo AND a.LimiterNo=b.LimiterNo END -- Step 8 -------------------------------------------------- -- set enabled based on Interface and SourceType properties -------------------------------------------------- Update @WRK_ProfDbs set [Enable]=newEnable, [SelDefault]=newSelDefault from @WRK_ProfDbs wpdb join (select p.ProfNo, dbl.DbVerNo, newEnable=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc.StringValue, 'Standard') = 'Standard' then wpdb.Enable when isnull(istc.StringValue, 'Standard') = 'Disable' then 0 when isnull(istc.StringValue, 'Standard') = 'Enable' then 1 end, newSelDefault=case when (ip.DbVerNo is not null and iv.AllowPrimaryDatabases =1) then 1 when isnull(istc2.StringValue, 'Standard')= 'Standard' then wpdb.SelDefault when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from [dbo].[Profile] p join @WRK_ProfDbs wpdb on p.ProfNo=wpdb.ProfNo join [dbo].[DbList] dbl on wpdb.DbVerNo=dbl.DbVerNo join [dbo].[InterfaceVersion] iv on (p.InterfaceID=iv.InterfaceID and p.Version=iv.Version) left outer join [dbo].[InterfacePrimaryDatabases] ip on (p.InterfaceID=ip.InterfaceID and p.Version=ip.Version and dbl.DbVerNo=ip.DbVerNo) left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseAddRule' left outer join [dbo].[InterfaceSourceTypeConfig] istc2 on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and dbl.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule') a on wpdb.ProfNo=a.ProfNo and wpdb.DbVerNo=a.DbVerNo --EHPMEBSCOADMIN-1343: When a subscription is added/modified ,the non-searchable databases are enabled by default. -- This update would override ALL other existing business rules around "enabling" the databases (including NewContent Auto-add feature) on the profile. Update @WRK_ProfDbs set [Enable]=1 from @WRK_ProfDbs wpdb JOIN [dbo].[DbList] d WITH (NOLOCK) ON wpdb.DbVerNo=d.DbVerNo AND d.NonSearchableDb=1 -- EhpmEbscoAdmin-1447 -- EAIF_GetHiddenProfDbList_133 returns all Databases that have been configured to not show on the Profile Database List -- For each of these Databases we need to configure them to be enabled and Selected by default for all Profiles UPDATE @WRK_ProfDbs set [Enable]=1, [SelDefault]=1 from @WRK_ProfDbs wpdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON wpdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS not null ----------------------------------------------------- --Debug version - output collected data and return ------------------------------------------------------ IF EXISTS (SELECT 1 FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName]='addCustRightsDebug' AND [dbo].[AdminState].[ParamValue]='true') BEGIN SELECT * FROM @WRK_CustProducts SELECT p.GroupID, p.ProfID, p.InterfaceID, p.Version, db.DbName,wp.NewDb AS TobeAdded, wp.Mode, wp.AccessEndDate, wp.Enable, wp.SeqNo, wp.SelDefault, wp.CtrlCustID, wp.PdMode As CurrMode, wp.PdAccessEndDate As CurrAccessEndDate, wp.PdSeqNo As CurrSeqNo FROM @WRK_ProfDbs AS wp INNER JOIN [dbo].[Profile] p WITH (NOLOCK) ON wp.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] db WITH (NOLOCK) ON wp.DbVerNo=db.DbVerNo AND wp.DbVerNo=db.DbVerNo ORDER BY p.GroupID, p.ProfID, db.DbName SELECT * FROM @WRK_ProfDbLimiter2 RETURN END --//////////////////////////////////////////////////////////// --------------------------------------------------------------- -- DATA UPDATE --------------------------------------------------------------- --///////////////////////////////////////////////////////////// BEGIN TRY BEGIN TRANSACTION --------------------------------------------------------------------- --------------------------------------------------------------------- --Step 9 --Start update data in profDatabase --CtrCustID IF (@POType='D' or @POType='C' ) UPDATE [dbo].[ProfDatabase] Set [CtrlCustID]=dbo.EAIF_AppendCtrlCustID_70(pd.CtrlCustID, wd.CtrlCustID) FROM [dbo].[ProfDatabase] AS pd INNER JOIN @WRK_ProfDbs AS wd ON pd.ProfNo=wd.ProfNo AND pd.DbVerNo=wd.DbVerNo WHERE pd.CtrlCustID <> dbo.EAIF_AppendCtrlCustID_70(pd.CtrlCustID, wd.CtrlCustID) OR (pd.CtrlCustID is null AND wd.CtrlCustID is not null) OR (pd.CtrlCustID is not null AND wd.CtrlCustID is null) --a. Update existing databases if needed UPDATE [dbo].[ProfDatabase] SET ProfDatabase.Mode = a.Mode FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.Mode<>a.PdMode UPDATE [dbo].[ProfDatabase] SET ProfDatabase.AccessEndDate= a.AccessEndDate FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.AccessEndDate<>a.PdAccessEndDate UPDATE [dbo].[ProfDatabase] SET ProfDatabase.Enable = a.Enable FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.Enable=1 AND b.Enable=0 --b. Add new databases INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable], [dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter], [dbo].[ProfDatabase].[CtrlCustID], [dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate]) SELECT ProfNo, DbVerNo, SeqNo, Enable, SelDefault, 0, CtrlCustID, Mode, AccessEndDate FROM @WRK_ProfDbs WHERE NewDb=1 AND DbVerNo>0 -- Restore archived ProfileDbLimiters DECLARE @ProfDbTable TABLE (ProfNo INT, DbVerNo INT) INSERT @ProfDbTable SELECT wp.ProfNo, wp.DbVerNo FROM @WRK_ProfDbs wp JOIN [dbo].[DbList] dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.ArchiveProfSettings=1 WHERE [wp].[NewDb]=1 AND dbl.DbVerNo>0 INSERT [dbo].[ProfDbLimiter2] ([dbo].[ProfDbLimiter2].[ProfNo], [dbo].[ProfDbLimiter2].[DbVerNo], [dbo].[ProfDbLimiter2].[IntfScreenNo], [dbo].[ProfDbLimiter2].[LimiterNo], [dbo].[ProfDbLimiter2].[Show], [dbo].[ProfDbLimiter2].[DefValue], [dbo].[ProfDbLimiter2].[SeqNo]) SELECT apdbl.ProfNo, apdbl.DbVerNo, apdbl.IntfScreenNo, apdbl.LimiterNo, apdbl.Show, apdbl.DefValue, apdbl.SeqNo from EASUPPORT.dbo.ArchiveProfDbLimiter2 apdbl JOIN @ProfDbTable pdb ON apdbl.ProfNo=pdb.ProfNo AND apdbl.DbVerNo=pdb.DbVerNo DELETE EASUPPORT.dbo.ArchiveProfDbLimiter2 FROM EASUPPORT.dbo.ArchiveProfDbLimiter2 apdbl JOIN @ProfDbTable pdb ON apdbl.ProfNo=pdb.ProfNo AND apdbl.DbVerNo=pdb.DbVerNo INSERT [dbo].[ProfDbLimiterCaption2] ([dbo].[ProfDbLimiterCaption2].[ProfNo], [dbo].[ProfDbLimiterCaption2].[DbVerNo], [dbo].[ProfDbLimiterCaption2].[IntfScreenNo], [dbo].[ProfDbLimiterCaption2].[LimiterNo], [dbo].[ProfDbLimiterCaption2].[LangCode], [dbo].[ProfDbLimiterCaption2].[Caption]) SELECT apdblc.ProfNo, apdblc.DbVerNo, apdblc.IntfScreenNo, apdblc.LimiterNo, apdblc.LangCode, apdblc.Caption FROM EASUPPORT.dbo.ArchiveProfDbLimiterCaption2 apdblc JOIN @ProfDbTable pdb ON apdblc.ProfNo=pdb.ProfNo AND apdblc.DbVerNo=pdb.DbVerNo DELETE EASUPPORT.dbo.ArchiveProfDbLimiterCaption2 FROM EASUPPORT.dbo.ArchiveProfDbLimiterCaption2 apdblc JOIN @ProfDbTable pdb ON apdblc.ProfNo=pdb.ProfNo AND apdblc.DbVerNo=pdb.DbVerNo -- Restore archived ProfileClusters DECLARE @ClustersTable TABLE (ClustNo INT) INSERT @ClustersTable SELECT a.ClustNo from (SELECT dbc.ClustNo FROM @WRK_ProfDbs wp JOIN [dbo].[DbList] dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.ArchiveProfSettings=1 JOIN [dbo].[DbCluster] dbc ON dbl.DbVerNo=dbc.DbVerNo AND dbc.Enable=1 WHERE [wp].[NewDb]=1 AND dbl.DbVerNo>0) a LEFT OUTER join (SELECT dbc.ClustNo FROM @WRK_ProfDbs wp JOIN [dbo].[DbList] dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.ArchiveProfSettings=1 RIGHT OUTER JOIN [dbo].[DbCluster] dbc ON dbl.DbVerNo=dbc.DbVerNo WHERE dbl.DbVerNo IS NULL AND [wp].[NewDb]=1 AND dbl.DbVerNo>0) b ON a.ClustNo=b.ClustNo WHERE b.ClustNo IS NULL INSERT [dbo].[ProfileClusters2] ([dbo].[ProfileClusters2].[ProfNo], [dbo].[ProfileClusters2].[ClustNo], [dbo].[ProfileClusters2].[Show], [dbo].[ProfileClusters2].[SeqNo], [dbo].[ProfileClusters2].[DefaultToOpen]) SELECT DISTINCT apc.ProfNo, apc.ClustNo, apc.Show, apc.SeqNo, apc.DefaultToOpen FROM EASUPPORT.dbo.ArchiveProfileClusters2 apc JOIN @ClustersTable ct ON apc.ClustNo=ct.ClustNo JOIN [dbo].[Profile] p ON apc.ProfNo=p.ProfNo AND p.CustID=@CustID DELETE EASUPPORT.dbo.ArchiveProfileClusters2 FROM EASUPPORT.dbo.ArchiveProfileClusters2 apc JOIN @ClustersTable ct ON apc.ClustNo=ct.ClustNo JOIN [dbo].[Profile] p ON apc.ProfNo=p.ProfNo AND p.CustID=@CustID INSERT [dbo].[ProfileClusterCaptions] ([dbo].[ProfileClusterCaptions].[ProfNo], [dbo].[ProfileClusterCaptions].[ClustNo], [dbo].[ProfileClusterCaptions].[LangCode], [dbo].[ProfileClusterCaptions].[Caption]) SELECT DISTINCT apcc.ProfNo, apcc.ClustNo, apcc.LangCode, apcc.Caption FROM EASUPPORT.dbo.ArchiveProfileClusterCaptions apcc JOIN @ClustersTable ct ON apcc.ClustNo=ct.ClustNo JOIN [dbo].[Profile] p ON apcc.ProfNo=p.ProfNo AND p.CustID=@CustID DELETE EASUPPORT.dbo.ArchiveProfileClusterCaptions FROM EASUPPORT.dbo.ArchiveProfileClusterCaptions apcc JOIN @ClustersTable ct ON apcc.ClustNo=ct.ClustNo JOIN [dbo].[Profile] p ON apcc.ProfNo=p.ProfNo AND p.CustID=@CustID -- Restore archived custom Toolbar UPDATE dbo.CustomParamXmlValues SET [ParamValue]=ISNULL(cpxv.ParamValue, '') + a.ParamValue FROM [dbo].[CustomParamXmlValues] cpxv join (SELECT apzv.ProfNo, apzv.ParamNo, apzv.ParamValue FROM @WRK_ProfDbs wp JOIN [dbo].[DbList] dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.DbName='edspub' JOIN [dbo].[CustomParamDbDependencies] cpdbd ON wp.DbVerNo=cpdbd.DbVerNo AND cpdbd.RetainProfileValues=1 JOIN [dbo].[CustomParamList] cpl ON cpdbd.ParamNo=cpl.ParamNo AND cpl.ParamName='customToolbar' JOIN EASUPPORT.dbo.ArchiveProfXmlValues apzv ON wp.ProfNo=apzv.ProfNo AND wp.DbVerNo=apzv.DbVerNo JOIN dbo.Profile p ON apzv.ProfNo=p.ProfNo AND p.CustID=@CustID) a ON cpxv.TargetNo=a.ProfNo AND cpxv.ParamNo=a.ParamNo DELETE EASUPPORT.dbo.ArchiveProfXmlValues FROM @WRK_ProfDbs wp JOIN [dbo].[DbList] dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.DbName='edspub' JOIN [dbo].[CustomParamDbDependencies] cpdbd ON wp.DbVerNo=cpdbd.DbVerNo AND cpdbd.RetainProfileValues=1 JOIN [dbo].[CustomParamList] cpl ON cpdbd.ParamNo=cpl.ParamNo AND cpl.ParamName='customToolbar' JOIN EASUPPORT.dbo.ArchiveProfXmlValues apzv ON wp.ProfNo=apzv.ProfNo AND wp.DbVerNo=apzv.DbVerNo JOIN dbo.Profile p ON apzv.ProfNo=p.ProfNo AND p.CustID=@CustID IF (@POType='D' or @POType='C' ) BEGIN --If customer is getting active access to an additional database -- customer local collections LastUpdateDate should be refreshed to force -- EPLR bitmap rebuild for all not eonline local collections. IF EXISTS (SELECT 1 FROM @WRK_ProfDbs a WHERE a.NewDb=1 and [a].[Enable]=1 ) UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GetDate() WHERE [dbo].[Collection].[CustID]=@CustID and [dbo].[Collection].[Eonline]=0 and [dbo].[Collection].[IsDeleted] = 0 --Hidden Limiters UPDATE @WRK_ProfDbLimiter2 SET [SeqNo] = dbl.SeqNo FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[DbLimiter] AS dbl ON a.DbVerNo=dbl.DbVerNo AND dbl.LimiterNo=a.LimiterNo INSERT INTO [dbo].[ProfDbLimiter2]([dbo].[ProfDbLimiter2].[ProfNo],[dbo].[ProfDbLimiter2].[DbVerNo],[dbo].[ProfDbLimiter2].[IntfScreenNo],[dbo].[ProfDbLimiter2].[LimiterNo],[dbo].[ProfDbLimiter2].[Show],[dbo].[ProfDbLimiter2].[DefValue],[dbo].[ProfDbLimiter2].[SeqNo]) SELECT ProfNo,DbVerNo,IntfScreenNo,LimiterNo,0,'On',SeqNo FROM @WRK_ProfDbLimiter2 END /************************************************************************* Copy customization from trial profile to sale profile ***************************************************************************/ IF @Mode='S' AND @InGroupID='main' exec [dbo].[EAIP_CopyCustomizationFromTrial2Main_88] @CustID, @PrdOffNo,@InterfaceID,@Version -------------------------------------------------------------------------------- --LogActivity -------------------------------------------------------------------------------- DECLARE @ToDay datetime SET @ToDay=getdate() INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, @ToDay, 'Profiles', 'Add Database to Profile', (p.CustID+'.'+p.GroupID+'.'+p.ProfID) as Prof, dbl.DbName, NULL, NULL, NULL FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[Profile] AS p WITH (NOLOCK) ON a.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] AS dbl WITH (NOLOCK) ON a.DbVerNo=dbl.DbVerNo WHERE a.DbVerNo>0 UNION ALL SELECT @CallerUserID, @CallerUserIP, @ToDay, 'Profiles', 'Add ProductOffering Limiters for a Profile', (p.CustID+'.'+p.GroupID+'.'+p.ProfID) as Prof, dbl.DbName, ins.Description,ll.LimiterId, '' FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[Profile] AS p WITH (NOLOCK) ON a.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] AS dbl WITH (NOLOCK) ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] AS ins WITH (NOLOCK) ON p.InterfaceID = ins.InterfaceID AND p.Version=ins.Version INNER JOIN [dbo].[LimiterList] AS ll WITH (NOLOCK) ON ll.LimiterNo = a.LimiterNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE procedure [dbo].[EAIP_GetCustomerGroupListCasa_202] (@CustID varchar(10)) as Begin DECLARE @ParamNo int declare @DefValue varchar(4000) declare @tempTable table (CustID varchar(10), GroupID varchar(10), PersonalizationEnabledProfileCount int) Insert @tempTable select ug.CustID, ug.GroupID, SUM(convert(int, isnull(iv.AllowPersonalization, 0))) from [dbo].[UserGroup] ug left outer join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 where ug.CustID=@CustID Group by ug.CustID, ug.GroupID SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' select c.CustID, ug.GroupID, ug.GroupType, ug.GroupName, ug.GroupEmail, isnull(isnull(ParamValue, DefValue),@DefValue) as AllowPersonalization, t.PersonalizationEnabledProfileCount from [dbo].[Customer] c join [dbo].[UserGroup] ug on c.CustID=ug.CustID join @tempTable t on ug.CustID=t.CustID and ug.GroupID=t.GroupID left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70(CustType) where c.CustID = @CustID and GroupType not in ('T') order by case when ug.GroupID = 'main' then 0 else ug.GroupNo end End
CREATE PROCEDURE [dbo].[EAUI_GetSystemCustomLinkCollections_70](@Category varchar(50)) AS BEGIN SELECT [dbo].[Collection].[CustID], [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID] = 'system' AND [dbo].[Collection].[CustomLink] = 1 AND [dbo].[Collection].[Category]=@Category AND [dbo].[Collection].[IsDeleted] = 0 Order by [dbo].[Collection].[ColName] END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceFeatures_81] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceFeatures_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Features', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[shane_GetDBClusters_runquery](@DbVerNo Int, @LangCode Varchar(10)) AS BEGIN DECLARE @DbLabel Varchar(10), @DbType Smallint SELECT @DbLabel = d.DbLabel, @DbType = d.DbType, @DbVerNo = ISNULL(s.PhysDbVerNo,d.DbVerNo) -- get DBClusters from PhysicalDB if database is SubsetDB FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbVerNo = @DbVerNo IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' IF (@DbType = 1) SELECT @DbVerNo DBVerNo, cl.ClustId ClusterId, gcc.Caption, CASE WHEN gc.Show=1 THEN 'Yes' ELSE 'No' END AS Show, ISNULL(dc.DbSearchTag, gc.Tag) AS SearchTag, CASE WHEN (dc.DbSearchTag IS NULL) THEN 'global' ELSE 'override' END AS SearchTagSource FROM [dbo].[ClusterList] cl INNER JOIN [dbo].[GlobalCluster] gc on cl.ClustId = gc.ID INNER JOIN [dbo].[GlobalClusterCaption] gcc ON cl.ClustId = gcc.ID LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE cl.DbLabel = @DbLabel AND gcc.LangCode = @LangCode AND ((cl.AutoAdd2Db = 1 AND (dc.Enable Is Null OR dc.Enable = 1)) OR dc.Enable = 1) END
CREATE PROCEDURE [dbo].[EAIP_CopyClusterCaptions_80] (@ClusterID varchar(20), @CaptionLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN --Begin of Captions init DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(8000) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim char(3) SET @LangDelim ='|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList)) --End of Captions init DELETE FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID]=@ClusterID IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[GlobalClusterCaption]([dbo].[GlobalClusterCaption].[ID],[dbo].[GlobalClusterCaption].[LangCode],[dbo].[GlobalClusterCaption].[Caption]) SELECT @ClusterID, cp.Value, ISNULL(cp.Item,'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerBranding_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255), @ParamValue nvarchar(max)) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int SELECT @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE BEGIN -- Make sure the branding by the same name does not exist DECLARE @BrName nvarchar(255) SET @BrName = dbo.EAIF_GetXmlAttribValue_70(@ParamValue,'name' ) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND dbo.EAIF_GetXmlAttribValue_70([dbo].[CustomParamXmlValues].[ParamValue],'name' )=@BrName) BEGIN RAISERROR ('The Branding %s already exists!',16,-1,@BrName) RETURN END DECLARE @NewItemName varchar(255) EXEC [dbo].[EAIPO_GetCustomerBrandingItemName_70] @CustID, @NewItemName OUTPUT INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) VALUES (@TargetNo,'C', @ParamNo,@NewItemName,@ParamValue) END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Update Branding Item', @CustID, @ItemName END
CREATE PROCEDURE [dbo].[EAUI_GetMdbLimiterList_89] (@DbLabel varchar(10)) AS SELECT mdbll.LimiterNo, mdbll.LimiterID, [mdbll].[Description], lct.ControlName, mdbll.LogicalOpCode, [mdbll].[SearchString] FROM [dbo].[MDbLimiterList] mdbll JOIN [dbo].[LimiterControlType] lct ON (mdbll.ControlType = lct.ControlType) WHERE mdbll.DbLabel = @DbLabel Order by [mdbll].[LimiterID]
CREATE TRIGGER dbo.[ProfileDeletedTrigger] ON dbo.Profile AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO dbo.ChangedProfile ( [ProfNo] ,[CustID] ,[GroupID] ,[ProfID] ,[InterfaceID] ,[Version] ,[MarketID] ,[STMode] ,[DbLabel] ,[ProfName] ,[DefLangCode] ,[SeqNo] ,[URL] ,[IsDeleted] ) SELECT [ProfNo] ,[CustID] ,[GroupID] ,[ProfID] ,[InterfaceID] ,[Version] ,[MarketID] ,[STMode] ,[DbLabel] ,[ProfName] ,[DefLangCode] ,[SeqNo] ,[URL] , 1 AS [IsDeleted] FROM deleted; END
CREATE PROCEDURE EATL_UpdateInterfaceMultiDbSTS_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,InterfaceID VARCHAR(50) ,Version VARCHAR(50) ,MultiDbSTSID VARCHAR(10) ,Caption NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #Objects ( InterfaceID ,Version ,MultiDbSTSID ,Caption ,MouseOverText ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(50)') ,m.c.value('(./Version)[1]', 'varchar(50)') ,m.c.value('(./MultiDbStsId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@MultiDbSTSID VARCHAR(10) ,@Caption NVARCHAR(255) ,@MouseOverText NVARCHAR(255) ,@InterfaceID VARCHAR(50) ,@Version VARCHAR(50) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@MultiDbSTSID = MultiDbSTSID ,@Caption = Caption ,@MouseOverText = MouseOverText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceMultiDbSTS_90] @UserID ,@UserIP ,@InterfaceID ,@Version ,@MultiDbSTSID ,@Caption ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
--sql content merged from file: \StoredProcedures\EPCS_GetExternalDbMappingList_94.sql Create Procedure [dbo].[EPCS_GetExternalDbMappingList_94] as select [dbles].[ExternalDbID], [dbl].[DbName] from [dbo].[DbListExternalSource] dbles join [dbo].[DbList] dbl on dbles.DbVerNo=dbl.DbVerNo
Create PROCEDURE [dbo].[EAUI_GetInterfaceCustomParamDetails_91](@ParamNo int, @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN Declare @AreDefaults bit Set @AreDefaults=0 if not exists(Select 1 from [dbo].[InterfaceCustomParamEditDetail] where [dbo].[InterfaceCustomParamEditDetail].[InterfaceID]=@InterfaceID and [dbo].[InterfaceCustomParamEditDetail].[Version]=@Version and [dbo].[InterfaceCustomParamEditDetail].[ParamNo]=@ParamNo) Set @AreDefaults=1 SELECT cpl.ParamName, cpl.ParamType, isnull(icped.PromptText, cped.PromptText) PromptText, isnull(icped.HelpText, cped.HelpText) HelpText, isnull(icped.HintText, cped.HintText) HintText, isnull(icped.ChildEditPromptText, cped.ChildEditPromptText) ChildEditPromptText, isnull(isnull(icped.ValueTemplate, cped.ValueTemplate),'''') ValueTemplate, cped.EditControl EditControl, @AreDefaults AreDefaults FROM [dbo].[CustomParamList] cpl left outer Join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo=cped.ParamNo left outer Join [dbo].[InterfaceCustomParamEditDetail] icped on cpl.ParamNo=icped.ParamNo And icped.InterfaceID=@InterfaceID and icped.Version=@Version where cpl.ParamNo=@ParamNo END
CREATE PROCEDURE [dbo].[EAIPO_AddCollection_70] ( @CustID varchar(10), @ColID nvarchar(50), @ColName nvarchar(50), @Exclude bit=0, @Notes nvarchar(255)=null, @SharedFrom int=0, @AddAlternates bit=1, @ColNo int OUTPUT ) AS BEGIN DECLARE @SrcCustID varchar(10) DECLARE @SrcColID varchar(10) DECLARE @ReqId int DECLARE @IsDeleted bit SELECT @ColID=lower(@ColID) SET @ColNo=0 SELECT @ColNo=[dbo].[Collection].[ColNo], @IsDeleted = [dbo].[Collection].[IsDeleted] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID IF @IsDeleted = 1 BEGIN RAISERROR ('The old version of collection "%s.%s" currently is deleting',16,-1,@CustID,@ColID) RETURN END IF @ColNo=0 BEGIN IF @SharedFrom > 0 SELECT @SrcCustID=[dbo].[Collection].[CustID], @SrcColID=[dbo].[Collection].[ColID], @Exclude=[dbo].[Collection].[Exclude], @AddAlternates=[dbo].[Collection].[AddAlternates] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo]=@SharedFrom AND [dbo].[Collection].[IsDeleted] = 0 INSERT INTO dbo.Collection([dbo].[Collection].[CustID], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], [dbo].[Collection].[Notes], [dbo].[Collection].[SharedFrom], [dbo].[Collection].[Exclude], [dbo].[Collection].[AddAlternates], [dbo].[Collection].[LastUpdateDate]) VALUES(@CustID, @ColID, @ColName, @Notes, @SharedFrom, @Exclude, @AddAlternates, GETDATE()) /* IF @SharedFrom > 0 begin EXEC @ReqId=EXP_DoAddRequest 'system','CusCol',@SrcCustID,@SrcColID,null END */ /* Get the newly created colno */ SELECT @ColNo=[dbo].[Collection].[ColNo] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID END ELSE BEGIN RAISERROR('The Collection "%s.%s" already exists, insert failed.',16,-1,@CustID,@ColID) RETURN END END
CREATE PROCEDURE [dbo].[EPC_DeleteDbVolumes_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DbVolume', 'Delete', @DbName, @DbLabel EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId ,@UserIP, @DbName, @DbLabel, 'Delete this.Database Volumes' DELETE FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseVolume_70]( @DbVerNo int, @Volume varchar(20)) AS BEGIN SELECT [dbo].[DbVolume].[Volume], [dbo].[DbVolume].[EpkPath], [dbo].[DbVolume].[LastUpdateDate] FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@DbVerNo AND [dbo].[DbVolume].[Volume]=@Volume END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceToolbar_81] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceToolbar_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Toolbar Items', @SourceIntf, @TargetIntf END
CREATE PROCEDURE dbo.EAIP_InterfaceParam_Resort_91 ( @editGroup VARCHAR(100), @editSubGroup VARCHAR(100), @paramNameToSort VARCHAR(100), @sortType VARCHAR(10), @paramNameToCompare VARCHAR(100) = '' ) AS BEGIN --@sortType are: First, Last, Before, After --ex: exec EAIP_InterfaceParam_Resort_91 'srck5', 'live', 'before', 'durableLinkingPermitted', 'alertfeedPermitted' --would place param 'durableLinkingPermitted' before param 'alertfeedPermitted' for live version of interface 'srck5' DECLARE @TempParamTable TABLE ( paramNo INT, paramName Varchar(100), seqNo INT ) INSERT INTO @TempParamTable SELECT c.ParamNo, l.ParamName, c.SeqNo FROM [dbo].[CustomParamList] l INNER JOIN [dbo].[CustomParamEditDetail] c ON l.ParamNo = c.ParamNo WHERE c.EditGroup = @editGroup AND c.EditSubGroup = @editSubGroup DECLARE @seqNoToCompare INT SELECT @seqNoToCompare = seqNo FROM @TempParamTable WHERE paramName = @paramNameToCompare IF @sortType = 'First' BEGIN UPDATE @TempParamTable SET seqNo = (SELECT MIN(seqNo) FROM @TempParamTable) - 1 WHERE paramName = @paramNameToSort END ELSE IF @sortType = 'Last' BEGIN UPDATE @TempParamTable SET seqNo = (SELECT MAX(seqNo) FROM @TempParamTable) + 1 WHERE paramName = @paramNameToSort END ELSE IF @sortType = 'Before' AND EXISTS (SELECT 1 FROM @TempParamTable WHERE paramName = @paramNameToCompare) BEGIN UPDATE @TempParamTable SET seqNo = seqNo - 1 WHERE seqNo < @seqNoToCompare UPDATE @TempParamTable SET seqNo = @seqNoToCompare - 1 WHERE paramName = @paramNameToSort END ELSE IF @sortType = 'After' AND EXISTS (SELECT 1 FROM @TempParamTable WHERE paramName = @paramNameToCompare) BEGIN UPDATE @TempParamTable SET seqNo = seqNo + 1 WHERE seqNo > @seqNoToCompare UPDATE @TempParamTable SET seqNo = @seqNoToCompare + 1 WHERE paramName = @paramNameToSort END ELSE BEGIN RAISERROR ('Could not resort params', 0,1) RETURN END UPDATE [dbo].[CustomParamEditDetail] SET [SeqNo] = tt.NewSeqNo FROM ( SELECT paramNo, RANK() OVER (ORDER BY seqNo) AS NewSeqNo FROM @TempParamTable ) tt INNER JOIN [dbo].[CustomParamEditDetail] c ON tt.paramNo = c.ParamNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateDBInterfaceLimiter_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterNo int, @ControlType int, @Show bit, @DefValue varchar(255)) AS BEGIN DECLARE @LimiterId varchar(2) DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) DECLARE @Interface varchar(10) DECLARE @Version varchar(10) DECLARE @ScreenDescr nvarchar(255) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID], @Version =[dbo].[InterfaceScreen].[Version], @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @GlobalControlType int SELECT @GlobalControlType=convert(int, [dbo].[LimiterList].[ControlType]) FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo IF @GlobalControlType = @ControlType SELECT @ControlType=null DECLARE @SeqNo int SELECT @SeqNo=[dbo].[DbLimiter].[SeqNo] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiter].[LimiterNo]=@LimiterNo IF @GroupNo=-1 SELECT @GroupNo = null BEGIN TRANSACTION BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ([dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo] =@GroupNo)) UPDATE [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[ControlType]=@ControlType, [dbo].[DbInterfaceLimiter].[Show]=@Show, [dbo].[DbInterfaceLimiter].[DefValue]=@DefValue WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ( [dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo] =@GroupNo) ELSE INSERT INTO [dbo].[DbInterfaceLimiter]([dbo].[DbInterfaceLimiter].[DbVerNo],[dbo].[DbInterfaceLimiter].[IntfScreenNo],[dbo].[DbInterfaceLimiter].[LimiterNo],[dbo].[DbInterfaceLimiter].[ControlType],[dbo].[DbInterfaceLimiter].[Show],[dbo].[DbInterfaceLimiter].[DefValue], [dbo].[DbInterfaceLimiter].[GroupNo], [dbo].[DbInterfaceLimiter].[SeqNo]) VALUES (@DbVerNo,@ScreenNo,@LimiterNo,@ControlType,@Show,@DefValue,@GroupNo,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Db Interfcae Limiter', 16, -1) RETURN END END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Limiter','Update Db Interface Limiter',@LimiterId, @Interface, @Version, @ScreenDescr COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceThemeCaptions_83](@InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @Captions = @Captions + N''+ ISNULL(it.Caption,gt.Caption) +N' ' FROM (SELECT st.ThemeID, ISNULL(sc.LangCode, '') AS LangCode, ISNULL(sc.Caption,N'') AS Caption FROM [dbo].[SearchTheme] st LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc ON st.ThemeID=sc.ThemeID WHERE st.ThemeID = @ThemeID) gt LEFT OUTER JOIN (SELECT i.ThemeID, ISNULL(ic.LangCode, '') AS LangCode, ISNULL(ic.Caption,N'') AS Caption FROM [dbo].[InterfaceSearchTheme] i LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic ON i.InterfaceThemeNo=ic.InterfaceThemeNo WHERE [i].[ThemeID] = @ThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version) it ON gt.ThemeID=it.ThemeID AND gt.LangCode=it.LangCode RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppServiceServersList_70](@AppId varchar(20), @LiveServerType char(1), @TestServerType char(1), @SelChoice smallint) AS BEGIN SELECT @SelChoice as 'SelectMe', a.ServerNo, a.ServerURI, a.Description FROM dbo.ConfigServer a INNER JOIN dbo.ConfigApplication b ON a.ApplicationNo=b.ApplicationNo WHERE a.ApplicationNo=dbo.EAIF_GetConfigApplicationNo_70(@AppId) AND b.NotifyProtocol<>'none' AND a.ServerURI LIKE b.NotifyProtocol+'%' AND a.ServerStatus='A' AND (a.ServerType=@LiveServerType OR a.ServerType=@TestServerType) END
CREATE PROCEDURE [dbo].[EAIP_AddCustRightsToSharedResources_100]( @CallerUserID nvarchar(20), @CallerUserIP varchar(15), @CustID varchar(10), @PrdOffNo int, @ResourceID varchar(10), @InGroupID varchar(10), @Mode char(1)='S', @InterfaceID varchar(10)='', @Version varchar(10)='', @EndDate datetime ) AS BEGIN DECLARE @POType char(1) SELECT @POType = [po].[SourceType] FROM EASUPPORT.dbo.ProductOffering po WHERE [po].[PrdOffNo]=@PrdOffNo IF @POType<>'C' return -- only catalogs and IRs are suported ----------------------------------------------------------------------------- -- Step 1 -- Start to retrive customer products and Interface for the current subscription and other subscriptions -- referencing the same products. DECLARE @WRK_CustProducts TABLE ( InterfaceId varchar(10), Version varchar(10), DbVerNo int, EndDate datetime, Mode char(1), GracePeriod int, AccessEndDate datetime) --Note: see if table with indexes will do better Insert @WRK_CustProducts ( InterfaceId, Version , DbVerNo, EndDate, Mode, GracePeriod) Select pdi.InterfaceID, pdi.Version, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod From EASUPPORT.dbo.CustSubscription AS cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering AS po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product AS pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID INNER JOIN EASUPPORT.dbo.CustomerCatalogs AS cc WITH (NOLOCK) ON cc.CustID=cs.CustID AND cc.SubscriptionNo=cs.SubscriptionNo INNER JOIN [dbo].[DbList] AS d WITH (NOLOCK) ON cc.DbName=d.DbName Where cs.CustID=@CustID AND cs.PrdOffNo=@PrdOffNo and d.DbLabel='Live' and cc.DbName = @ResourceID Group by pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod --End to retrieve all customer subscription, products and Interface -------------------------------------------------------------------------- --------------------------------------------------------------------------- -- Step 2. --Start AccessEnddate culculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), Graceperiod int, EndDate datetime, AcessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode, Graceperiod, EndDate) select distinct Mode, GracePeriod, EndDate from @WRK_CustProducts update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode='T' Update @WRK_CustProducts SET [AccessEndDate] =wa.AcessEndDate FROM @WRK_CustProducts AS wp INNER JOIN @WRK_AccessEndDate AS wa ON wp.Mode=wa.Mode AND wp.EndDate=wa.EndDate AND ISNULL(wp.GracePeriod, 0) = ISNULL(wa.Graceperiod, 0) --End AccessEnddate culculation --------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -- Step 3. --Start: Eliminate duplicates for identical products coming from diff. subscriptions /* Always select the longer running subscription, even if the longer running mode is 'T'. Ideally we should set Mode to 'S' if customer has current 'S' even if the 'T' subscription has later AccessEndDate, but to support this we have to have a process to reset the mode when 'S' expired and we don't have it.. :(. In reality it should be a rare event. */ declare @MaxAccessEndDate datetime SELECT @MaxAccessEndDate = Max(AccessEndDate) FROM @WRK_CustProducts delete @WRK_CustProducts Where AccessEndDate<>@MaxAccessEndDate --End: Eliminate duplicates for identical products coming from diff. subscriptions ------------------------------------------------------------------------------------------- ------------------------------------------------------------------------ -- Step 4 -- Start: list of customer profile databases for current subscriptions: DECLARE @ContentAutoAddParamNo int SELECT @ContentAutoAddParamNo=ISNULL([dbo].[CustomParamList].[ParamNo],-1) FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='newContentAutoAddToProfile' DECLARE @WRK_ProfDbs TABLE (ProfNo int, DbVerNo int, Mode char(1), AccessEndDate datetime, Enable int, SeqNo int, SelDefault int, PdMode char(1), PdAccessEndDate datetime, PdSeqNo int, NewContentAutoAdd int PRIMARY KEY (ProfNo, DbVerNo)) --NOTE: see if temp table with indexes will do better Insert Into @WRK_ProfDbs (ProfNo , DbVerNo, Mode, AccessEndDate, Enable, SelDefault) SELECT p.ProfNo,-- p.GroupId, p.ProfID, w.ProductID, w.DbVerNo, w.Mode, w.AccessEndDate, CASE WHEN cv.ParamValue IS NOT NULL AND cv.ParamValue=1 AND p.InterfaceID=@InterfaceID and p.Version=@Version THEN 1 /* Profile customization exists, Auto Add turned On*/ WHEN cv.ParamValue IS NULL AND p.ProfID=iv.DefProfID and /* No Profile customization exists, However it is Default Profile*/ p.InterfaceID=@InterfaceID and p.Version=@Version and p.GroupID=@InGroupID THEN 1 /*Set Enable to 1 (On)*/ ELSE 0 END AS Enable, /*Set Enable to 0 (Off) When */ -- WHEN p.ProfId=iv.DefProfId and /*Profile customization exists, Auto Add disabled OR*/ -- p.InterfaceID=@InterfaceID and /*No Profile customization exists and it is custom profile*/ -- p.Version=@Version and -- --w.Mode=@Mode and -- p.GroupID=@InGroupID -- THEN 1 -- ELSE 0 END AS Enable, 0 FROM [dbo].[Profile] p WITH (NOLOCK) INNER JOIN ( select DbVerNo, InterfaceId, Version,Mode,AccessEndDate from @WRK_CustProducts Group By DbVerNo,InterfaceId, Version, Mode,AccessEndDate ) w ON p.InterfaceID=w.InterfaceID AND p.Version=w.Version INNER JOIN [dbo].[InterfaceVersion] iv WITH (NOLOCK) ON (p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version) LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cv WITH (NOLOCK) ON p.ProfNo=cv.TargetNo AND cv.ParamLevel='P' AND cv.ParamNo=@ContentAutoAddParamNo WHERE p.CustID=@CustID --AND -- p.InterfaceID=w.InterfaceID AND -- p.Version=w.Version and -- p.InterfaceID=iv.InterfaceID AND -- p.Version=iv.Version --Copy over the current values of Mode, AccessEndDate, SeqNo and Enable from profDatabase Update @WRK_ProfDbs SET [PdMode] =pd.Mode, [PdAccessEndDate]= pd.AccessEndDate, [PdSeqNo]=pd.SeqNo, [Enable]=pd.Enable From @WRK_ProfDbs AS w INNER JOIN [dbo].[ProfDatabase] AS pd WITH (NOLOCK) ON w.ProfNo=pd.ProfNo and w.DbVerNo=pd.DbVerNo --------------------------------------------------------------- -- Step 5 ---Start: calculate SeqNo IF EXISTS (SELECT 1 FROM @WRK_ProfDbs WHERE PdSeqNo is null) BEGIN Declare @MaxSeqNoTable table (ProfNo int, MaxSeqNo int) Insert @MaxSeqNoTable select p.ProfNo, isnull(max(pdb.SeqNo),0) as MaxSeqNo from [dbo].[ProfDatabase] pdb WITH (NOLOCK) right outer join @WRK_ProfDbs p on pdb.ProfNo=p.ProfNo group by p.ProfNo Update @WRK_ProfDbs set [SeqNo]=a.Pos from (Select a.ProfNo, b.DbVerNo, [a].[MaxSeqNo]+Pos pos from @MaxSeqNoTable a join (Select ProfNo, DbVerNo, Row_Number() Over (Partition by ProfNo Order by DbVerNo) as Pos from @WRK_ProfDbs) b on a.ProfNo=b.ProfNo) a join @WRK_ProfDbs b on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo Where [b].[PdSeqNo] is null END ---End: calculate SeqNo ----------------------------------------------------------------------- -- Step 6 --Mark databases that have to be selected by default - for new databases only --Update @WRK_ProfDbs Set SelDefault=1 --from DbparamList l, DbParamScalarValues v, @WRK_ProfDbs w --where l.ParamName='defSelected' and l.paramNo=v.paramNo and -- v.DbVerNo=w.DbVerNo and w.PdMode is null and v.paramValue='1' DECLARE @ParamNo int DECLARE @InheritFromPhysical BIT SELECT @ParamNo=[dbo].[DbParamList].[ParamNo], @InheritFromPhysical = [dbo].[DbParamList].[InheritFromPhysical] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] ='defSelected'; -- If it is not subset database or InheritFromPhysical is 0: Use param value for dbverno in @WRK_ProfDbs -- If it is subset database and InheritFromPhysical is 1: Use param value from physical dbverno UPDATE @WRK_ProfDbs SET [SelDefault] = 1 FROM @WRK_ProfDbs w LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = w.DbVerNo AND sv.ParamNo = @ParamNo LEFT OUTER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = w.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON psv.DbVerNo = ss.PhysDbVerNo AND psv.ParamNo = @ParamNo WHERE w.PdMode IS NULL AND ( ((@InheritFromPhysical = 0 OR ss.PhysDbVerNo IS NULL) AND sv.ParamValue='1') OR (@InheritFromPhysical = 1 AND ss.PhysDbVerNo IS NOT NULL AND psv.ParamValue='1') ) -- Step 7 -------------------------------------------------- -- set enabled based on Interface and SourceType properties -------------------------------------------------- Update @WRK_ProfDbs set [Enable]=newEnable, [SelDefault]=newSelDefault from @WRK_ProfDbs wpdb join (select p.ProfNo, dbl.DbVerNo, newEnable=case when isnull(istc.StringValue, 'Standard') = 'Standard' then wpdb.Enable when isnull(istc.StringValue, 'Standard') = 'Disable' then 0 when isnull(istc.StringValue, 'Standard') = 'Enable' then 1 end, newSelDefault=case when isnull(istc2.StringValue, 'Standard')= 'Standard' then wpdb.SelDefault when isnull(istc2.StringValue, 'Standard')= 'Yes' then 1 when isnull(istc2.StringValue, 'Standard')= 'No' then 0 end from [dbo].[Profile] p join @WRK_ProfDbs wpdb on p.ProfNo=wpdb.ProfNo join [dbo].[DbList] dbl on wpdb.DbVerNo=dbl.DbVerNo left outer join [dbo].[InterfaceSourceTypeConfig] istc on p.InterfaceID=istc.InterfaceID and p.Version=istc.Version and dbl.SourceType=istc.SourceType and istc.ConfigurationName='profDatabaseAddRule' left outer join [dbo].[InterfaceSourceTypeConfig] istc2 on p.InterfaceID=istc2.InterfaceID and p.Version=istc2.Version and dbl.SourceType=istc2.SourceType and istc2.ConfigurationName='profDatabaseSelectedRule') a on wpdb.ProfNo=a.ProfNo and wpdb.DbVerNo=a.DbVerNo ----------------------------------------------------- --Debug version - output collected data and return ------------------------------------------------------ IF EXISTS (SELECT 1 FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName]='addCustRightsDebug' AND [dbo].[AdminState].[ParamValue]='true') BEGIN SELECT * FROM @WRK_CustProducts SELECT p.GroupID, p.ProfID, p.InterfaceID, p.Version, db.DbName, wp.Mode, wp.AccessEndDate, wp.Enable, wp.SeqNo, wp.SelDefault, wp.PdMode As CurrMode, wp.PdAccessEndDate As CurrAccessEndDate, wp.PdSeqNo As CurrSeqNo FROM @WRK_ProfDbs wp INNER JOIN [dbo].[Profile] p WITH (NOLOCK) ON wp.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] db WITH (NOLOCK) ON wp.DbVerNo=db.DbVerNo AND wp.DbVerNo=db.DbVerNo ORDER BY p.GroupID, p.ProfID, db.DbName RETURN END --//////////////////////////////////////////////////////////// --------------------------------------------------------------- -- DATA UPDATE --------------------------------------------------------------- --///////////////////////////////////////////////////////////// BEGIN TRY BEGIN TRANSACTION --------------------------------------------------------------------- --------------------------------------------------------------------- --Step 9 --Start update data in profDatabase --a. Update existing databases if needed UPDATE [dbo].[ProfDatabase] SET ProfDatabase.Mode = a.Mode FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.Mode<>a.PdMode UPDATE [dbo].[ProfDatabase] SET ProfDatabase.AccessEndDate= a.AccessEndDate FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.AccessEndDate<>a.PdAccessEndDate --Updated for EADM-3261 Ops Admin interface service operations AddModSubscriptionToSharedResources may disable databases attached to profile UPDATE [dbo].[ProfDatabase] SET ProfDatabase.Enable = a.Enable FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.Enable=1 AND b.Enable=0 delete @WRK_ProfDbs FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo --b. Add new databases INSERT INTO [dbo].[ProfDatabase]([dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[SeqNo], [dbo].[ProfDatabase].[Enable], [dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter], [dbo].[ProfDatabase].[CtrlCustID], [dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate]) SELECT ProfNo, DbVerNo, SeqNo, Enable, SelDefault, 0, null, Mode, AccessEndDate FROM @WRK_ProfDbs --If customer is getting active access to an additional database -- customer local collections LastUpdateDate should be refreshed to force -- EPLR bitmap rebuild for all not eonline local collections. IF EXISTS (SELECT 1 FROM @WRK_ProfDbs a WHERE [a].[Enable]=1 ) UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GetDate() WHERE [dbo].[Collection].[CustID]=@CustID and [dbo].[Collection].[Eonline]=0 and [dbo].[Collection].[AutoRecreate] = 1 and [dbo].[Collection].[IsDeleted] = 0 /************************************************************************* Copy customization from trial profile to sale profile ***************************************************************************/ IF @Mode='S' AND @InGroupID='main' exec [dbo].[EAIP_CopyCustomizationFromTrial2Main_88] @CustID, @PrdOffNo,@InterfaceID,@Version -------------------------------------------------------------------------------- --LogActivity -------------------------------------------------------------------------------- DECLARE @ToDay datetime SET @ToDay=getdate() INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, @ToDay, 'Profiles', 'Add Database to Profile', (p.CustID+'.'+p.GroupID+'.'+p.ProfID) as Prof, dbl.DbName, NULL, NULL, NULL FROM @WRK_ProfDbs AS a INNER JOIN [dbo].[Profile] p WITH (NOLOCK) ON a.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] AS dbl WITH (NOLOCK) ON a.DbVerNo=dbl.DbVerNo WHERE a.DbVerNo>0 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetCustomerGroupsInfo_231] ( @CustID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX) ) AS BEGIN DECLARE @CustName NVARCHAR(100); DECLARE @STMode CHAR(1); DECLARE @MarketID VARCHAR(20); SELECT @CustName = c.CustName, @STMode = dbo.EAIF_CustTypeToSTMode_70(c.CustType), @MarketID = c.MarketID FROM [dbo].[Customer] c WHERE c.CustID = @CustID; SELECT @CustName AS CustName; DECLARE @Groups TABLE ( GroupNo INT, GroupID NVARCHAR(100), GroupName NVARCHAR(100) ); INSERT INTO @Groups SELECT GroupNo, GroupID, GroupName FROM [dbo].[UserGroup] WHERE CustID = @CustID SET @RequiredGroupParams = REPLACE(@RequiredGroupParams, ' ', '') DECLARE @GroupParams TABLE ( ParamNo INT, ParamName VARCHAR(100), DefValue NVARCHAR(2000) ); INSERT INTO @GroupParams SELECT cpl.ParamNo, cpl.ParamName, cpl.DefValue FROM [dbo].[CustomParamList] AS cpl LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@RequiredGroupParams, ',') AS rgp ON cpl.ParamName = rgp.Item WHERE cpl.ParamLevel = 'G' AND ( rgp.Item IS NOT NULL OR ISNULL(NULLIF(@RequiredGroupParams, ''), '') = '' ) DECLARE @SpreadGroupParams NVARCHAR(MAX) = '[GroupID], [GroupName]'; SELECT @SpreadGroupParams = COALESCE(@SpreadGroupParams + ', ', '') + '[' + CAST(ParamName AS NVARCHAR(255)) + ']' FROM @GroupParams; DECLARE @GroupParamVal dbo.EntityParamVal; INSERT INTO @GroupParamVal SELECT gp.GroupNo, gp.ParamName, ISNULL(ISNULL(cpsv.ParamValue, dv.DefValue), gp.DefValue) AS ParamVal FROM ( SELECT g.GroupNo, prm.ParamNo, prm.ParamName, prm.DefValue FROM @Groups AS g CROSS JOIN @GroupParams AS prm ) AS gp LEFT OUTER JOIN [dbo].[CustomParamScalarValues] AS cpsv ON gp.ParamNo = cpsv.ParamNo AND cpsv.TargetNo = gp.GroupNo LEFT OUTER JOIN [dbo].[CustomParamDefaults] dv ON gp.ParamNo = dv.ParamNo AND dv.InterfaceID = 'all' AND dv.Version = 'all' AND dv.MarketID = @MarketId AND dv.STMode = @STMode UNION ALL SELECT GroupNo, ParamName, ParamVal FROM @Groups UNPIVOT(ParamVal FOR ParamName IN ( GroupID, GroupName )) AS gPrm DECLARE @PivotGroupParamValSql NVARCHAR(MAX) = N' SELECT EntityNo AS GroupNo, ' + @SpreadGroupParams + N' FROM @Gpv PIVOT ( MAX(ParamValue) FOR ParamName IN (' + @SpreadGroupParams + N') ) AS pvt ORDER BY EntityNo ASC '; EXEC sys.sp_executesql @PivotGroupParamValSql, N'@Gpv dbo.EntityParamVal READONLY', @GroupParamVal; END
CREATE PROCEDURE [dbo].[EAUI_GetSystemLinksList_70] AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70('System') DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C') SELECT [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceKnownSearchItems_103] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceKnownSearchItems_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Known Search Items', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[SystemLinkUpdateRequestCleanup] AS BEGIN DELETE dbo.DerivedLinkUpdateStatus WHERE [dbo].[DerivedLinkUpdateStatus].[ProcessedTime] < DATEADD(DAY, -30, GETDATE()) DELETE dbo.SystemLinkUpdateStatus WHERE [dbo].[SystemLinkUpdateStatus].[ProcessedTime] < DATEADD(DAY, -30, GETDATE()) UPDATE dbo.DerivedLinkUpdateStatus SET [UpdateStatus]='S' FROM dbo.SystemLinkUpdateStatus s JOIN dbo.DerivedLinkUpdateStatus d ON s.SystemLinkUpdateStatusID=d.SystemLinkUpdateStatusID AND d.UpdateStatus='I' WHERE s.UpdateStatus='I' AND s.ProcessedTime < DATEADD(MINUTE, -30, GETDATE()) UPDATE dbo.SystemLinkUpdateStatus SET [dbo].[SystemLinkUpdateStatus].[UpdateStatus]='S' WHERE [dbo].[SystemLinkUpdateStatus].[UpdateStatus]='I' AND [dbo].[SystemLinkUpdateStatus].[ProcessedTime] < DATEADD(MINUTE, -30, GETDATE()) END
--sql content merged from file: \StoredProcedures\EAIP_CopyCustomizationFromTrial2Main_88.sql CREATE PROCEDURE [dbo].[EAIP_CopyCustomizationFromTrial2Main_88](@CustID varchar(10), @PrdOffNo int, @InterfaceID varchar(10), @Version varchar(10))AS BEGIN DECLARE @TrialProfNo int DECLARE @SaleProfNo int DECLARE @SaleMarketID varchar(20) SELECT @TrialProfNo =p.ProfNo FROM [dbo].[Profile] AS p INNER JOIN [dbo].[InterfaceVersion] AS iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND p.ProfID = iv.DefProfID WHERE p.CustID=@CustID AND p.GroupID='trial' AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version SELECT @SaleProfNo =p.ProfNo, @SaleMarketID=[p].[MarketID] FROM [dbo].[Profile] AS p INNER JOIN [dbo].[InterfaceVersion] AS iv ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version AND p.ProfID = iv.DefProfID WHERE p.CustID=@CustID AND p.GroupID='main' AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version --Create a list of databases appropriate for ProductOffering and -- for trial profile interface DECLARE @WRK_Db TABLE (DbVerNo int, SelDefault bit) INSERT INTO @WRK_Db(DbVerNo, SelDefault) SELECT dbl.DbVerNo,0 FROM [dbo].[Profile] AS p INNER JOIN [dbo].[DbList] AS dbl ON dbl.DbLabel=p.DbLabel INNER JOIN EASUPPORT.dbo.ProductInterface AS pdi ON pdi.InterfaceID=p.InterfaceID AND pdi.Version=p.Version INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg ON dbl.DbName=pkg.ProductID AND pkg.ProductID=pdi.ProductID WHERE p.ProfNo=@TrialProfNo AND pkg.PrdOffNo=@PrdOffNo --Update @WRK_Db Set SelDefault=1 --from DbparamList l, DbParamScalarValues v, @WRK_Db w --where l.ParamName='defSelected' and l.paramNo=v.paramNo and -- v.DbVerNo=w.DbVerNo and v.paramValue='1' DECLARE @ParamNo int DECLARE @InheritFromPhysical BIT SELECT @ParamNo=[dbo].[DbParamList].[ParamNo], @InheritFromPhysical = [dbo].[DbParamList].[InheritFromPhysical] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] ='defSelected'; -- If it is not subset database or InheritFromPhysical is 0: Use param value for dbverno in @WRK_ProfDbs -- If it is subset database and InheritFromPhysical is 1: Use param value from physical dbverno UPDATE @WRK_Db SET [SelDefault] = 1 FROM @WRK_Db w LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = w.DbVerNo AND sv.ParamNo = @ParamNo LEFT OUTER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = w.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON psv.DbVerNo = ss.PhysDbVerNo AND psv.ParamNo = @ParamNo WHERE ((@InheritFromPhysical = 0 OR ss.PhysDbVerNo IS NULL) AND sv.ParamValue='1') OR (@InheritFromPhysical = 1 AND ss.PhysDbVerNo IS NOT NULL AND psv.ParamValue='1') --Check if there is any customization in sale prof. databases: -- SelDefault, StartPage, Limiters, Filelds IF @TrialProfNo IS NOT NULL AND @SaleProfNo IS NOT NULL AND NOT EXISTS ( SELECT 1 FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo=pd.ProfNo INNER JOIN @WRK_Db AS w ON pd.DbVerNo = w.DbVerNo WHERE p.ProfNo=@SaleProfNo AND pd.SelDefault = 1 AND pd.StartPage<>'' AND w.SelDefault = 0) AND NOT EXISTS ( SELECT 1 FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfDbLimiter2] AS pl ON p.ProfNo=pl.ProfNo INNER JOIN [dbo].[LimiterList] AS ll ON pl.LimiterNo=ll.LimiterNo INNER JOIN @WRK_Db AS w ON pl.DbVerNo = w.DbVerNo WHERE p.ProfNo=@SaleProfNo AND ll.BitFlag1=0) AND NOT EXISTS ( SELECT 1 FROM [dbo].[Profile] AS p INNER JOIN [dbo].[ProfFieldGroupDefaults] AS pg ON p.ProfNo=pg.ProfNo INNER JOIN @WRK_Db AS w ON pg.DbVerNo = w.DbVerNo WHERE p.ProfNo=@SaleProfNo) AND NOT EXISTS -- Entries for new profile default are not considered customization, Ignore it if exists. ( SELECT 1 FROM [dbo].[CustomParamScalarValues] v left outer join [dbo].[CustomParamDefaults] d ON v.ParamNo=d.ParamNo and d.InterfaceID=@InterfaceID AND d.Version=@Version and d.MarketID=@SaleMarketID and d.STMode='S' and d.NewProfileDefValue is not null WHERE v.TargetNo = @SaleProfNo and d.ParamNo is null) AND NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @SaleProfNo AND [dbo].[CustomParamXmlValues].[ParamNo]=dbo.EAIF_GetCustomParamNumber_70( 'profCustomLinks','P')) AND NOT EXISTS ( SELECT 1 FROM [dbo].[ProfLocalAuthority] WHERE [dbo].[ProfLocalAuthority].[ProfNo] = @SaleProfNo ) AND NOT EXISTS ( SELECT 1 FROM [dbo].[ProfLocalLimiter2] WHERE [dbo].[ProfLocalLimiter2].[ProfNo] = @SaleProfNo ) AND NOT EXISTS ( SELECT 1 FROM [dbo].[ProfExpander] WHERE [dbo].[ProfExpander].[ProfNo] = @SaleProfNo ) AND NOT EXISTS ( SELECT 1 FROM [dbo].[ProfileClusters2] WHERE [dbo].[ProfileClusters2].[ProfNo] = @SaleProfNo ) BEGIN TRY BEGIN TRANSACTION UPDATE [dbo].[ProfDatabase] SET [SelDefault]=a.SelDefault, [StartPage]=a.StartPage, [SugSubject]=a.SugSubject FROM [dbo].[ProfDatabase] AS pd INNER JOIN ( Select @SaleProfNo AS ProfNo, pdbs.DbVerNo, pdbt.SelDefault, pdbt.StartPage , pdbt.SugSubject from [dbo].[ProfDatabase] AS pdbs INNER JOIN @WRK_Db AS ws ON pdbs.DbVerNo = ws.DbVerNo INNER JOIN [dbo].[ProfDatabase] AS pdbt ON pdbs.DbVerNo = pdbt.DbVerNo INNER JOIN @WRK_Db AS wt ON pdbt.DbVerNo = wt.DbVerNo where pdbs.ProfNo=@SaleProfNo AND pdbt.ProfNo=@TrialProfNo ) AS a ON pd.ProfNo=a.profNo AND pd.DbVerNo=a.DbVerNo INSERT INTO [dbo].[ProfDbLimiter2]([pl].[ProfNo], [pl].[DbVerNo], [pl].[IntfScreenNo],[pl].[LimiterNo],[pl].[Show],[pl].[DefValue],[pl].[SeqNo]) SELECT @SaleProfNo, pl.DbVerNo, pl.IntfScreenNo,pl.LimiterNo,pl.Show,pl.DefValue,pl.SeqNo FROM [dbo].[ProfDbLimiter2] AS pl INNER JOIN [dbo].[LimiterList] AS ll ON pl.LimiterNo =ll.LimiterNo INNER JOIN @WRK_Db AS w ON pl.DbVerNo=w.DbVerNo WHERE pl.ProfNo=@TrialProfNo AND ll.BitFlag1=0 INSERT INTO [dbo].[ProfDbLimiterCaption2]([pl].[ProfNo], [pl].[DbVerNo], [pl].[IntfScreenNo],[pl].[LimiterNo],[pl].[LangCode],[pl].[Caption]) SELECT @SaleProfNo, pl.DbVerNo, pl.IntfScreenNo,pl.LimiterNo,pl.LangCode,pl.Caption FROM [dbo].[ProfDbLimiterCaption2] AS pl INNER JOIN [dbo].[LimiterList] AS ll ON pl.LimiterNo =ll.LimiterNo INNER JOIN @WRK_Db AS w ON pl.DbVerNo=w.DbVerNo WHERE pl.ProfNo=@TrialProfNo AND ll.BitFlag1=0 INSERT INTO [dbo].[ProfFieldGroupDefaults]([pg].[ProfNo],[pg].[DbVerNo],[pg].[FieldGroupNo],[pg].[OutputMode],[pg].[DefValue]) SELECT @SaleProfNo, pg.DbVerNo,pg.FieldGroupNo,pg.OutputMode,pg.DefValue FROM [dbo].[ProfFieldGroupDefaults] AS pg INNER JOIN @WRK_Db AS w ON pg.DbVerNo=w.DbVerNo WHERE pg.ProfNo=@TrialProfNo -- Parameters with New Profile defaults are not copied here, as they would already -- exist on the sale profile (they get added when new profile is added) 9.4 Release INSERT INTO [dbo].[CustomParamScalarValues] ([v].[TargetNo],[v].[ParamLevel],[v].[ParamNo],[v].[ParamValue]) SELECT @SaleProfNo,v.ParamLevel,v.ParamNo,v.ParamValue FROM [dbo].[CustomParamScalarValues] v left outer join [dbo].[CustomParamDefaults] d ON v.ParamNo=d.ParamNo and d.InterfaceID=@InterfaceID AND d.Version=@Version and d.MarketID=@SaleMarketID and d.STMode='T' and d.NewProfileDefValue is not null left outer join [dbo].[CustomParamList] c ON v.ParamNo=c.ParamNo and c.ParamLevel = 'P' and c.ParamName in ('eonlineCustID','eonlineUserID','eonlinePassword') WHERE v.TargetNo = @TrialProfNo and c.ParamNo is null and d.ParamNo is null INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo],[dbo].[CustomParamXmlValues].[ParamLevel],[dbo].[CustomParamXmlValues].[ParamNo],[dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], [dbo].[CustomParamXmlValues].[SeqNo] ) SELECT @SaleProfNo,[dbo].[CustomParamXmlValues].[ParamLevel],[dbo].[CustomParamXmlValues].[ParamNo],[dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], [dbo].[CustomParamXmlValues].[SeqNo] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @TrialProfNo AND [dbo].[CustomParamXmlValues].[ParamNo]=dbo.EAIF_GetCustomParamNumber_70( 'profCustomLinks','P') INSERT INTO [dbo].[ProfLocalAuthority]([a].[ProfNo], [a].[ColNo]) SELECT @SaleProfNo, a.ColNo FROM [dbo].[ProfLocalAuthority] a WHERE a.ProfNo=@TrialProfNo INSERT INTO [dbo].[ProfLocalLimiter2]([pl].[ProfNo], [pl].[IntfScreenNo],[pl].[ColNo],[pl].[IsHidden], [pl].[Show],[pl].[DefValue],[pl].[SeqNo]) SELECT @SaleProfNo, pl.IntfScreenNo,pl.ColNo,pl.IsHidden, pl.Show,pl.DefValue,pl.SeqNo FROM [dbo].[ProfLocalLimiter2] pl WHERE pl.ProfNo=@TrialProfNo INSERT INTO [dbo].[ProfLocalLimiterCaption2]([pl].[ProfNo], [pl].[IntfScreenNo],[pl].[ColNo],[pl].[LangCode], [pl].[Caption]) SELECT @SaleProfNo, pl.IntfScreenNo,pl.ColNo,pl.LangCode, pl.Caption FROM [dbo].[ProfLocalLimiterCaption2] pl WHERE pl.ProfNo=@TrialProfNo INSERT INTO [dbo].[ProfExpander]([dbo].[ProfExpander].[ProfNo], [dbo].[ProfExpander].[ControlName], [dbo].[ProfExpander].[ControlShow], [dbo].[ProfExpander].[ControlDefault]) SELECT @SaleProfNo, [dbo].[ProfExpander].[ControlName], [dbo].[ProfExpander].[ControlShow], [dbo].[ProfExpander].[ControlDefault] FROM [dbo].[ProfExpander] WHERE [dbo].[ProfExpander].[ProfNo]=@TrialProfNo INSERT INTO [dbo].[ProfExpanderCaption]([dbo].[ProfExpanderCaption].[ProfNo], [dbo].[ProfExpanderCaption].[ControlName], [dbo].[ProfExpanderCaption].[LangCode], [dbo].[ProfExpanderCaption].[Caption]) SELECT @SaleProfNo, [dbo].[ProfExpanderCaption].[ControlName], [dbo].[ProfExpanderCaption].[LangCode], [dbo].[ProfExpanderCaption].[Caption] FROM [dbo].[ProfExpanderCaption] WHERE [dbo].[ProfExpanderCaption].[ProfNo]=@TrialProfNo INSERT INTO [dbo].[ProfileClusters2]([dbo].[ProfileClusters2].[ProfNo], [dbo].[ProfileClusters2].[ClustNo], [dbo].[ProfileClusters2].[Show], [dbo].[ProfileClusters2].[SeqNo]) SELECT @SaleProfNo, [dbo].[ProfileClusters2].[ClustNo], [dbo].[ProfileClusters2].[Show], [dbo].[ProfileClusters2].[SeqNo] FROM [dbo].[ProfileClusters2] WHERE [dbo].[ProfileClusters2].[ProfNo]=@TrialProfNo COMMIT TRANSACTION END TRY Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState) End catch END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerCustomLink_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255), @ParentItemName varchar(255), @ParamValue nvarchar(max) ) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int SELECT @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE BEGIN -- Make sure the link by the same name does not exist DECLARE @LinkName nvarchar(255) SET @LinkName = dbo.EAIF_GetXmlAttribValue_70(@ParamValue,'linkName' ) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND dbo.EAIF_GetXmlAttribValue_70([dbo].[CustomParamXmlValues].[ParamValue],'linkName' )=@LinkName) BEGIN RAISERROR ('The link %s already exists!',16,-1,@LinkName) RETURN END DECLARE @NewItemName varchar(255) EXEC [dbo].[EAIPO_GetCustomLinkItemName_70] @CustID, @ParentItemName, @NewItemName OUTPUT INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) values (@TargetNo,'C', @ParamNo,@NewItemName,@ParamValue) END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Add or Modify Customer Custom Link', @CustID, @ItemName, @ParamValue END
--sql content merged from file: \StoredProcedures\EAUI_GetMDbLimitersExternalSourceDetails_92.sql create Procedure [dbo].[EAUI_GetMDbLimitersExternalSourceDetails_102] (@LimiterID varchar(10), @DbLabel varchar(10), @LangCode varchar(10), @SourceType char(1)) as Begin Declare @LimiterNo int Select @LimiterNo=[dbo].[MDbLimitersExternalSource].[LimiterNo] from [dbo].[MDbLimitersExternalSource] Where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID and [dbo].[MDbLimitersExternalSource].[ExternalSourceType]=@SourceType if exists (select 1 from [dbo].[MDbLimitersExternalSourceCaption] where [dbo].[MDbLimitersExternalSourceCaption].[LimiterNo]=@LimiterNo and [dbo].[MDbLimitersExternalSourceCaption].[LangCode]=@LangCode) Select ll.LimiterId, ml.Description, [mdblesc].[LangCode], [mdblesc].[Caption], mdbles.ExternalSearchString_M, mdbles.ExternalSearchString_I,ISNULL(mdbles.DefValue,'') as DefValue From [dbo].[LimiterList] ll Join [dbo].[MDbLimitersExternalSource] mdbles on ll.LimiterId=mdbles.LimiterID JOIN [dbo].[MDbLimiterList] ml ON (ml.LimiterID = ll.LimiterId AND ml.DbLabel = ll.DbLabel) Join [dbo].[MDbLimitersExternalSourceCaption] mdblesc on mdbles.LimiterNo=mdblesc.LimiterNo Where ll.LimiterId=@LimiterID and ll.DbLabel=@DbLabel and [mdblesc].[LangCode]=@LangCode else Select ll.LimiterId, ml.Description, @LangCode, '' as Caption ,mdbles.ExternalSearchString_M, mdbles.ExternalSearchString_I,ISNULL(mdbles.DefValue,'') as DefValue From [dbo].[LimiterList] ll Join [dbo].[MDbLimitersExternalSource] mdbles on ll.LimiterId=mdbles.LimiterID JOIN [dbo].[MDbLimiterList] ml ON (ml.LimiterID = ll.LimiterId AND ml.DbLabel = ll.DbLabel) Join [dbo].[MDbLimitersExternalSourceCaption] mdblesc on mdbles.LimiterNo=mdblesc.LimiterNo Where ll.LimiterId=@LimiterID and ll.DbLabel=@DbLabel and [mdblesc].[LangCode]='en' End
CREATE TRIGGER dbo.[ProfileInsertedTrigger] ON dbo.Profile AFTER INSERT AS BEGIN SET NOCOUNT ON; INSERT INTO dbo.ChangedProfile (ProfNo, CustID, GroupID, ProfID) SELECT ProfNo, CustID, GroupID, ProfID FROM inserted END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceSearchThemes_83](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20), @Caption nvarchar(255), @ImgAltText nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @IntfThemeNo int SELECT @IntfThemeNo=inf.InterfaceThemeNo FROM [dbo].[InterfaceSearchTheme] inf WHERE inf.ThemeID=@ThemeID AND inf.InterfaceID=@InterfaceID AND inf.Version=@Version IF @IntfThemeNo is null RETURN IF LEN(@Caption)=0 SET @Caption = null IF LEN(@ImgAltText)=0 SET @ImgAltText = null DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceSearchThemeCaption] WHERE [dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo]= @IntfThemeNo AND [dbo].[InterfaceSearchThemeCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[InterfaceSearchThemeCaption] SET [dbo].[InterfaceSearchThemeCaption].[Caption]=@Caption, [dbo].[InterfaceSearchThemeCaption].[ImageAltText]=@ImgAltText WHERE [dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo]= @IntfThemeNo AND [dbo].[InterfaceSearchThemeCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Interface Search Themes Caption & Image Alt Text' END ELSE BEGIN INSERT INTO [dbo].[InterfaceSearchThemeCaption] ([dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo], [dbo].[InterfaceSearchThemeCaption].[LangCode], [dbo].[InterfaceSearchThemeCaption].[Caption], [dbo].[InterfaceSearchThemeCaption].[ImageAltText] ) VALUES (@IntfThemeNo,@Lang, @Caption,@ImgAltText) SET @LogFlag ='Translate(Insert) Interface Search Themes Caption & Image Alt Text' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @IntfThemeNo, @LogFlag, 'Lang:', @Lang, 'Caption:', @Caption, 'ImageAltText:', @ImgAltText COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetFeature_80] (@Category varchar(10),@FeatureName varchar(50))AS BEGIN SELECT l.FeatureName, l.FeatureType, fd.FieldName, fd.FieldLevel, fd.FieldType FROM [dbo].[FeatureFields] AS fd INNER JOIN [dbo].[FeatureList] AS ld ON fd.FeatureNo = ld.FeatureNo CROSS JOIN [dbo].[FeatureList] AS l WHERE (l.Category = @Category) AND (l.FeatureName = @FeatureName) AND (ld.Category = @Category + '_templ') Order By fd.FieldLevel, fd.SeqNo SELECT l.FeatureName, v.ItemNo, v.FieldValueXml FROM [dbo].[FeatureList] AS l INNER JOIN [dbo].[FeatureValues] AS v ON l.FeatureNo = v.FeatureNo WHERE (l.Category = @Category) AND (l.FeatureName = @FeatureName) ORDER BY v.SeqNo END
CREATE PROCEDURE util.EnableBD10Limiter AS BEGIN /* 07/20/2018, team Phoenix ** This is a stored procedure to do the same as the script in US340630 ** it sets the hidden limiter BD10 to On for ** the specified databases ** and for customers in the specified countries ** and specified market **/ DECLARE @LimiterNo INT = (SELECT [dbo].[LimiterList].[LimiterNo] FROM dbo.LimiterList WHERE [dbo].[LimiterList].[LimiterId] = 'BD10' AND [dbo].[LimiterList].[DbLabel] = 'live'); DECLARE @MarketID VARCHAR(20) = 'school'; DECLARE @Value VARCHAR(255) = 'On'; DECLARE @Country TABLE (CountryId VARCHAR(3)); INSERT INTO @Country (CountryId) VALUES ('USA'),('UMI'); DECLARE @DbName TABLE (DbName VARCHAR(10)); INSERT INTO @DbName (DbName) VALUES ('mat'),('mae'),('ulh'),('muh'),('prh'),('pme'),('mih'),('mme'); CREATE TABLE #UpdateProfDbLimiter ( ProfNo INT, DbVerNo INT, IntfScreenNo INT, LimiterNo INT ); INSERT #UpdateProfDbLimiter SELECT u.ProfNo, u.DbVerNo, u.IntfScreenNo, u.LimiterNo FROM ( SELECT pdb2.ProfNo, pdb2.DbVerNo, pdb2.IntfScreenNo, pdb2.LimiterNo FROM [dbo].[Customer] c with (nolock) JOIN dbo.CustAddress ca with (nolock) ON c.CustID = ca.CustID AND ca.CountryID IN (SELECT CountryId FROM @Country) JOIN [dbo].[Profile] p with (nolock) ON c.CustID = p.CustID JOIN [dbo].[ProfDatabase] pdb with (nolock) ON p.ProfNo = pdb.ProfNo JOIN [dbo].[DbList] dbl with (nolock) ON pdb.DbVerNo = dbl.DbVerNo AND dbl.DbName IN (SELECT DbName FROM @DbName) JOIN dbo.DbLimiter db with (nolock) ON db.DbVerNo = dbl.DbVerNo AND db.LimiterNo=@LimiterNo JOIN dbo.InterfaceScreen ifs with (nolock) ON p.InterfaceID=ifs.InterfaceID AND p.Version=ifs.Version JOIN [dbo].[ProfDbLimiter2] pdb2 with (nolock) ON p.ProfNo = pdb2.ProfNo AND dbl.DbVerNo = pdb2.DbVerNo AND ifs.IntfScreenNo = pdb2.IntfScreenNo AND pdb2.LimiterNo=@LimiterNo WHERE c.MarketID = @MarketID AND db.ResFlag=1 AND ifs.AutoAddLimiter=1 UNION SELECT pdb2.ProfNo, pdb2.DbVerNo, pdb2.IntfScreenNo, pdb2.LimiterNo FROM [dbo].[Customer] c with (nolock) JOIN dbo.CustAddress ca ON c.CustID = ca.CustID AND ca.CountryID IN (SELECT CountryId FROM @Country) JOIN [dbo].[Profile] p with (nolock) ON c.CustID = p.CustID JOIN [dbo].[ProfDatabase] pdb with (nolock) ON p.ProfNo = pdb.ProfNo JOIN [dbo].[DbList] dbl with (nolock) ON pdb.DbVerNo = dbl.DbVerNo AND dbl.DbName IN (SELECT DbName FROM @DbName) JOIN dbo.DbLimiter db with (nolock) ON db.DbVerNo = dbl.DbVerNo AND db.LimiterNo=@LimiterNo JOIN dbo.InterfaceScreen ifs with (nolock) ON p.InterfaceID=ifs.InterfaceID AND p.Version=ifs.Version JOIN [dbo].[DbInterfaceLimiter] dbil with (nolock) ON db.DbVerNo = dbil.DbVerNo AND dbil.LimiterNo = @LimiterNo AND dbil.IntfScreenNo = ifs.IntfScreenNo JOIN [dbo].[ProfDbLimiter2] pdb2 with (nolock) ON p.ProfNo = pdb2.ProfNo AND dbl.DbVerNo = pdb2.DbVerNo AND ifs.IntfScreenNo = pdb2.IntfScreenNo AND pdb2.LimiterNo=@LimiterNo WHERE c.MarketID = @MarketID AND (db.ResFlag=0 or ifs.AutoAddLimiter=0) ) u; -- Update any Customized ProfDbLimiters for the BD10 Limiter - set DefValue UPDATE [dbo].[ProfDbLimiter2] SET [DefValue] = @Value FROM #UpdateProfDbLimiter b JOIN [dbo].[ProfDbLimiter2] pdb2 ON b.ProfNo = [pdb2].ProfNo AND b.DbVerNo = [pdb2].DbVerNo AND b.IntfScreenNo = [pdb2].IntfScreenNo AND b.LimiterNo = [pdb2].LimiterNo AND [pdb2].LimiterNo = @LimiterNo; -- Insert Customized ProfDbLimiters for the BD10 Limiter - set DefValue INSERT [dbo].[ProfDbLimiter2] SELECT a.ProfNo, a.DbVerNo, a.IntfScreenNo, a.LimiterNo, a.Show, a.DefValue, a.SeqNo FROM ( SELECT p.ProfNo , dbl.DbVerNo , ifs.IntfScreenNo , @LimiterNo AS LimiterNo , 0 AS Show , @Value AS DefValue , COALESCE(db.SeqNo,0) AS SeqNo FROM [dbo].[Customer] c JOIN dbo.CustAddress ca ON c.CustID = ca.CustID AND ca.CountryID IN (SELECT CountryId FROM @Country) JOIN [dbo].[Profile] p ON c.CustID = p.CustID JOIN [dbo].[ProfDatabase] pdb ON p.ProfNo = pdb.ProfNo JOIN [dbo].[DbList] dbl ON pdb.DbVerNo = dbl.DbVerNo AND dbl.DbName IN (SELECT DbName FROM @DbName) JOIN dbo.DbLimiter db ON db.DbVerNo = dbl.DbVerNo AND db.LimiterNo=@LimiterNo JOIN dbo.InterfaceScreen ifs ON p.InterfaceID=ifs.InterfaceID AND p.Version=ifs.Version WHERE c.MarketID = @MarketID AND db.ResFlag=1 AND ifs.AutoAddLimiter=1 UNION SELECT p.ProfNo , dbl.DbVerNo , ifs.IntfScreenNo , @LimiterNo AS LimiterNo , 0 Show , @Value AS DefValue , COALESCE(dbil.SeqNo,db.SeqNo,0) AS SeqNo FROM [dbo].[Customer] c JOIN dbo.CustAddress ca ON c.CustID = ca.CustID AND ca.CountryID IN (SELECT CountryId FROM @Country) JOIN [dbo].[Profile] p ON c.CustID = p.CustID JOIN [dbo].[ProfDatabase] pdb ON p.ProfNo = pdb.ProfNo JOIN [dbo].[DbList] dbl ON pdb.DbVerNo = dbl.DbVerNo AND dbl.DbName IN (SELECT DbName FROM @DbName) JOIN dbo.DbLimiter db ON db.DbVerNo = dbl.DbVerNo AND db.LimiterNo=@LimiterNo JOIN dbo.InterfaceScreen ifs ON p.InterfaceID=ifs.InterfaceID AND p.Version=ifs.Version JOIN [dbo].[DbInterfaceLimiter] dbil ON db.DbVerNo = dbil.DbVerNo AND dbil.LimiterNo = @LimiterNo AND dbil.IntfScreenNo = ifs.IntfScreenNo WHERE c.MarketID = @MarketID AND (db.ResFlag=0 or ifs.AutoAddLimiter=0)) a LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdb2 ON a.ProfNo = pdb2.ProfNo AND a.DbVerNo = pdb2.DbVerNo AND a.IntfScreenNo = pdb2.IntfScreenNo AND a.LimiterNo = pdb2.LimiterNo WHERE pdb2.ProfNo IS NULL; END;
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDbAuthorities_85]( @InterfaceID varchar(10), @Version varchar(10),@DbVerNo int) AS BEGIN DECLARE @AutoAddAuthority bit SELECT @AutoAddAuthority=[dbo].[InterfaceVersion].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version DECLARE @ClientType varchar(10) SELECT @ClientType=[dbo].[Interface].[ClientType] FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@InterfaceID DECLARE @WebClient1 bit DECLARE @Z3950Client1 bit DECLARE @WebClient2 bit DECLARE @Z3950Client2 bit IF @ClientType='web' BEGIN SET @WebClient1 = 1 SET @Z3950Client1 = 0 SET @WebClient2 = 1 SET @Z3950Client2 = 1 END IF @ClientType='z3950' BEGIN SET @WebClient1 = 0 SET @Z3950Client1 = 1 SET @WebClient2 = 1 SET @Z3950Client2 = 1 END IF @AutoAddAuthority=0 --dbs manually attached to the interface SELECT ia.AuthDbVerNo, db.DisplayName, db.DbName, dba.OwnedFlag, 1 As Attached, ISNULL(iao.SeqNo, dba.SeqNo) AS SeqNo FROM [dbo].[InterfaceDbAuthority] ia LEFT OUTER JOIN [dbo].[InterfaceDbAuthorityOrder] iao ON ia.InterfaceID = iao.InterfaceID AND ia.Version = iao.Version AND ia.MainDbVerNo = iao.MainDbVerNo AND ia.AuthDbVerNo = iao.AuthDbVerNo INNER JOIN [dbo].[DbList] db ON ia.AuthDbVerNo = db.DbVerNo INNER JOIN [dbo].[DbAuthority] dba ON ia.MainDbVerNo = dba.MainDbVerNo AND ia.AuthDbVerNo = dba.AuthDbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version AND ia.MainDbVerNo = @DbVerNo AND (db.WebClient=@WebClient1 OR db.WebClient=@WebClient2) AND (db.Z3950Client=@Z3950Client1 OR db.Z3950Client=@Z3950Client2) ORDER BY SeqNo ELSE--dbs automatically attached + manually attached if IncludeWhenAutoAdd is false SELECT dba.AuthDbVerNo,db1.DisplayName, db1.DbName, dba.OwnedFlag, 0 As Attached, ISNULL(iao.SeqNo, dba.SeqNo) As SeqNo FROM [dbo].[DbAuthority] dba LEFT OUTER JOIN [dbo].[InterfaceDbAuthorityOrder] iao ON dba.MainDbVerNo = iao.MainDbVerNo AND dba.AuthDbVerNo = iao.AuthDbVerNo AND iao.InterfaceID = @InterfaceID AND iao.Version = @Version INNER JOIN [dbo].[DbList] db ON dba.MainDbVerNo = db.DbVerNo INNER JOIN [dbo].[DbList] db1 ON dba.AuthDbVerNo = db1.DbVerNo WHERE dba.MainDbVerNo = @DbVerNo AND db1.IncludeWhenAutoAdd = 1 AND (db1.WebClient=@WebClient1 OR db1.WebClient=@WebClient2) AND (db1.Z3950Client=@Z3950Client1 OR db1.Z3950Client=@Z3950Client2) UNION SELECT ia.AuthDbVerNo, db.DisplayName, db.DbName, dba.OwnedFlag, 1 As Attached, ISNULL(iao.SeqNo, dba.SeqNo) AS SeqNo FROM [dbo].[InterfaceDbAuthority] ia LEFT OUTER JOIN [dbo].[InterfaceDbAuthorityOrder] iao ON ia.InterfaceID = iao.InterfaceID AND ia.Version = iao.Version AND ia.MainDbVerNo = iao.MainDbVerNo AND ia.AuthDbVerNo = iao.AuthDbVerNo INNER JOIN [dbo].[DbList] db ON ia.AuthDbVerNo = db.DbVerNo INNER JOIN [dbo].[DbAuthority] dba ON ia.MainDbVerNo = dba.MainDbVerNo AND ia.AuthDbVerNo = dba.AuthDbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version AND ia.MainDbVerNo = @DbVerNo AND db.IncludeWhenAutoAdd = 0 AND (db.WebClient=@WebClient1 OR db.WebClient=@WebClient2) AND (db.Z3950Client=@Z3950Client1 OR db.Z3950Client=@Z3950Client2) ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAIPO_AddMasterTitle_70]( @Title nvarchar(430), @ISSN varchar(20), @eISSN varchar(20), @EBSCOResId varchar(10), @ejsJournalID varchar(10), @ConserNo varchar(10), @MID varchar(10), @DocType varchar(5), @Source varchar(10), @TitleNo int OUTPUT) AS BEGIN DECLARE @MatchTitle nvarchar(430) IF @ISSN ='' SET @ISSN = null SET @MatchTitle=dbo.EAIF_GetMatchTitle_70(@Title,@ISSN) IF @ISSN IS NOT NULL BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN]=@ISSN) BEGIN RAISERROR('The ISSN %s already exists',16,-1,@ISSN) RETURN END END ELSE BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MatchTitle] WITH(NOLOCK) WHERE [dbo].[MatchTitle].[MatchTitle]=@MatchTitle) BEGIN RAISERROR('The Title %s already exists',16,-1,@Title) RETURN END END BEGIN TRANSACTION INSERT INTO [dbo].[MasterTitle] ([dbo].[MasterTitle].[Title],[dbo].[MasterTitle].[ISSN],[dbo].[MasterTitle].[EBSCOResId],[dbo].[MasterTitle].[Source],[dbo].[MasterTitle].[Status],[dbo].[MasterTitle].[LinkCount],[dbo].[MasterTitle].[TitleChecksum]) VALUES (@Title,@ISSN,@EBSCOResId,@Source,'a',0,checksum(isnull(Lower(RTrim(@Title)),''))) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF (@ISSN IS NOT NULL) BEGIN SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN]=@ISSN AND [dbo].[MasterTitle].[Title]=@Title END ELSE BEGIN SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN] IS NULL AND [dbo].[MasterTitle].[Title]=@Title END INSERT INTO EASUPPORT.dbo.MarcTitle ([EASUPPORT].[dbo].[MarcTitle].[TitleNo], [EASUPPORT].[dbo].[MarcTitle].[Title], [EASUPPORT].[dbo].[MarcTitle].[ConserNo], [EASUPPORT].[dbo].[MarcTitle].[MID], [EASUPPORT].[dbo].[MarcTitle].[ISSN], [EASUPPORT].[dbo].[MarcTitle].[eISSN], [EASUPPORT].[dbo].[MarcTitle].[ejsJournalID], [EASUPPORT].[dbo].[MarcTitle].[DocType], [EASUPPORT].[dbo].[MarcTitle].[DateCreated], [EASUPPORT].[dbo].[MarcTitle].[DateModified],[EASUPPORT].[dbo].[MarcTitle].[Status]) VALUES (@TitleNo, @Title, @ConserNo, @MID, @ISSN, @eISSN, @ejsJournalID, @DocType, getdate(), getdate(),'a') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[MatchTitle] ([dbo].[MatchTitle].[MatchTitle],[dbo].[MatchTitle].[TitleNo]) VALUES (@MatchTitle,@TitleNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPC_DeleteThesauruses_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20)) AS BEGIN --Clean DbThesaurus EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Delete this.SegName DbThesaurusNumbers', 'Segment:', @SegName, 'Volume:', @Volume DELETE FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo]=@DbVerNo AND [dbo].[DbThesaurus].[SegName]=@SegName AND [dbo].[DbThesaurus].[Volume]=@Volume END
CREATE FUNCTION [dbo].[EAIF_IsCollectionUsedByCustomLink_912](@ColNo int ) RETURNS bit AS BEGIN DECLARE @ParamNoCustomLink int DECLARE @ParamNoProfLink int select @ParamNoCustomLink =[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] = 'customerCustomLink' select @ParamNoProfLink =[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] = 'profCustomLinks' DECLARE @CustNo int DECLARE @CustID varchar(10) DECLARE @ColID nvarchar(50) SELECT @CustID=[dbo].[Collection].[CustID], @ColID=[dbo].[Collection].[ColID] From [dbo].[Collection] where [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 SELECT @CustNo=[dbo].[Customer].[CustNo] From [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID DECLARE @Links TABLE ( Num int IDENTITY NOT NULL, LinkID VARCHAR(255) NOT NULL ) Insert Into @Links(LinkID) select distinct cv.ItemName from [dbo].[CustomParamXmlValues] pv WITH (NOLOCK) INNER JOIN [dbo].[CustomParamXmlValues] cv WITH (NOLOCK) ON pv.ItemName=cv.ItemName where pv.ParamNo=@ParamNoProfLink and cv.ParamNo=@ParamNoCustomLink and cv.TargetNo= @CustNo and (cv.TargetNo<>103128 and cv.ItemName<>'kjtestcust:62271') DECLARE @CurrItem int DECLARE @MaxItem int SET @CurrItem = 1 SELECT @MaxItem=ISNULL(Max(Num), 0) From @Links DECLARE @LinkXML XML WHILE @CurrItem <=@MaxItem BEGIN select @LinkXML=ParamValue from [dbo].[CustomParamXmlValues] cv WITH (NOLOCK) JOIN @Links l ON cv.TargetNo=@CustNo and cv.ParamNo=@ParamNoCustomLink and cv.ItemName =l.LinkID WHERE l.Num=@CurrItem If Exists (select 1 from dbo.EAIF_GetCustomLinkCollections_912(@LinkXML) where [dbo].[EAIF_GetCustomLinkCollections_912].[CustID]=@CustID and [dbo].[EAIF_GetCustomLinkCollections_912].[ColID]=@ColID) RETURN 1 SET @CurrItem=@CurrItem+1 END RETURN 0 END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseVolumeList_70]( @DbVerNo int) AS BEGIN SELECT [dbo].[DbVolume].[Volume], [dbo].[DbVolume].[EpkPath], [dbo].[DbVolume].[LastUpdateDate] FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@DbVerNo ORDER BY [dbo].[DbVolume].[Volume] END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceCluster_102](@UserID nvarchar(20),@UserIP varchar(30), @ClustID varchar(20), @InterfaceID varchar(10), @Version varchar(10))AS BEGIN EXEC [dbo].[EAIP_DeleteInterfaceCluster_102] @UserID, @UserIP, @ClustID, @InterfaceID, @Version END
Create Procedure [dbo].[EAIP_IsAnyGroupPersonalizationEnabled_100] (@ConsortiumCustomerIds varchar(max)) As Begin DECLARE @ParamNo int declare @DefValue varchar(4000) Declare @Exists bit SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' if exists (Select 1 FROM dbo.EAIF_GetItemTable_70(@ConsortiumCustomerIds, ',') s join [dbo].[Customer] c on s.Item=c.CustID join [dbo].[UserGroup] ug on c.CustID=ug.CustID join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70([c].[CustType]) WHERE isnull(isnull([val].[ParamValue], [dval].[DefValue]),@DefValue)=1 and c.CustID<>'') Set @Exists=1 else set @Exists=0 select @Exists End
CREATE PROCEDURE [dbo].[EAUI_UpdateDBInterfaceLimiter_89] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterNo int, @ControlType int, @Show bit, @DefValue varchar(255), @DefPosn varchar(5), @ColNum varchar(5)) AS BEGIN DECLARE @LimiterId varchar(2) DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) DECLARE @Interface varchar(10) DECLARE @Version varchar(10) DECLARE @ScreenDescr nvarchar(255) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID], @Version =[dbo].[InterfaceScreen].[Version], @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @GlobalControlType int SELECT @GlobalControlType=convert(int, [dbo].[LimiterList].[ControlType]) FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo IF @GlobalControlType = @ControlType SELECT @ControlType=null DECLARE @SeqNo int SELECT @SeqNo=[dbo].[DbLimiter].[SeqNo] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiter].[LimiterNo]=@LimiterNo IF @GroupNo=-1 SELECT @GroupNo = null BEGIN TRY BEGIN TRANSACTION BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ([dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo] =@GroupNo)) UPDATE [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[ControlType]=@ControlType, [dbo].[DbInterfaceLimiter].[Show]=@Show, [dbo].[DbInterfaceLimiter].[DefValue]=@DefValue, [dbo].[DbInterfaceLimiter].[DefPosn]=null, [dbo].[DbInterfaceLimiter].[ColNum]=null WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ( [dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo] =@GroupNo) ELSE INSERT INTO [dbo].[DbInterfaceLimiter]([dbo].[DbInterfaceLimiter].[DbVerNo],[dbo].[DbInterfaceLimiter].[IntfScreenNo],[dbo].[DbInterfaceLimiter].[LimiterNo],[dbo].[DbInterfaceLimiter].[ControlType],[dbo].[DbInterfaceLimiter].[Show],[dbo].[DbInterfaceLimiter].[DefValue], [dbo].[DbInterfaceLimiter].[GroupNo], [dbo].[DbInterfaceLimiter].[SeqNo]) VALUES (@DbVerNo,@ScreenNo,@LimiterNo,@ControlType,@Show,@DefValue,@GroupNo,@SeqNo) END IF @DefPosn <>'' UPDATE [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[DefPosn]=convert(smallint, @DefPosn ) WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ( [dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo] =@GroupNo) IF @ColNum <>'' UPDATE [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[ColNum]=convert(smallint, @ColNum ) WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceLimiter].[LimiterNo]=@LimiterNo AND ( [dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo] =@GroupNo) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Limiter','Update Db Interface Limiter',@LimiterId, @Interface, @Version, @ScreenDescr COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Db Interface Limiter', 16, -1) END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceThemeDescriptions_88] (@InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Descriptions Nvarchar(max) SET @Descriptions=N'' SELECT @Descriptions = @Descriptions + N''+ ISNULL(ic.Description,sc.Description) +N' ' FROM [dbo].[SearchTheme] st LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc ON st.ThemeID=sc.ThemeID LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i ON st.ThemeID=i.ThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic ON i.InterfaceThemeNo=ic.InterfaceThemeNo WHERE st.ThemeID=sc.ThemeID AND st.ThemeID = @ThemeID RETURN @Descriptions END
CREATE PROCEDURE [dbo].[EAUI_GetCfgAppServicesList_70] AS BEGIN SELECT [dbo].[ConfigApplication].[ApplicationID], [dbo].[ConfigApplication].[Description] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationType]='S' AND [dbo].[ConfigApplication].[NotifyProtocol]<>'none' ORDER BY [dbo].[ConfigApplication].[Description] END
CREATE Procedure [dbo].[EAIP_AddDbContentList_91] @UserId nvarchar(20), @UserIp varchar(30), @ContentType smallint, @Description nvarchar(50), @ImageFileName varchar(50), @StartPageName varchar(50), @LinkText nvarchar(255) as if exists (select 1 from [dbo].[DbContentList] where [dbo].[DbContentList].[ContentType]=@ContentType) Begin RAISERROR('The ContentType (%d) already exists in DbContentList', 16, -1, @ContentType) Return End Begin Try Begin Transaction Insert [dbo].[DbContentList] ([dbo].[DbContentList].[ContentType], [dbo].[DbContentList].[Description], [dbo].[DbContentList].[ImageFileName], [dbo].[DbContentList].[StartPageName]) values (@ContentType, @Description, @ImageFileName, @StartPageName) Insert [dbo].[DbContentCaptions] ([dbo].[DbContentCaptions].[ContentType], [dbo].[DbContentCaptions].[LangCode], [dbo].[DbContentCaptions].[LinkText]) values (@ContentType, 'en', @LinkText) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'DbContentList', 'Add DbContentType', @ContentType Commit Transaction End try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetCustomerLevelParamControls] (@ParamName varchar(100)) AS IF EXISTS (Select 1 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName AND [dbo].[CustomParamList].[ParamLevel] = 'C') BEGIN SELECT c.ParamNo,c.ParamName,c.ParamType,e.EditControl,e.ValueTemplate,e.ProcInfo FROM [dbo].[CustomParamEditDetail] e JOIN [dbo].[CustomParamList] c ON c.ParamNo=e.ParamNo WHERE c.ParamName=@ParamName END ELSE BEGIN SELECT -1 AS ParamNo END
CREATE PROCEDURE dbo.EAUI_GetSystemLinksListFilteredPaged_252 @linkCategory NVARCHAR(MAX) = '', @linkName NVARCHAR(MAX) = '', @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN DECLARE @CustNo INT = dbo.EAIF_GetCustNo_70('System'), @ParamNo INT = dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C'); SET @linkCategory = COALESCE(@linkCategory, ''); SET @linkName = COALESCE(@linkName, ''); WITH CTE AS ( SELECT v.ItemName AS LinkID, CAST(v.ParamValue as XML) .value('(/systemCustomLink/@linkName)[1]', 'NVARCHAR(MAX)') AS LinkName FROM dbo.CustomParamXmlValues v WHERE v.TargetNo = @CustNo AND v.ParamLevel = 'C' AND v.ParamNo = @ParamNo AND (@linkCategory = '' OR CAST(v.ParamValue as XML) .value('(/systemCustomLink/@linkCategory)[1]', 'NVARCHAR(MAX)') = @linkCategory) AND (@linkName = '' OR CAST(v.ParamValue as XML) .value('(/systemCustomLink/@linkName)[1]', 'NVARCHAR(MAX)') LIKE '%' + @linkName + '%') ), PagedCte AS ( SELECT LinkID, LinkName FROM CTE ORDER BY LinkName ASC OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT LinkID, LinkName, NULL AS TotalCount FROM PagedCte UNION ALL SELECT NULL AS LinkID, NULL AS LinkName, COUNT(*) AS TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceLanguages_81] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceLanguages_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Languages', @SourceIntf, @TargetIntf END
CREATE PROCEDURE dbo.TEMP_SetProfileResearchStarters_91 ( @CustList varchar(8000) ) AS BEGIN /********************************************************************* Author: S.Freytsis Date: 08/25/2008 ******************************************* Stored procedure excepts comma delimited list of custID; For each custid research starters databases e6h or e0h will be set active (enable=1) and selected by default on all Profiles that have eligible database active (enable=1) *******************************************************************/ DECLARE @TempProductTable TABLE ( rsDb varchar(10), matchingDb Varchar(10) ) INSERT INTO @TempProductTable values ('e6h','bth') INSERT INTO @TempProductTable values ('e6h','bso') INSERT INTO @TempProductTable values ('e6h','buh') INSERT INTO @TempProductTable values('e0h','a9h') INSERT INTO @TempProductTable values ('e0h','a9h') INSERT INTO @TempProductTable values ('e0h','afh') INSERT INTO @TempProductTable values ('e0h','aph') INSERT INTO @TempProductTable values ('e0h','a9h') INSERT INTO @TempProductTable values ('e0h','a9h') INSERT INTO @TempProductTable values ('e0h','s8h') INSERT INTO @TempProductTable values ('e0h','a3h') INSERT INTO @TempProductTable values ('e0h','oih') INSERT INTO @TempProductTable values ('e0h','p6h') INSERT INTO @TempProductTable values ('e0h','ehh') INSERT INTO @TempProductTable values ('e0h','erh') INSERT INTO @TempProductTable values ('e0h','v1h') INSERT INTO @TempProductTable values ('e0h','vsh') DECLARE @RSDbname varchar(10) SET @RSDbname='e6h' Update [dbo].[ProfDatabase] Set [Enable] =1, [SelDefault]=1 FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] pd ON p.ProfNo=pd.ProfNo INNER JOIN [dbo].[DbList] d ON pd.DbVerNo=d.DbVerNo INNER JOIN dbo.EAIF_GetItemTable_70(@CustList, ',') c ON p.CustID =c.Item WHERE d.DbName=@RSDbname and d.DbLabel='live' and p.ProfNo in ( select p2.ProfNo from [dbo].[Profile] p2 INNER JOIN [dbo].[ProfDatabase] pd2 ON p2.ProfNo=pd2.ProfNo INNER JOIN [dbo].[DbList] d2 ON pd2.DbVerNo=d2.DbVerNo INNER JOIN @TempProductTable t ON d2.DbName=t.matchingDb INNER JOIN dbo.EAIF_GetItemTable_70(@CustList, ',') c2 ON p2.CustID =c2.Item where d2.DbLabel='live' and t.rsDb=@RSDbname and pd2.Enable=1 ) SET @RSDbname='e0h' Update [dbo].[ProfDatabase] Set [Enable] =1, [SelDefault]=1 FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] pd ON p.ProfNo=pd.ProfNo INNER JOIN [dbo].[DbList] d ON pd.DbVerNo=d.DbVerNo INNER JOIN dbo.EAIF_GetItemTable_70(@CustList, ',') c ON p.CustID =c.Item WHERE d.DbName=@RSDbname and d.DbLabel='live' and p.ProfNo in ( select p2.ProfNo from [dbo].[Profile] p2 INNER JOIN [dbo].[ProfDatabase] pd2 ON p2.ProfNo=pd2.ProfNo INNER JOIN [dbo].[DbList] d2 ON pd2.DbVerNo=d2.DbVerNo INNER JOIN @TempProductTable t ON d2.DbName=t.matchingDb INNER JOIN dbo.EAIF_GetItemTable_70(@CustList, ',') c2 ON p2.CustID =c2.Item where d2.DbLabel='live' and t.rsDb=@RSDbname and pd2.Enable=1 ) END
CREATE PROCEDURE [dbo].[EAIP_CopyDbCluster_102](@ClustId VARCHAR(20), @DbLabel VARCHAR(50), @DbVerNo INT, @Enable BIT, @DbSearchTag NVARCHAR(5)) AS BEGIN DECLARE @ClustNo Int IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' -- first get the target ClustNo from ClusterList, if it's not there we aren't -- going to add it or the DbCluster record IF (EXISTS (SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClustId AND [dbo].[ClusterList].[DbLabel] = @DbLabel)) BEGIN SELECT @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClustId AND [dbo].[ClusterList].[DbLabel] = @DbLabel -- now check to see if the record is already in DbCluster IF (EXISTS (SELECT 1 FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClustNo)) BEGIN UPDATE [dbo].[DbCluster] SET [dbo].[DbCluster].[Enable] = @Enable, [dbo].[DbCluster].[DbSearchTag] = @DbSearchTag WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClustNo END ELSE BEGIN INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag]) VALUES (@DbVerNo, @ClustNo, @Enable, @DbSearchTag) END END END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerService_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255), @ParamValue nvarchar(max) ) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int SELECT @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE BEGIN -- Make sure the link by the same name does not exist DECLARE @SSName nvarchar(255) SET @SSName = dbo.EAIF_GetXmlAttribValue_70(@ParamValue,'name' ) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND dbo.EAIF_GetXmlAttribValue_70([dbo].[CustomParamXmlValues].[ParamValue],'name' )=@SSName) BEGIN RAISERROR (N'The Select Service %s already exists!',16,-1,@SSName) RETURN END DECLARE @NewItemName varchar(255) EXEC [dbo].[EAIPO_GetCustomerSSItemName_70] @CustID, @NewItemName OUTPUT INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) values (@TargetNo,'C', @ParamNo,@NewItemName,@ParamValue) END --EXEC EAIP_UpdateCustomerParamXmlValue_70 @CustID, 'customerSSText', @ItemName, @ParamValue EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Update a "Select Service" Item', @CustID, @ItemName END
CREATE PROCEDURE [dbo].[EAUI_GetMDbSTSddList_90] AS SELECT mdbsl.MultiDBSTSID, mdbsl.MultiDBSTSID + ' (' + [mdbsc].[Caption] +')' as MultiDbSTS From [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where [mdbsc].[LangCode]='en' Order by mdbsl.MultiDBSTSID
CREATE TRIGGER dbo.[ProfileUpdatedTrigger] ON dbo.Profile AFTER UPDATE AS BEGIN SET NOCOUNT ON; INSERT INTO dbo.ChangedProfile (ProfNo, CustID, GroupID, ProfID) SELECT ProfNo, CustID, GroupID, ProfID FROM ( select * from Inserted except select * from Deleted ) p END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceSearchThemes_Batch] @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang varchar(10) AS BEGIN CREATE TABLE #Objects( ID INT identity(1, 1) ,InterfaceID varchar(10) ,Version varchar(10) ,ThemeID varchar(20) ,Caption nvarchar(255) ,ImgAltText nvarchar(255) ) INSERT INTO #Objects ( InterfaceID ,Version ,ThemeID ,Caption ,ImgAltText ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./ThemeId)[1]', 'varchar(20)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./ImgAltText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID varchar(10) ,@Version varchar(10) ,@ThemeID varchar(20) ,@Caption nvarchar(255) ,@ImgAltText nvarchar(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@ThemeID = ThemeID ,@Caption = Caption ,@ImgAltText = ImgAltText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceSearchThemes_83] @UserID ,@UserIP ,@InterfaceID ,@Version ,@ThemeID ,@Caption ,@ImgAltText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetFunFacts_70](@InterfaceID varchar(10)) AS BEGIN SELECT [dbo].[FunFacts].[FactNo], [dbo].[FunFacts].[Title], [dbo].[FunFacts].[Image], [dbo].[FunFacts].[Fact] FROM [dbo].[FunFacts] Where [dbo].[FunFacts].[InterfaceID] = @InterfaceID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDbAuthoritiesToAttach_85]( @InterfaceID varchar(10), @Version varchar(10),@DbVerNo int) AS BEGIN DECLARE @AutoAddAuthority bit SELECT @AutoAddAuthority=[dbo].[InterfaceVersion].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version DECLARE @ClientType varchar(10) SELECT @ClientType=[dbo].[Interface].[ClientType] FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@InterfaceID DECLARE @WebClient1 bit DECLARE @Z3950Client1 bit DECLARE @WebClient2 bit DECLARE @Z3950Client2 bit IF @ClientType='web' BEGIN SET @WebClient1 = 1 SET @Z3950Client1 = 0 SET @WebClient2 = 1 SET @Z3950Client2 = 1 END IF @ClientType='z3950' BEGIN SET @WebClient1 = 0 SET @Z3950Client1 = 1 SET @WebClient2 = 1 SET @Z3950Client2 = 1 END IF @AutoAddAuthority=0 --all dbs that are not attached to the interface SELECT dba.AuthDbVerNo, db.DisplayName+N'('+db.DbName+N')' AS DbName FROM [dbo].[DbList] db INNER JOIN [dbo].[DbAuthority] dba ON db.DbVerNo = dba.AuthDbVerNo LEFT OUTER JOIN [dbo].[InterfaceDbAuthority] ia ON ia.InterfaceID = @InterfaceID AND ia.Version = @Version AND dba.MainDbVerNo = ia.MainDbVerNo AND dba.AuthDbVerNo = ia.AuthDbVerNo WHERE dba.MainDbVerNo= @DbVerNo AND ia.AuthDbVerNo is null AND (db.WebClient=@WebClient1 OR db.WebClient=@WebClient2) AND (db.Z3950Client=@Z3950Client1 OR db.Z3950Client=@Z3950Client2) Order By dba.SeqNo ELSE--dbs with IncludeWhenAutoAdd is false and not attached to the interface SELECT dba.AuthDbVerNo, db.DisplayName+N'('+db.DbName+N')' AS DbName FROM [dbo].[DbList] db INNER JOIN [dbo].[DbAuthority] dba ON db.DbVerNo = dba.AuthDbVerNo LEFT OUTER JOIN [dbo].[InterfaceDbAuthority] ia ON ia.InterfaceID = @InterfaceID AND ia.Version = @Version AND dba.MainDbVerNo = ia.MainDbVerNo AND dba.AuthDbVerNo = ia.AuthDbVerNo WHERE dba.MainDbVerNo= @DbVerNo AND db.IncludeWhenAutoAdd = 0 AND ia.AuthDbVerNo is null AND (db.WebClient=@WebClient1 OR db.WebClient=@WebClient2) AND (db.Z3950Client=@Z3950Client1 OR db.Z3950Client=@Z3950Client2) Order By dba.SeqNo END
CREATE PROCEDURE [dbo].[EAIPO_AddMasterTitle_81]( @Title nvarchar(430), @ISSN varchar(20), @eISSN varchar(20), @EBSCOResId varchar(10), @ejsJournalID varchar(10), @ConserNo varchar(10), @MID varchar(10), @DocType varchar(5), @Source varchar(10), @PLinksAllowed bit, @TitleNo int OUTPUT) AS BEGIN DECLARE @MatchTitle nvarchar(430) IF @ISSN ='' SET @ISSN = null SET @MatchTitle=dbo.EAIF_GetMatchTitle_70(@Title,@ISSN) IF @ISSN IS NOT NULL BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN]=@ISSN) BEGIN RAISERROR('The ISSN %s already exists',16,-1,@ISSN) RETURN END END ELSE BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MatchTitle] WITH(NOLOCK) WHERE [dbo].[MatchTitle].[MatchTitle]=@MatchTitle) BEGIN RAISERROR('The Title %s already exists',16,-1,@Title) RETURN END END BEGIN TRANSACTION INSERT INTO [dbo].[MasterTitle] ([dbo].[MasterTitle].[Title],[dbo].[MasterTitle].[ISSN],[dbo].[MasterTitle].[EBSCOResId],[dbo].[MasterTitle].[Source],[dbo].[MasterTitle].[Status],[dbo].[MasterTitle].[LinkCount],[dbo].[MasterTitle].[RestrictPLinks],[dbo].[MasterTitle].[TitleChecksum]) VALUES (@Title,@ISSN,@EBSCOResId,@Source,'a',0,@PLinksAllowed,checksum(isnull(Lower(RTrim(@Title)),''))) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF (@ISSN IS NOT NULL) BEGIN SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN]=@ISSN AND [dbo].[MasterTitle].[TitleChecksum]=checksum(Lower(RTrim(@Title))) AND [dbo].[MasterTitle].[Title]=@Title END ELSE BEGIN SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[ISSN] IS NULL AND [dbo].[MasterTitle].[TitleChecksum]=checksum(Lower(RTrim(@Title))) AND [dbo].[MasterTitle].[Title]=@Title END INSERT INTO EASUPPORT.dbo.MarcTitle ([EASUPPORT].[dbo].[MarcTitle].[TitleNo], [EASUPPORT].[dbo].[MarcTitle].[Title], [EASUPPORT].[dbo].[MarcTitle].[ConserNo], [EASUPPORT].[dbo].[MarcTitle].[MID], [EASUPPORT].[dbo].[MarcTitle].[ISSN], [EASUPPORT].[dbo].[MarcTitle].[eISSN], [EASUPPORT].[dbo].[MarcTitle].[ejsJournalID], [EASUPPORT].[dbo].[MarcTitle].[DocType], [EASUPPORT].[dbo].[MarcTitle].[DateCreated], [EASUPPORT].[dbo].[MarcTitle].[DateModified],[EASUPPORT].[dbo].[MarcTitle].[Status]) VALUES (@TitleNo, @Title, @ConserNo, @MID, @ISSN, @eISSN, @ejsJournalID, @DocType, getdate(), getdate(),'a') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[MatchTitle] ([dbo].[MatchTitle].[MatchTitle],[dbo].[MatchTitle].[TitleNo]) VALUES (@MatchTitle,@TitleNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPC_GetAuthorityList_70](@MasterDbList int) AS BEGIN SELECT md.DbName FROM [dbo].[DbAuthority] da INNER JOIN [dbo].[DbList] md ON da.AuthDbVerNo = md.DbVerNo WHERE da.MainDbVerNo = @MasterDbList AND da.OwnedFlag = 1 AND md.DbType IN (2,7) ORDER BY da.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetDatabaseVolumeNames_70](@DbVerNo int) AS BEGIN SELECT [dbo].[DbVolume].[Volume] FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo] = @DbVerNo ORDER BY [dbo].[DbVolume].[Volume] END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerAndParentBrandingList_70](@CustID varchar(10)) AS BEGIN EXEC [dbo].[EAUI_GetParentBrandingList_70] @CustID EXEC [dbo].[EAUI_GetCustomerBrandingList_70] @CustID END
CREATE PROCEDURE [dbo].[EAIP_IsCustDbSubscriptionValid_100]( @CustID varchar(10), @ParamName varchar(100)) AS BEGIN Declare @ParamValue nvarchar(4000) Declare @DefValue nvarchar(2000) Declare @CustType char(1) Declare @CustNo int Select @CustType=[dbo].[Customer].[CustType],@CustNo=[dbo].[Customer].[CustNo] from [dbo].[Customer] Where [dbo].[Customer].[CustID]=@CustID Select @DefValue=ISNULL(d.DefValue,c.DefValue) from [dbo].[CustomParamList] c LEFT OUTER join [dbo].[CustomParamCustTypeDefaults] d on (c.ParamNo= d.ParamNo) and d.CustType = @CustType where c.ParamName =@ParamName SELECT ISNULL(cpsv.ParamValue,@DefValue) FROM dbo.CustomParamList cpl LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpl.ParamNo=cpsv.ParamNo AND cpsv.ParamLevel='C' AND cpsv.TargetNo=@CustNo WHERE cpl.ParamName=@ParamName END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbInterfaceSearchOptions_76] (@UserID nvarchar(20), @UserIP varchar(15),@DbVerNo int, @ScreenNo int, @OptionNo int, @Show int, @SeqNo int ) AS BEGIN DECLARE @DbName varchar(30) SELECT @DbName=[dbo].[DbList].[DbName]+'('+ [dbo].[DbList].[DbLabel]+')'FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Interface varchar(30) DECLARE @ScreenDescr nvarchar(255) SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID]+'('+ [dbo].[InterfaceScreen].[Version]+')', @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[SearchOptionList].[SearchOptionId] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionNo]=@OptionNo BEGIN TRANSACTION UPDATE [dbo].[DbInterfaceSearchOption] SET [dbo].[DbInterfaceSearchOption].[Show]=@Show, [dbo].[DbInterfaceSearchOption].[SeqNo]=@SeqNo WHERE [dbo].[DbInterfaceSearchOption].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceSearchOption].[IntfScreenNo]=@ScreenNo AND [dbo].[DbInterfaceSearchOption].[SearchOptionNo]=@OptionNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'SearchOptions','Update DBInterface Search Option',@Interface, @DbName, @ScreenDescr, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceThemeImageAltTexts_83](@InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @ImageAltTexts Nvarchar(max) SET @ImageAltTexts=N'' SELECT @ImageAltTexts = @ImageAltTexts + N''+ ISNULL(it.ImageAltText,gt.ImageAltText) +N' ' FROM (SELECT st.ThemeID, ISNULL(sc.LangCode, '') AS LangCode, ISNULL(sc.ImageAltText,N'') AS ImageAltText FROM [dbo].[SearchTheme] st LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc ON st.ThemeID=sc.ThemeID WHERE st.ThemeID = @ThemeID) gt LEFT OUTER JOIN (SELECT i.ThemeID, ISNULL(ic.LangCode, '') AS LangCode, ISNULL(ic.ImageAltText,N'') AS ImageAltText FROM [dbo].[InterfaceSearchTheme] i LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic ON i.InterfaceThemeNo=ic.InterfaceThemeNo WHERE [i].[ThemeID] = @ThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version) it ON gt.ThemeID=it.ThemeID AND gt.LangCode=it.LangCode RETURN @ImageAltTexts END
CREATE PROCEDURE [dbo].[EAUI_GetCfgServerParamList_70](@AppNo int, @SrvNo int) AS BEGIN SELECT p.ParamNo, p.ParamName, p.ParamType, PromptText=ISNULL([d].[PromptText],p.ParamName), HelpText=ISNULL([d].[HelpText],''), EditControl = ISNULL( [d].[EditControl], (CASE p.ParamType WHEN 'X' THEN 'Link' ELSE 'TextBox' END ) ), ValueTemplate = ISNULL( [d].[ValueTemplate], '' ), Value=ISNULL(ISNULL(convert(nvarchar(2000),s.ParamValue), convert(nvarchar(2000),a.ParamValue)), N''), ParamLevel=ISNULL(ISNULL(s.ParamLevel, a.ParamLevel), '' ), ProcInfo=ISNULL([d].[ProcInfo],''), a.ParamValue AS DefValue FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] s ON s.ParamNo = p.ParamNo AND [s].[ParamLevel] = 'S' AND [s].[TargetNo] = @SrvNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo END
CREATE PROCEDURE [dbo].[EAIP_AddDbParam_104] ( @ParamName varchar(100), @ParamType char(1), @DefValue nvarchar(2000) = NULL, @PromptText varchar(255), @HelpText varchar(255), @EditLevel tinyint, @EditControl varchar(50), @ValueTemplate varchar(1000)=null, @ProcInfo varchar(1000)=null, @newParamPosition VARCHAR(10) = NULL, @paramNameToCompare VARCHAR(100) = '', @paramSourceType varchar(10)='D', @paramUsePhysical bit = 0, @notes varchar(500) = '', @ParameterUsage smallint ) AS BEGIN -- ParameterUsage: has following int values, addition of these values will be stored based on param usage --ParamUsage Bit Assignment Int Value --Ehost UI 0000 0001 1 --Search Service 0000 0010 2 --EPDS 0000 0100 4 --Production 0000 1000 8 DECLARE @ParamNo int Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName If @ParamNo is null insert into [dbo].[DbParamList]([dbo].[DbParamList].[ParamName], [dbo].[DbParamList].[ParamType],[dbo].[DbParamList].[ParamSourceType],[dbo].[DbParamList].[InheritFromPhysical],[dbo].[DbParamList].[Notes],[dbo].[DbParamList].[ParameterUsage]) values(@ParamName, @ParamType,@paramSourceType,@paramUsePhysical, @notes, @ParameterUsage) else begin declare @oldValue_InheritFromPhysical bit =0 select @oldValue_InheritFromPhysical=[dbo].[DbParamList].[InheritFromPhysical] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName update [dbo].[DbParamList] set [dbo].[DbParamList].[ParamType]=@ParamType, [dbo].[DbParamList].[ParamSourceType]=@paramSourceType, [dbo].[DbParamList].[InheritFromPhysical] =@paramUsePhysical, [dbo].[DbParamList].[Notes] = @notes,[dbo].[DbParamList].[ParameterUsage]=@ParameterUsage where [dbo].[DbParamList].[ParamName] = @ParamName if (@oldValue_InheritFromPhysical <> @paramUsePhysical) -- cleanup param value from Subset DB if param's InheritFromPhysical value changes begin delete [dbo].[DbParamScalarValues] FROM [dbo].[DbParamScalarValues] v inner join [dbo].[DbSubset] s on s.SubsetDbVerNo=v.DbVerNo WHERE v.ParamNo = @ParamNo end if @oldValue_InheritFromPhysical=1 and @paramUsePhysical =0 -- copy param value from physical DB to Subset DB, when param InheritFromPhysical value changes from true to false. begin insert into [dbo].[DbParamScalarValues]([v].[DbVerNo], [v].[ParamNo], [v].[ParamValue]) select ds.SubsetDbVerNo, @ParamNo, v.ParamValue FROM [dbo].[DbParamScalarValues] v JOIN [dbo].[DbSubset] ds ON ds.PhysDbVerNo = v.DbVerNo WHERE v.ParamNo = @ParamNo end end -- of @ParamNo not null Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName If @ParamNo is null begin RAISERROR ('Could not create parameter', 0,1) RETURN end if not exists ( select [dbo].[DbParamDefaults].[ParamNo] from [dbo].[DbParamDefaults] where [dbo].[DbParamDefaults].[ParamNo] = @ParamNo) insert into [dbo].[DbParamDefaults] Values (@ParamNo,@DefValue) else Update [dbo].[DbParamDefaults] set [dbo].[DbParamDefaults].[DefValue]=@DefValue Where [dbo].[DbParamDefaults].[ParamNo]=@ParamNo Delete [dbo].[DbParamSourceTypeDefaults] from [dbo].[DbParamSourceTypeDefaults] a join (Select * from dbo.EAIF_GetItemTable_70(@paramSourceType, ';') st right outer join [dbo].[DbParamSourceTypeDefaults] dbpstd on st.Item=dbpstd.SourceType where [dbpstd].[ParamNo]=@ParamNo and st.Item is null) b on a.ParamNo=b.ParamNo and a.SourceType=b.SourceType if not exists ( select [dbo].[DbParamEditDetail].[ParamNo] from [dbo].[DbParamEditDetail] where [dbo].[DbParamEditDetail].[ParamNo] = @ParamNo ) insert into [dbo].[DbParamEditDetail] ( [dbo].[DbParamEditDetail].[ParamNo], [dbo].[DbParamEditDetail].[PromptText], [dbo].[DbParamEditDetail].[HelpText], [dbo].[DbParamEditDetail].[SeqNo], [dbo].[DbParamEditDetail].[EditLevel], [dbo].[DbParamEditDetail].[EditControl], [dbo].[DbParamEditDetail].[ValueTemplate], [dbo].[DbParamEditDetail].[ProcInfo] ) Select @ParamNo,@PromptText,@HelpText, max([dbo].[DbParamEditDetail].[SeqNo])+1 ,@EditLevel,@EditControl,@ValueTemplate, @ProcInfo from [dbo].[DbParamEditDetail] else Update [dbo].[DbParamEditDetail] SET [dbo].[DbParamEditDetail].[PromptText]=@PromptText, [dbo].[DbParamEditDetail].[HelpText]=@HelpText, [dbo].[DbParamEditDetail].[EditLevel]=@EditLevel, [dbo].[DbParamEditDetail].[EditControl]=@EditControl, [dbo].[DbParamEditDetail].[ValueTemplate]=@ValueTemplate, [dbo].[DbParamEditDetail].[ProcInfo]=@ProcInfo Where [dbo].[DbParamEditDetail].[ParamNo]=@ParamNo IF @newParamPosition IS NOT NULL BEGIN EXEC dbo.EAIP_DbParam_Resort_96 @ParamName, @newParamPosition, @paramNameToCompare END END
CREATE Procedure [dbo].[EAIP_GetCustomerListByIDs_100] (@CustIDs varchar(max)) as select distinct c.* from [dbo].[Customer] c join dbo.EAIF_GetItemTableSingleByte_70(@CustIDs, ',') a on c.CustID=a.Item
CREATE PROCEDURE [dbo].[EAUI_GetTargetTypelist_99] AS Select [dbo].[DbSourceTargetTypeList].[TargetType] AS FieldCode, [dbo].[DbSourceTargetTypeList].[Description] FROM [dbo].[DbSourceTargetTypeList] Order By [dbo].[DbSourceTargetTypeList].[SeqNo]
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceParams_70](@UserID nvarchar(20), @UserIP varchar(15), @SourceInterfaceID varchar(10), @SourceVersion varchar(10), @TgtInterfaceID varchar(10), @TgtVersion varchar(10), @CopyLimiters bit)AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceVersionParameters_70] @SourceInterfaceID, @SourceVersion ,@TgtInterfaceID, @TgtVersion, @CopyLimiters EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Parameters', @SourceInterfaceID, @SourceVersion ,@TgtInterfaceID, @TgtVersion, @CopyLimiters END
Create Procedure [dbo].[Util_AddContentFilterToCustIDList](@ContentFilterListID varchar(25), @CustIdList varchar(max),@DateStamp varchar(10)) As Begin Declare @ContentFilterListNo int Declare @CustBackupTableName varchar(max) Declare @ProfBackupTableName varchar(max) Declare @sql varchar(max) Declare @ErrorTable table (CustID varchar(10)) Declare @ParamNo int Declare @ErrorTable2 table (CustID varchar(10), GroupID varchar(10), ProfID varchar(10)) select @ContentFilterListNo=[dbo].[ContentFilterList].[ContentFilterNo] from [dbo].[ContentFilterList] where [dbo].[ContentFilterList].[ContentFilterListID]=@ContentFilterListID if @ContentFilterListNo is null Begin RAISERROR('ContentFilterListID does not exist.',16,-1,@ContentFilterListID) RETURN end select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='contentFiltersAsLimiters' set @CustBackupTableName='Back.CustContentFilters_' + @ContentFilterListID + '_' + @DateStamp set @ProfBackupTableName='Back.ProfContentFilters_' + @ContentFilterListID + '_' + @DateStamp set @sql=' IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name = ' + char(39) + 'BACK' + char(39) + ') EXEC (' + char(39) + 'CREATE SCHEMA BACK' + char(39) + '); IF OBJECT_ID(' + char(39)+ @CustBackupTableName + char(39) + ') IS NULL BEGIN CREATE TABLE ' + @CustBackupTableName + ' ( [CustContentFilterNo] INT NOT NULL, [ContentFilterNo] INT NOT NULL, [CustID] VARCHAR(10) NOT NULL ) END' exec(@sql) set @sql=' IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name = ' + char(39) + 'BACK' + char(39) + ') EXEC (' + char(39) + 'CREATE SCHEMA BACK' + char(39) + '); IF OBJECT_ID(' + char(39)+ @ProfBackupTableName + char(39) + ') IS NULL BEGIN CREATE TABLE ' + @ProfBackupTableName + ' ( [ProfNo] INT NOT NULL, [IntfScreenNo] INT NOT NULL, [CustContentFilterNo] INT NOT NULL, [DefValue] VARCHAR(3) NOT NULL ) END' exec(@sql) set @sql=' if (select Count(*) from ' + @CustBackupTableName + ') = 0 Insert ' + @CustBackupTableName + ' select CustContentFilterNo, ContentFilterNo, CustID from CustContentFilters' exec(@sql) set @sql=' if (select Count(*) from ' + @ProfBackupTableName + ') = 0 Insert ' + @ProfBackupTableName + ' select ProfNo, IntfScreenNo, CustContentFilterNo, DefValue from ProfContentFilters' exec(@sql) Create table #CustIdTable (CustID varchar(10)) Insert #CustIdTable Select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@CustIdList, ',') Insert [dbo].[CustContentFilters] ([ccf].[ContentFilterNo], [ccf].[CustID]) Select @ContentFilterListNo, ct.CustID from #CustIdTable ct join [dbo].[Customer] c on ct.CustID=c.CustID left outer join [dbo].[CustContentFilters] ccf on ct.CustID=ccf.CustID and ccf.ContentFilterNo=@ContentFilterListNo where ccf.CustContentFilterNo is null Insert [dbo].[ProfContentFilters] ([pcf].[ProfNo], [pcf].[IntfScreenNo], [pcf].[CustContentFilterNo], [pcf].[DefValue]) select p.ProfNo, [is].IntfScreenNo, ccf.CustContentFilterNo, 'On' from [dbo].[CustContentFilters] ccf join [dbo].[Profile] p on ccf.CustID=p.CustID join [dbo].[InterfaceScreen] [is] on p.InterfaceID=[is].InterfaceID and p.Version=[is].Version join [dbo].[InterfaceParamList] ipl on p.InterfaceID=ipl.InterfaceID and p.Version=ipl.Version and ipl.ParamNo=@ParamNo left outer join [dbo].[ProfContentFilters] pcf on p.ProfNo=pcf.ProfNo where ccf.ContentFilterNo=@ContentFilterListNo and pcf.ProfNo is null Insert @ErrorTable (CustID) select ct.CustID from #CustIdTable ct join [dbo].[Customer] c on ct.CustID=c.CustID left outer join [dbo].[CustContentFilters] ccf on ct.CustID=ccf.CustID and ccf.ContentFilterNo=@ContentFilterListNo where ccf.CustContentFilterNo is null Insert @ErrorTable2 (CustID, GroupID, ProfID) select p.CustID, p.GroupID, p.ProfID from [dbo].[CustContentFilters] ccf join [dbo].[Profile] p on ccf.CustID=p.CustID join [dbo].[InterfaceScreen] [is] on p.InterfaceID=[is].InterfaceID and p.Version=[is].Version join [dbo].[InterfaceParamList] ipl on p.InterfaceID=ipl.InterfaceID and p.Version=ipl.Version and ipl.ParamNo=@ParamNo left outer join [dbo].[ProfContentFilters] pcf on p.ProfNo=pcf.ProfNo where ccf.ContentFilterNo=@ContentFilterListNo and pcf.ProfNo is null IF (SELECT COUNT(*) FROM @ErrorTable) > 0 Begin Select * from @ErrorTable PRINT 'Verification Failure. ContentFilterList ' + @ContentFilterListID + ' not attached to above CustIDs' End ELSE PRINT 'Verification Success. ContentFilterList ' + @ContentFilterListID + ' attached to all the given CustIDs' IF (Select count(*) from @ErrorTable2) > 0 Begin Select * from @ErrorTable2 PRINT 'Verification Failure. ContentFilterList ' + @ContentFilterListID + ' not enabled for above Profiles' End ELSE PRINT 'Verification Success. ContentFilterList ' + @ContentFilterListID + ' enabled for all Profiles' drop table #CustIdTable End
--sql content merged from file: \StoredProcedures\EAIP_CopyDbDocType_77.sql CREATE PROCEDURE [dbo].[EAIP_CopyDbDocType_77](@DbVerNo int, @DocTypeID varchar(10),@SearchString varchar(1500), @TargetDB varchar(10))AS /** procedure is used by EPCopy **/ BEGIN IF @SearchString='' SET @SearchString = null INSERT INTO [dbo].[DbDocType] ([dbo].[DbDocType].[DbVerNo],[dbo].[DbDocType].[DocTypeNo],[dbo].[DbDocType].[TargetDb],[dbo].[DbDocType].[SearchString]) SELECT @DbVerNo, [dbo].[DocTypeList].[DocTypeNo], @TargetDB, @SearchString FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID END
CREATE PROCEDURE [dbo].[EAUI_UpdateSystemCustomLink_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255), @ParamValue nvarchar(max) ) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int SELECT @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C') IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName) UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE BEGIN DECLARE @LinkName nvarchar(255) SET @LinkName = dbo.EAIF_GetXmlAttribValue_70(@ParamValue,'linkName' ) IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND dbo.EAIF_GetXmlAttribValue_70([dbo].[CustomParamXmlValues].[ParamValue],'linkName' )=@LinkName) BEGIN RAISERROR ('The link %s already exists!',16,-1,@LinkName) RETURN END DECLARE @NewItemName varchar (255) EXEC [dbo].[EAIPO_GetCustomLinkItemName_70] 'system', '', @NewItemName OUTPUT INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) values (@TargetNo,'C', @ParamNo,@NewItemName,@ParamValue) END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Update System Custom Link', @CustID, @ItemName, @ParamValue END
CREATE PROCEDURE [dbo].[EAUI_GetMDbSTSDetails_90] @MultiDbSTSID varchar(10), @LangCode varchar(10) AS Select mdbsl.MultiDBSTSID, [mdbsl].[Description], [mdbsl].[SortOption], [mdbsl].[SearchImage], [mdbsl].[ResultImage], IsNull((Select [dbo].[MultiDbSTSCaption].[Caption] from [dbo].[MultiDbSTSCaption] where [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode and [dbo].[MultiDbSTSCaption].[MultiDBSTSID]=@MultiDbSTSID), '') as Caption, IsNull((Select [dbo].[MultiDbSTSCaption].[MouseOverText] from [dbo].[MultiDbSTSCaption] where [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode and [dbo].[MultiDbSTSCaption].[MultiDBSTSID]=@MultiDbSTSID),'') as MouseOverText From [dbo].[MultiDbSTSList] mdbsl --Join MultiDbSTSCaption mdbsc --on mdbsl.MultiDbSTSID=mdbsc.MultiDbSTSID where mdbsl.MultiDBSTSID=@MultiDbSTSID --LangCode=@LangCode and mdbsl.MultiDbSTSID=@MultiDbSTSID
CREATE TRIGGER dbo.UserGroupDeletedTrigger ON dbo.UserGroup AFTER DELETE AS BEGIN SET NOCOUNT ON; INSERT INTO dbo.DeletedUserGroup (GroupNo, CustID, GroupID) SELECT GroupNo, CustID, GroupID FROM deleted END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceToolbarItem_77](@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @Name varchar(100), @Caption nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @IntfToolbarItem int SELECT @IntfToolbarItem=[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version AND [dbo].[InterfaceToolbar].[ItemName]=@Name IF @IntfToolbarItem is null RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbarCaption] WHERE [dbo].[InterfaceToolbarCaption].[IntfToolbarItem]=@IntfToolbarItem AND [dbo].[InterfaceToolbarCaption].[LangCode]=@Lang) BEGIN UPDATE [dbo].[InterfaceToolbarCaption] SET [dbo].[InterfaceToolbarCaption].[Caption]=@Caption WHERE [dbo].[InterfaceToolbarCaption].[IntfToolbarItem]=@IntfToolbarItem AND [dbo].[InterfaceToolbarCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Interface Toolbar Item Caption' END ELSE BEGIN INSERT INTO [dbo].[InterfaceToolbarCaption]([dbo].[InterfaceToolbarCaption].[IntfToolbarItem],[dbo].[InterfaceToolbarCaption].[LangCode],[dbo].[InterfaceToolbarCaption].[Caption]) VALUES (@IntfToolbarItem,@Lang,@Caption) SET @LogFlag ='Translate(Insert) Interface Toolbar Item Caption' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface ToolbarItem',@LogFlag, @InterfaceID, @Version, @Name, @Lang, @Caption COMMIT TRANSACTION END
CREATE Procedure [dbo].[EPCS_GetGroupAuthDatabases_97] @CustId varchar(10), @GroupID varchar(10), @ProfID varchar(10), @DbTypes varchar(1000) AS BEGIN SET NOCOUNT ON; DECLARE @profileDbLabel VARCHAR(10) SELECT @profileDbLabel = [p].[DbLabel] FROM [dbo].[Profile] p WHERE p.CustID = @CustId AND p.GroupID = @GroupID AND p.ProfID = @ProfID SELECT db.DbName, db.DbType, db.ContentType, MAX(CASE p.ProfID WHEN @ProfID THEN 'P' ELSE 'G' END ) AS TypeOfDatabaseAccess FROM dbo.Profile p JOIN dbo.ProfDatabase pd ON p.ProfNo = pd.ProfNo JOIN [dbo].[DbAuthority] a ON a.MainDbVerNo = pd.DbVerNo JOIN dbo.DbList db ON db.DbVerNo = a.AuthDbVerNo JOIN dbo.EAIF_GetItemTable_70(@DbTypes,',') t ON t.Item = db.DbType WHERE p.CustID = @CustId AND p.GroupID = @GroupID AND db.DbLabel = @profileDbLabel AND (pd.AccessEndDate IS NULL OR DATEDIFF(dd, CURRENT_TIMESTAMP, pd.AccessEndDate) >= 0) AND pd.Enable = 1 AND (pd.Mode IS NULL OR pd.Mode <> 'X') GROUP BY db.DbName, db.DbType, db.ContentType END
Create Procedure [dbo].[EAUI_GetInterfaceDbFeatureFields_103](@InterfaceID varchar(10), @Version varchar(10), @FeatureNo smallint, @FieldLevel char, @ItemNo smallint) As Begin Declare @InterfaceDocHandle int Declare @GlobalDocHandle int Declare @InterfaceFieldValueXml xml DECLARE @GlobalFieldValueXml xml Declare @MergedXml xml Declare @AutoAdd bit -- get Interface override FieldValueXml for given Feature Select @InterfaceFieldValueXml=[dbo].[InterfaceDbFeatureValues].[FieldValueXml] from [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo and [dbo].[InterfaceDbFeatureValues].[ItemNo]=@ItemNo -- get Global FieldValueXml for given Feature Select @GlobalFieldValueXml=[dbo].[FeatureValues].[FieldValueXml] from [dbo].[FeatureValues] where [dbo].[FeatureValues].[FeatureNo]=@FeatureNo and [dbo].[FeatureValues].[ItemNo]=@ItemNo EXEC [dbo].[sp_xml_preparedocument] @InterfaceDocHandle OUTPUT, @InterfaceFieldValueXml EXEC [dbo].[sp_xml_preparedocument] @GlobalDocHandle OUTPUT, @GlobalFieldValueXml select @AutoAdd=[dbo].[FeatureList].[AutoAddForInterfaces] from [dbo].[FeatureList] where [dbo].[FeatureList].[FeatureNo]=@FeatureNo -- if the given Feature has AutoAddForInterfaces set to 0 merge the Interface override and Global values if @AutoAdd=0 select @MergedXml=dbo.EAIF_MergeGlobalAndInterfaceDbFeatureValues_103(@InterfaceDocHandle, @InterfaceFieldValueXml, @GlobalDocHandle, @GlobalFieldValueXml) else Begin -- if there is a Interface override value for the given Feature with AutoAddForInterfaces set to 1 merge the Interface override and Global values -- otherwise use the Global value if exists (Select 1 from [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo) select @MergedXml=dbo.EAIF_MergeGlobalAndInterfaceDbFeatureValues_103(@InterfaceDocHandle, @InterfaceFieldValueXml, @GlobalDocHandle, @GlobalFieldValueXml) else set @MergedXml=@GlobalFieldValueXml end exec [dbo].[sp_xml_removedocument] @InterfaceDocHandle exec [dbo].[sp_xml_removedocument] @GlobalDocHandle DECLARE @Category varchar(20) DECLARE @TemplCategory varchar(20) SELECT @Category=[dbo].[FeatureList].[Category] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo SET @TemplCategory=@Category+'_templ' -- select details for given Feature SELECT [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant], [dbo].[FeatureList].[VisibleItemCount], [dbo].[FeatureList].[SelectionMode], [dbo].[FeatureList].[AutoAddForInterfaces] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo] =@FeatureNo -- select Fields for the given Feature SELECT ff.FieldName,ff.FieldType,ff.IncludeInSummary, ff.EditControl,ff.ValueTemplate FROM [dbo].[FeatureList] fl join [dbo].[FeatureFields] ff on fl.FeatureNo = ff.FeatureNo AND ff.FieldLevel='F' and ff.AllowInterfaceOverride=1 WHERE fl.Category= @TemplCategory ORDER BY [ff].[SeqNo] select @MergedXml as FieldValueXml End
--IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'EAIPO_AddNoMessage_70') --BEGIN -- DROP PROCEDURE dbo.EAIPO_AddNoMessage_70 --END --GO CREATE PROCEDURE [dbo].[EAIPO_AddNoMessage_70](@CustID varchar(10), @MsgText nvarchar(MAX), @NoMsgNo int OUTPUT) AS BEGIN SET NOCOUNT ON DECLARE @MsgNo int DECLARE @MsgTextChecksum int DECLARE @MsgTextTemp nvarchar(MAX) SET @MsgTextTemp = SUBSTRING(@MsgText,1,7000) SET @MsgTextChecksum=CHECKSUM(@MsgTextTemp) SELECT @MsgNo=[dbo].[NoMessage].[NoMsgNo] FROM [dbo].[NoMessage] WITH(NOLOCK) WHERE [dbo].[NoMessage].[CustID]=@CustID AND [dbo].[NoMessage].[MsgTextChecksum]=@MsgTextChecksum AND [dbo].[NoMessage].[MsgText]=@MsgTextTemp IF @MsgNo IS NULL BEGIN INSERT INTO [dbo].[NoMessage]([dbo].[NoMessage].[CustID], [dbo].[NoMessage].[MsgText], [dbo].[NoMessage].[MsgTextChecksum]) VALUES(@CustID, @MsgText, @MsgTextChecksum) SELECT @MsgNo=[dbo].[NoMessage].[NoMsgNo] FROM [dbo].[NoMessage] WITH(NOLOCK) WHERE [dbo].[NoMessage].[CustID]=@CustID AND [dbo].[NoMessage].[MsgTextChecksum]=@MsgTextChecksum AND [dbo].[NoMessage].[MsgText]=@MsgTextTemp END SET @NoMsgNo=@MsgNo END
CREATE PROCEDURE [dbo].[EPC_GetDatabaseSegments_70](@MasterDbList int) AS BEGIN SELECT [dbo].[DbSegment].[SegName] FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@MasterDbList ORDER BY [dbo].[DbSegment].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetDateListLimiters_79](@Dblabel varchar(10)) AS BEGIN SELECT convert(varchar(10),ll.LimiterNo )+ ':' +convert(varchar(10), dl.DbVerNo ) AS DbLimiter, ll.LimiterId + ':' + db.DbName+ ':' +ll.Description AS Value FROM [dbo].[LimiterList] ll INNER JOIN [dbo].[LimiterControlType] lc ON ll.ControlType = lc.ControlType INNER JOIN [dbo].[DbLimiter] dl ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[DbList] db ON dl.DbVerNo = db.DbVerNo WHERE lc.ControlClass = 'DateList' AND ll.DbLabel = @Dblabel Order By ll.Description END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerAndParentServiceList_70](@CustID varchar(10)) AS BEGIN DECLARE @ParentID varchar(10) SELECT @ParentID=[dbo].[CustomerGroup].[ParentID] from [dbo].[CustomerGroup] where [dbo].[CustomerGroup].[ChildID]=@CustID EXEC [dbo].[EAUI_GetParentServiceList_70] @CustID EXEC [dbo].[EAUI_GetCustomerServiceList_70] @CustID END
CREATE PROCEDURE dbo.EAIP_IsDatabasePromoteRequestPending_161 ( @promoteDbName VARCHAR(10), @promoteTargetDbLabel VARCHAR(10) ) AS BEGIN DECLARE @IsPending BIT DECLARE @RequestStatus char(1) SET @IsPending =0 SELECT TOP 1 @RequestStatus =[rs].[Status] from [dbo].[PromoteRequestStatus] rs JOIN [dbo].[DbList] d ON d.DbVerNo=rs.SourceDbVerNo AND d.DbName=@promoteDbName WHERE rs.TargetDbLabel=@promoteTargetDbLabel ORDER BY rs.PromoteRequestTime desc IF (@RequestStatus = 'S' OR @RequestStatus = 'I') SET @IsPending = 1 SELECT @IsPending END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLabelCluster_102] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(20), @DbLabel varchar(10), @AutoAdd2Db int) AS BEGIN DECLARE @OldAutoAdd2Db Bit, @ClustNo Int SELECT @OldAutoAdd2Db = [dbo].[ClusterList].[AutoAdd2Db], @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel BEGIN TRANSACTION UPDATE [dbo].[ClusterList] SET [dbo].[ClusterList].[AutoAdd2Db] = @AutoAdd2Db WHERE [dbo].[ClusterList].[ClustNo]=@ClustNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @AutoAdd2Db = 0 AND @OldAutoAdd2Db = 1 BEGIN --make cluster enabled in all databases that currently have it IF(@DbLabel In ('live', 'liveQC', 'rebuild', 'rebuildQC')) INSERT INTO [dbo].[DbCluster]([dc].[DbVerNo], [dc].[ClustNo], [dc].[Enable]) SELECT dl.DbVerNo, @ClustNo, 1 FROM [dbo].[DbList] dl LEFT JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dc.Enable Is Null AND dl.DbLabel = @DbLabel AND dl.DbType = 1 ELSE INSERT INTO [dbo].[DbCluster]([dc].[DbVerNo], [dc].[ClustNo], [dc].[Enable]) SELECT dl.DbVerNo, @ClustNo, 1 FROM [dbo].[DbList] dl LEFT JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dc.Enable Is Null AND dl.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND dl.DbType = 1 END ELSE IF @AutoAdd2Db = 1 AND @OldAutoAdd2Db = 0 BEGIN IF(@DbLabel In ('live', 'liveQC', 'rebuild', 'rebuildQC')) --delete unnecessary records DELETE FROM [dbo].[DbCluster] FROM [dbo].[DbCluster] dc INNER JOIN [dbo].[DbList] dl ON dc.DbVerNo = dl.DbVerNo WHERE [dc].[ClustNo] = @ClustNo AND [dc].[Enable] = 1 AND dl.DbLabel = @DbLabel ELSE DELETE FROM [dbo].[DbCluster] FROM [dbo].[DbCluster] dc INNER JOIN [dbo].[DbList] dl ON dc.DbVerNo = dl.DbVerNo WHERE [dc].[ClustNo] = @ClustNo AND [dc].[Enable] = 1 AND dl.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Update DbLabel Cluster', @ID, @DbLabel COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceTopicCaptions_77](@IntfTopicNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @TopicNo int DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @TopicNo = [dbo].[InterfaceTopic].[TopicNo] FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[IntfTopicNo]=@IntfTopicNo SELECT @Captions = @Captions + N''+ tc.Caption +N' ' FROM [dbo].[TopicCaption] tc LEFT OUTER JOIN [dbo].[InterfaceTopicCaption] itc ON itc.IntfTopicNo=@IntfTopicNo AND tc.LangCode=itc.LangCode WHERE tc.TopicNo = @TopicNo AND itc.Caption is NULL SELECT @Captions = @Captions + N''+itc.Caption +N' ' FROM [dbo].[InterfaceTopicCaption] itc LEFT OUTER JOIN [dbo].[TopicCaption] tc ON tc.TopicNo = @TopicNo AND tc.LangCode=itc.LangCode WHERE itc.IntfTopicNo=@IntfTopicNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCfgServerXMLParam_70](@SrvNo int, @ParamNo int) AS BEGIN SELECT p.ParamNo, p.ParamName, Description=ISNULL([d].[PromptText],p.ParamName), ItemName=ISNULL(s.ItemName, a.ItemName), ParamValue=ISNULL(ISNULL(convert(nvarchar(max),s.ParamValue), convert(nvarchar(max),a.ParamValue)), N''), ParamLevel=ISNULL(s.ParamLevel, a.ParamLevel) FROM (SELECT * FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ParamNo] = @ParamNo) p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo LEFT OUTER JOIN (SELECT * FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[TargetNo] = @SrvNo) s ON s.ParamNo = p.ParamNo LEFT OUTER JOIN (SELECT * FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamLevel] = 'A' AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo) a ON a.ParamNo = p.ParamNo END
CREATE procedure [dbo].[EAIP_AddDbParam_91] @UserId nvarchar(20), @UserIp varchar(30), @ParamName varchar(100), @ParamType char(1), @PromptText varchar(255), @HelpText varchar(255), @SeqNo smallint, @EditLevel tinyint, @EditControl varchar(50), @ValueTemplate varchar(1000), @ProcInfo varchar(1000) as Declare @ParamNo int Declare @NextNo int if exists (Select 1 from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]=@ParamName) Begin RAISERROR('The DbParameter (%s) already exists in DbParamList', 16, -1, @ParamName) RETURN End Begin Try begin transaction Insert [dbo].[DbParamList] ([dbo].[DbParamList].[ParamName], [dbo].[DbParamList].[ParamType]) Values (@ParamName, @ParamType) Select @ParamNo = [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]=@ParamName Insert [dbo].[DbParamEditDetail] ([dbo].[DbParamEditDetail].[ParamNo], [dbo].[DbParamEditDetail].[PromptText], [dbo].[DbParamEditDetail].[HelpText], [dbo].[DbParamEditDetail].[SeqNo], [dbo].[DbParamEditDetail].[EditLevel], [dbo].[DbParamEditDetail].[EditControl], [dbo].[DbParamEditDetail].[ValueTemplate], [dbo].[DbParamEditDetail].[ProcInfo]) Values (@ParamNo, @PromptText, @HelpText, @SeqNo,@EditLevel, @EditControl, @ValueTemplate, @ProcInfo) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'DbParamList', 'Add DbParameter', @ParamName commit transaction End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetCustomerProxyList] ( @CustID VARCHAR(10) ) AS BEGIN CREATE TABLE #CustomerProxyList ( ParamValue nvarchar(max) ); INSERT INTO #CustomerProxyList SELECT pv.ParamValue FROM dbo.CustomParamXmlValues pv INNER JOIN dbo.Customer c ON c.CustNo = pv.TargetNo INNER JOIN dbo.CustomParamList cpl ON cpl.ParamNo = pv.ParamNo AND cpl.ParamLevel = pv.ParamLevel WHERE c.CustID = @CustID AND cpl.ParamLevel = 'C' AND cpl.ParamName = 'customerProxy'; SELECT CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@proxyID)[1]', 'nvarchar(255)') ProxyID , CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@name)[1]', 'nvarchar(255)') ProxyName , CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@urlMask)[1]', 'nvarchar(2048)') UrlMask , CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@ip)[1]', 'nvarchar(45)') IP , CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@status)[1]', 'nvarchar(1)') Status , CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@encode)[1]', 'nvarchar(1)') Encode, CAST(#CustomerProxyList.[ParamValue] AS XML).value('(/customerProxy/@notes)[1]', 'nvarchar(MAX)') Notes FROM #CustomerProxyList; END
CREATE PROCEDURE [dbo].[EAUI_GetTblParamInterfaceItemsNoAutoAdd_101] (@ParamNo int, @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT CASE WHEN ii.ItemID IS NULL THEN 0 ELSE 1 END As Attached, i.ItemID FROM [dbo].[CustomParamTblItems] i LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo = ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version WHERE i.ParamNo=@ParamNo AND i.AutoAddToInterface =0 Order BY i.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfacePrimaryDatabases_103] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfacePrimaryDatabases_103] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Primary Databases', @SourceIntf, @TargetIntf END
CREATE procedure [dbo].[UTIL_AddModifyRelatedInfo_912]( @ParamName varchar(30), @ItemID varchar(10), @Area nvarchar(255), @Show nvarchar(10), @DefValue nvarchar (10), @DbName varchar (10), @SearchStr nvarchar(100), @SeqNo int, @AutoAddToInterface int) AS BEGIN DECLARE @ParamNo int --SET @ParamName='relatedInfo' DECLARE @FieldNo int Set @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'P') BEGIN TRY BEGIN TRANSACTION IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo] = dbo.EAIF_GetCustomParamNumber_70(@ParamName,'P') AND [dbo].[CustomParamTblItems].[ItemID]=@ItemID) BEGIN If @SeqNo > 0 -- If SeqNo is provided INSERT INTO [dbo].[CustomParamTblItems]([dbo].[CustomParamTblItems].[ParamNo], [dbo].[CustomParamTblItems].[ItemID], [dbo].[CustomParamTblItems].[SeqNo],[dbo].[CustomParamTblItems].[AutoAddToInterface]) SELECT @ParamNo,@ItemID,@SeqNo,@AutoAddToInterface else INSERT INTO [dbo].[CustomParamTblItems]([dbo].[CustomParamTblItems].[ParamNo], [dbo].[CustomParamTblItems].[ItemID], [dbo].[CustomParamTblItems].[SeqNo],[dbo].[CustomParamTblItems].[AutoAddToInterface]) SELECT @ParamNo,@ItemID,Max([dbo].[CustomParamTblItems].[SeqNo]+1),@AutoAddToInterface FROM [dbo].[CustomParamTblItems] -- OrderNo (for RelatedMedicalInfo) SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='ItemNo' IF @FieldNo > 0 begin IF @SeqNo > 0 INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) VALUES (@ParamNo,@ItemID,@FieldNo,@SeqNo) ELSE INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) Select @ParamNo,@ItemID,@FieldNo,Max([dbo].[CustomParamTblItems].[SeqNo]+1) FROM [dbo].[CustomParamTblItems] end -- Show SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='Show' INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) VALUES (@ParamNo,@ItemID,@FieldNo,@Show) -- Area SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='Area' INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) VALUES (@ParamNo,@ItemID,@FieldNo,@Area) --DefValue SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='DefValue' INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) VALUES (@ParamNo,@ItemID,@FieldNo,@DefValue) --SearchStr SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='searchStr' INSERT INTO [dbo].[CustomParamTblGlobalDefaultValues]([dbo].[CustomParamTblGlobalDefaultValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultValues].[Value]) VALUES (@ParamNo,@ItemID,@FieldNo,@SearchStr) --Db SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='db' IF @DbName<>'' INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMDValues]([dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName]) VALUES (@ParamNo,@ItemID,@FieldNo,@DbName) END ELSE BEGIN -- OrderNo (for RelatedMedicalInfo) SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='ItemNo' IF @FieldNo > 0 AND @SeqNo > 0 UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [dbo].[CustomParamTblGlobalDefaultValues].[Value]=@SeqNo WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo -- Update the SeqNo of the Item on CustomParamTblItems IF @SeqNo > 0 Update [dbo].[CustomParamTblItems] SET [dbo].[CustomParamTblItems].[SeqNo] = @SeqNo Where [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo and [dbo].[CustomParamTblItems].[ItemID]=@ItemID -- SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='Show' UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [dbo].[CustomParamTblGlobalDefaultValues].[Value]=@Show WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='Area' UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [dbo].[CustomParamTblGlobalDefaultValues].[Value]=@Area WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='DefValue' UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [dbo].[CustomParamTblGlobalDefaultValues].[Value]=@DefValue WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='searchStr' UPDATE [dbo].[CustomParamTblGlobalDefaultValues] SET [dbo].[CustomParamTblGlobalDefaultValues].[Value]=@SearchStr WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultValues].[FieldNo]=@FieldNo SELECT @FieldNo=[dbo].[CustomParamXmlFields].[FieldNo] FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]='db' IF @DbName='' DELETE [dbo].[CustomParamTblGlobalDefaultSMDValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo]=@FieldNo ELSE IF EXISTS (SElECT 1 FROM [dbo].[CustomParamTblGlobalDefaultSMDValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo]=@FieldNo) UPDATE [dbo].[CustomParamTblGlobalDefaultSMDValues] SET [dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName]=@DbName WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo]=@FieldNo ELSE INSERT INTO [dbo].[CustomParamTblGlobalDefaultSMDValues]([dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo],[dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID],[dbo].[CustomParamTblGlobalDefaultSMDValues].[FieldNo],[dbo].[CustomParamTblGlobalDefaultSMDValues].[DbName]) VALUES (@ParamNo,@ItemID,@FieldNo,@DbName) END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyDbGroups_80] (@DbVerNo int, @GroupIDList varchar(8000)) AS /** procedure is used by EACopy **/ BEGIN INSERT INTO [dbo].[DbGroup]([dbo].[DbGroup].[DbVerNo], [dbo].[DbGroup].[GroupNo]) SELECT @DbVerNo, gl.GroupNo FROM [dbo].[GroupList] AS gl INNER JOIN dbo.EAIF_GetItemTable_70(@GroupIDList,',') AS a ON gl.GroupID = a.Item END
CREATE PROCEDURE [dbo].[TestGeneralProductInsert] AS BEGIN INSERT INTO [dbo].[Customer] ( CustNo ,[CustID] ,[CustName] ,[CustType] ,[MarketID] ,[Status] ,[Consortium] ,[TimeStamp] ) VALUES ( 0 ,'parent' ,'test' ,NULL ,NULL ,NULL ,NULL ,NULL ) DECLARE @UserID NVARCHAR(20) = 'test' ,@UserIP VARCHAR(20) = 'test' ,@CustID VARCHAR(10) = 'parent' ,@Product VARCHAR(10) = 'test' ,@CurrentSite BIT = 1 ,@ChildSites BIT = 1 ,@AuthType VARCHAR(10) = 'test' ,@LibraryLogoUrl NVARCHAR(500) = 'test' ,@DisplayName NVARCHAR(100) = 'test' ,@ProxyID VARCHAR(255) = NULL ,@LoginText NVARCHAR(500) = 'test' ,@UpdateChildSites BIT = 1 CREATE TABLE #Expected ( [CustID] [varchar](10) NOT NULL ,[Product] [varchar](10) NOT NULL ,[ProductAllowed] [bit] NULL ,[ProductForChildrenAllowed] [bit] NULL ,[AuthType] [varchar](10) NULL ,[DirectURL] [varchar](500) NULL ,[DisplayName] [nvarchar](100) NULL ,[LoginText] [nvarchar](500) NULL ,[LibraryLogoUrl] [nvarchar](500) NULL ,[UseProxy] [bit] NULL ,[ProxyID] [varchar](255) NULL ,[TimeStamp] [datetime] NULL ) INSERT INTO #Expected VALUES ( @CustID ,@Product ,@CurrentSite --[ProductAllowed] ,@ChildSites --[ProductForChildrenAllowed] ,@AuthType --[AuthType] ,NULL --[DirectURL] ,NULL --[DisplayName] ,@LoginText --[LoginText] ,@LibraryLogoUrl --[LibraryLogoUrl] ,NULL --[UseProxy] ,@ProxyID --[ProxyID] ,NULL --[TimeStamp] ) CREATE TABLE #Actual ( [CustID] [varchar](10) NOT NULL ,[Product] [varchar](10) NOT NULL ,[ProductAllowed] [bit] NULL ,[ProductForChildrenAllowed] [bit] NULL ,[AuthType] [varchar](10) NULL ,[DirectURL] [varchar](500) NULL ,[DisplayName] [nvarchar](100) NULL ,[LoginText] [nvarchar](500) NULL ,[LibraryLogoUrl] [nvarchar](500) NULL ,[UseProxy] [bit] NULL ,[ProxyID] [varchar](255) NULL ,[TimeStamp] [datetime] NULL ) EXECUTE [dbo].[EAUI_UpdateCustomerProductConfigurationDetails_164] @UserID ,@UserIP ,@CustID ,@Product ,@CurrentSite ,@ChildSites ,@AuthType ,@LibraryLogoUrl ,@DisplayName ,@ProxyID ,@LoginText ,@UpdateChildSites -- Assert INSERT INTO #Actual ( [CustID] ,[Product] ,[ProductAllowed] ,[ProductForChildrenAllowed] ,[AuthType] ,[DirectURL] ,[DisplayName] ,[LoginText] ,[LibraryLogoUrl] ,[UseProxy] ,[ProxyID] ,[TimeStamp] ) SELECT [CustID] ,[Product] ,[ProductAllowed] ,[ProductForChildrenAllowed] ,[AuthType] ,[DirectURL] ,[DisplayName] ,[LoginText] ,[LibraryLogoUrl] ,[UseProxy] ,[ProxyID] ,[TimeStamp] FROM CustomParamProductConfiguration UPDATE #Actual SET [TimeStamp] = NULL EXEC tSQLt.AssertEqualsTable '#Expected' ,'#Actual' END
CREATE PROCEDURE [dbo].[EAUI_GetMDbSTSList_90] AS SELECT mdbsl.MultiDBSTSID, [mdbsc].[Caption], [mdbsl].[Description], [mdbsl].[SortOption] From [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where [mdbsc].[LangCode]='en' Order by mdbsl.MultiDBSTSID
CREATE TRIGGER dbo.UserGroupUpdatedTrigger ON dbo.UserGroup AFTER UPDATE AS BEGIN SET NOCOUNT ON; INSERT INTO dbo.ChangedUserGroup ( GroupNo ,CustID ,GroupID ,UpdatedField ) SELECT i.GroupNo ,i.CustID ,i.GroupID ,'GroupName' AS UpdatedField FROM inserted i INNER JOIN deleted AS d ON i.GroupNo = d.GroupNo WHERE d.GroupName <> i.GroupName END
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceToolbarItem_Batch] ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,InterfaceID VARCHAR(10) ,Version VARCHAR(10) ,Name NVARCHAR(100) ,Caption NVARCHAR(255) ) INSERT INTO #Objects ( InterfaceID ,Version ,Name ,Caption ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./Name)[1]', 'nvarchar(100)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID VARCHAR(10) ,@Version VARCHAR(10) ,@Name NVARCHAR(100) ,@Caption NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@Caption = Caption ,@Name = Name FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceToolbarItem_77] @UserID ,@UserIP ,@InterfaceID ,@Version ,@Name ,@Caption ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetGroupDatabases_91] ( @custId VARCHAR(10), @groupId VARCHAR(10), @profId VARCHAR(10) ) AS BEGIN DECLARE @profileDbLabel VARCHAR(10), @profileNo INT DECLARE @paramNo_FullText INT, @paramDefaultValue_FullText INT, @Inherit_paramFullText bit DECLARE @paramNo_IllustrationSearch INT, @paramDefaultValue_IllustrationSearch INT, @Inherit_paramIllustrationSearch bit SELECT @profileDbLabel = [dbo].[Profile].[DbLabel], @profileNo = [dbo].[Profile].[ProfNo] FROM dbo.[Profile] WHERE [dbo].[Profile].[CustID] = @custId AND [dbo].[Profile].[GroupID] = @groupId AND [dbo].[Profile].[ProfID] = @profId SELECT @paramNo_FullText = l.ParamNo, @paramDefaultValue_FullText = CAST( [d].[DefValue] AS BIT ), @Inherit_paramFullText = [l].[InheritFromPhysical] FROM [dbo].[DbParamList] l INNER JOIN [dbo].[DbParamDefaults] d ON l.ParamNo = d.ParamNo WHERE [l].[ParamName] = 'fullTextAllowed' SELECT @paramNo_IllustrationSearch = l.ParamNo, @paramDefaultValue_IllustrationSearch = CAST( [d].[DefValue] AS BIT ), @Inherit_paramIllustrationSearch = [l].[InheritFromPhysical] FROM [dbo].[DbParamList] l INNER JOIN [dbo].[DbParamDefaults] d ON l.ParamNo = d.ParamNo WHERE [l].[ParamName] = 'disableIllustrationSearching' SELECT db.DbName, MAX (CASE WHEN p.ProfID = @profId THEN 'P' ELSE 'G' END ) as TypeOfDatabaseAccess, MAX (CASE WHEN t.TargetType = 'quickview' THEN 1 ELSE 0 END) as HasQuickViewTarget, 1 as HasFullTextCollection,--MAX(CASE WHEN col.CustId IS NULL THEN 0 ELSE 1 END) as HasFullTextCollection, MAX( case when (ds.SubsetDbVerNo is not null) and (@Inherit_paramFullText=1) then CASE WHEN phdbpsv_ft.DbVerNo IS NULL THEN @paramDefaultValue_FullText ELSE CAST( phdbpsv_ft.ParamValue AS int ) END else CASE WHEN dbpsv_ft.DbVerNo IS NULL THEN @paramDefaultValue_FullText ELSE CAST( dbpsv_ft.ParamValue AS int ) END end ) as IsFullTextAllowed, MAX( case when (ds.SubsetDbVerNo is not null) and (@Inherit_paramIllustrationSearch=1) then CASE WHEN phdbpsv_is.DbVerNo IS NULL THEN @paramDefaultValue_IllustrationSearch ELSE CAST( phdbpsv_is.ParamValue AS int ) END else CASE WHEN dbpsv_is.DbVerNo IS NULL THEN @paramDefaultValue_IllustrationSearch ELSE CAST( dbpsv_is.ParamValue AS int ) END end ) as IsDisableIllustrationSearching, MAX (CASE WHEN t.TargetType = 'language' THEN 1 ELSE 0 END) as HasLanguageMatchTarget, MAX (CASE WHEN t.TargetType = 'ep' THEN 1 ELSE 0 END) as HasEpTarget, MAX (CASE WHEN ltt.TargetType IS NULL THEN 0 ELSE 1 END) as IsLanguageMatchTarget FROM dbo.Profile p INNER JOIN dbo.ProfDatabase pd ON p.ProfNo = pd.ProfNo INNER JOIN dbo.DbList db ON pd.DbVerNo = db.DbVerNo left outer join [dbo].[DbSubset] ds on ds.SubsetDbVerNo=db.DbVerNo LEFT OUTER JOIN dbo.DbSourceTarget t ON t.SourceDbNo = db.DbVerNo AND t.TargetType In('quickview','language','ep') LEFT OUTER JOIN dbo.DbParamScalarValues dbpsv_ft ON dbpsv_ft.DbVerNo = pd.DbVerNo AND dbpsv_ft.ParamNo = @paramNo_FullText LEFT OUTER JOIN dbo.DbParamScalarValues phdbpsv_ft ON phdbpsv_ft.DbVerNo = ds.PhysDbVerNo AND phdbpsv_ft.ParamNo = @paramNo_FullText LEFT OUTER JOIN dbo.DbParamScalarValues dbpsv_is ON dbpsv_is.DbVerNo = pd.DbVerNo AND dbpsv_is.ParamNo = @paramNo_IllustrationSearch LEFT OUTER JOIN dbo.DbParamScalarValues phdbpsv_is ON phdbpsv_is.DbVerNo = ds.PhysDbVerNo and phdbpsv_is.ParamNo = @paramNo_IllustrationSearch LEFT OUTER JOIN dbo.DbSourceTarget ltt ON ltt.TargetDbNo = db.DbVerNo AND ltt.TargetType = 'language' WHERE p.CustID = @custId AND p.GroupID = @groupId AND p.InterfaceID <> 'win' AND p.InterfaceID <> 'unix' AND pd.Enable = 1 AND db.DbLabel = @profileDbLabel AND db.SourceType <> 'M' AND (pd.Mode IS NULL OR pd.Mode <> 'X') AND (pd.AccessEndDate IS NULL OR DATEDIFF(dd, CURRENT_TIMESTAMP, pd.AccessEndDate) >= 0) AND db.DbName not in ('xuh','xth', 'srh','pfils') /* EHPMEBSCOADMIN-1855:'pfils' added to list for dbnames to be excluded. */ Group BY db.DbName /*It is a dummy database on certain eds profiles, to track customer's OCLC subscription */ END
Create Procedure [dbo].[EAUI_GetInterfaceDbFeatures_103](@Category varchar(10), @InterfaceID varchar(10), @Version varchar(10)) as Begin Declare @InterfaceDocHandle int Declare @GlobalDocHandle int Declare @FeatureNo smallint Declare @FeatureName varchar(100) Declare @InterfaceFieldValueXml xml DECLARE @GlobalFieldValueXml xml Declare @MergedXml xml Declare @Table table (FeatureNo smallint, FeatureName varchar(100), FieldValueXml xml) -- get list of Features for given Category attached to given Interface/Version and Interface and Global FieldValueXml Declare theCursor CURSOR For select fl.FeatureNo, fl.FeatureName, idbfv.FieldValueXml, fv.FieldValueXml from [dbo].[InterfaceDbFeatures] idbf left outer join [dbo].[InterfaceDbFeatureValues] idbfv on idbf.InterfaceID=idbfv.InterfaceID and idbf.Version=idbfv.Version and idbf.FeatureNo=idbfv.FeatureNo join [dbo].[FeatureList] fl on idbf.FeatureNo=fl.FeatureNo and fl.Category=@Category join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo where idbf.InterfaceID=@InterfaceID and idbf.Version=@Version open theCursor Fetch Next From theCursor into @FeatureNo, @FeatureName, @InterfaceFieldValueXml, @GlobalFieldValueXml -- For each Feature retreived merge the Interface and Global FieldValueXml While @@FETCH_STATUS = 0 Begin EXEC [dbo].[sp_xml_preparedocument] @InterfaceDocHandle OUTPUT, @InterfaceFieldValueXml EXEC [dbo].[sp_xml_preparedocument] @GlobalDocHandle OUTPUT, @GlobalFieldValueXml select @MergedXml=dbo.EAIF_MergeGlobalAndInterfaceDbFeatureValues_103(@InterfaceDocHandle, @InterfaceFieldValueXml, @GlobalDocHandle, @GlobalFieldValueXml) insert @Table (FeatureNo, FeatureName, FieldValueXml) values (@FeatureNo, @FeatureName, @MergedXml) exec [dbo].[sp_xml_removedocument] @InterfaceDocHandle exec [dbo].[sp_xml_removedocument] @GlobalDocHandle Fetch Next From theCursor into @FeatureNo, @FeatureName, @InterfaceFieldValueXml, @GlobalFieldValueXml End close theCursor deallocate theCursor -- get list of Features for given Category attached to given Interface/Version SELECT fl.FeatureNo, fl.FeatureName, [fl].[FeatureType], fl.AutoAddForInterfaces FROM [dbo].[FeatureList] fl join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo AND idbf.InterfaceID=@InterfaceID and idbf.Version=@Version where fl.Category=@Category union -- get list of Features for given Category that have AutoAddForInterfaces set to 1 (union will weed out dupes) select [dbo].[FeatureList].[FeatureNo], [dbo].[FeatureList].[FeatureName], [dbo].[FeatureList].[FeatureType], [dbo].[FeatureList].[AutoAddForInterfaces] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]=@Category and [dbo].[FeatureList].[AutoAddForInterfaces]=1 ORDER BY fl.FeatureNo -- get list of Fields for Features of given Category that should be included in summary and that allow interface override DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldLevel,ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl join [dbo].[FeatureFields] ff on fl.FeatureNo=ff.FeatureNo AND ff.FieldLevel='F'AND ff.IncludeInSummary=1 and ff.AllowInterfaceOverride=1 WHERE fl.Category =@TemplCategory ORDER BY ff.SeqNo -- get values from table created above that will have merged FieldValueXml for Features for given Category attached to given Interface/Version select * from @Table union all -- get FieldValueXml for any Feature that is NOT attached IF the Feature has AutoAddForInterfaces set to 1 Select fl.FeatureNo, fl.FeatureName, fv.FieldValueXml From [dbo].[FeatureList] fl join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo left outer join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo and [idbf].[InterfaceID]=@InterfaceID and [idbf].[Version]=@Version where fl.AutoAddForInterfaces=1 and fl.Category=@Category and idbf.FeatureNo is null order by FeatureNo End
CREATE PROCEDURE [dbo].[EAIPO_AddPublisherGetPID_102](@PublisherName NVARCHAR(100), @PID INT OUT) AS BEGIN DECLARE @PubChecksum INT; SELECT @PubChecksum = CHECKSUM(@PublisherName); SELECT TOP 1 @PID = [dbo].[Publisher].[PID] FROM [dbo].[Publisher] WHERE [dbo].[Publisher].[PubChecksum] = @PubChecksum AND [dbo].[Publisher].[PublisherName] = @PublisherName; IF @PID IS NULL BEGIN INSERT INTO [dbo].[Publisher] ([dbo].[Publisher].[PublisherName], [dbo].[Publisher].[PubChecksum]) VALUES(@PublisherName, @PubChecksum); SELECT @PID = SCOPE_IDENTITY(); END END
/*Automated Subscription Deletion - Close access to db*/ CREATE PROCEDURE dbo.EPC_GetDbCustList(@DbName varchar(10)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo = [DL].[DbVerNo] FROM dbo.DbList AS DL WHERE DL.DbName = @DbName AND DL.DbLabel = 'live' SELECT DISTINCT COLL.CustID FROM dbo.Profile AS P INNER JOIN dbo.ProfDatabase AS PD ON P.ProfNo = PD.ProfNo INNER JOIN dbo.Collection AS COLL ON P.CustID = COLL.CustID INNER JOIN dbo.Customer AS CUST ON COLL.CustID = CUST.CustID WHERE PD.DbVerNo = @DbVerNo AND (COLL.AutoRecreate = 1 OR COLL.ForceRecreate = 1) AND CUST.Status = 'a' AND (PD.Mode IS NULL OR PD.Mode <> 'X') AND (PD.AccessEndDate IS NULL OR DATEDIFF(hh, PD.AccessEndDate, GETDATE()) < 0) AND COLL.IsDeleted = 0 ORDER BY COLL.CustID ASC END
CREATE PROCEDURE [dbo].[EAUI_GetDBBrowseOptionDetails_76] ( @DbVerNo int, @OptionNo int, @LangCode varchar(10)) AS BEGIN SELECT sol.BrowseOptionId, dso.OptionType, dso.SearchString, dso.TargetDb, dso.SourceType, dso.TabImage, dso.AuthoritySubset, dso.AuthorityView, dsc.OptionCaption, dsc.ResultCaption, dsc.Description, ISNULL(dso.IsHeading,0) AS IsHeading FROM [dbo].[DbBrowseOption] dso LEFT OUTER JOIN [dbo].[DbBrowseOptionCaption] dsc ON dso.DbVerNo = dsc.DbVerNo AND dso.BrowseOptionNo = dsc.BrowseOptionNo AND dsc.LangCode = @LangCode INNER JOIN [dbo].[BrowseOptionList] sol ON dso.BrowseOptionNo = sol.BrowseOptionNo WHERE dso.DbVerNo = @DbVerNo AND dso.BrowseOptionNo = @OptionNo END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerParamXmlValue_70](@CustID varchar(10), @ParamName varchar(100), @ItemName varchar(255)) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) EXEC [dbo].[EAUI_GetCustomParamXmlValue_70] @CustNo,'C',@ParamName, @ItemName END
CREATE PROCEDURE [dbo].[EAIP_LogActivity_70] ( @UserId nvarchar(20), @UserIP varchar(15), @Category varchar(50), @Activity varchar(100), @Param1 nvarchar(1024)='', @Param2 nvarchar(1024)='', @Param3 nvarchar(1024)='', @Param4 nvarchar(1024)='', @Param5 nvarchar(1024)='' ) AS BEGIN SET NOCOUNT ON --Exclude all Production DDSUpdate activities except a few coming with Param4 value 'DDSUpdate' IF (@UserId!='prod_dda') OR (@UserId='prod_dda' AND RTrim(@Param4)='DDSUpdate') BEGIN INSERT INTO EASUPPORT.dbo.ActivityLog([EASUPPORT].[dbo].[ActivityLog].[UserID], [EASUPPORT].[dbo].[ActivityLog].[IPAddress], [EASUPPORT].[dbo].[ActivityLog].[LogTime], [EASUPPORT].[dbo].[ActivityLog].[Category], [EASUPPORT].[dbo].[ActivityLog].[Activity], [EASUPPORT].[dbo].[ActivityLog].[Param1],[EASUPPORT].[dbo].[ActivityLog].[Param2], [EASUPPORT].[dbo].[ActivityLog].[Param3], [EASUPPORT].[dbo].[ActivityLog].[Param4], [EASUPPORT].[dbo].[ActivityLog].[Param5]) VALUES(@UserId, @UserIP, getdate(), @Category, @Activity, @Param1, @Param2, @Param3, @Param4, @Param5) END SET NOCOUNT OFF END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiter_76] ( @UserId nvarchar(20), @UserIp varchar(15), @LimiterNo int, @DbVerNo int, @SearchString varchar(255), @DefValue varchar(255), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10) ) AS BEGIN DECLARE @LimiterId varchar(20) DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbLimiter] Where [dbo].[DbLimiter].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiter].[DbVerNo] = @DbVerNo) UPDATE [dbo].[DbLimiter] SET [dbo].[DbLimiter].[SearchString] = @SearchString, [dbo].[DbLimiter].[DefValue] = @DefValue WHERE [dbo].[DbLimiter].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiter].[DbVerNo] = @DbVerNo ELSE BEGIN DECLARE @NextSeqNo int IF EXISTS (SELECT 1 FROM [dbo].[DbLimiter] Where [dbo].[DbLimiter].[DbVerNo] = @DbVerNo) SELECT @NextSeqNo = MAX([dbo].[DbLimiter].[SeqNo])+1 FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo ELSE SELECT @NextSeqNo = 0 INSERT INTO [dbo].[DbLimiter]([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo], [dbo].[DbLimiter].[ResFlag], [dbo].[DbLimiter].[SearchString], [dbo].[DbLimiter].[SeqNo], [dbo].[DbLimiter].[DefValue]) VALUES (@DbVerNo, @LimiterNo, 0, @SearchString, @NextSeqNo, @DefValue) END EXEC [dbo].[EAIP_UpdateDbLimiterCaption_70] @UserId,@UserIp,@DbVerNo,@LimiterNo,@LangCode, @Caption ,@MouseOverText IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Limiter', 'Update DbLimiter', @LimiterId, @DbName, @DbLabel COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetInterfaceTopicMouseOverTexts_77](@IntfTopicNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @MOver nvarchar(max) SET @Mover=N'' SELECT @MOver= @MOver+N''+itc.MouseOverText +N' ' FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo = itc.IntfTopicNo WHERE it.IntfTopicNo = @IntfTopicNo AND itc.MouseOverText is not null AND itc.MouseOverText<>N'' RETURN @Mover END
CREATE PROCEDURE [dbo].[EAUI_GetCharDescription_70](@FieldName varchar(50), @FieldCode char(1)) AS BEGIN SELECT dbo.EAIF_GetCharDescription_70(@FieldName, @FieldCode) END
--sql content merged from file: \StoredProcedures\EAIP_AddDbParam_92.sql CREATE PROCEDURE [dbo].[EAIP_AddDbParam_92] ( @ParamName varchar(100), @ParamType char(1), @DefValue nvarchar(2000) = NULL, @PromptText varchar(255), @HelpText varchar(255), @EditLevel tinyint, @EditControl varchar(50), @ValueTemplate varchar(1000)=null, @ProcInfo varchar(1000)=null, @newParamPosition VARCHAR(10) = NULL, @paramNameToCompare VARCHAR(100) = '', @paramSourceType varchar(10)='D' ) AS BEGIN if not exists (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName) insert into [dbo].[DbParamList]([dbo].[DbParamList].[ParamName], [dbo].[DbParamList].[ParamType],[dbo].[DbParamList].[ParamSourceType]) values(@ParamName, @ParamType,@paramSourceType) else update [dbo].[DbParamList] set [dbo].[DbParamList].[ParamType]=@ParamType, [dbo].[DbParamList].[ParamSourceType]=@paramSourceType where [dbo].[DbParamList].[ParamName] = @ParamName DECLARE @ParamNo int Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName] = @ParamName If @ParamNo is null begin RAISERROR ('Could not create parameter', 0,1) RETURN end if not exists ( select [dbo].[DbParamDefaults].[ParamNo] from [dbo].[DbParamDefaults] where [dbo].[DbParamDefaults].[ParamNo] = @ParamNo) insert into [dbo].[DbParamDefaults] Values (@ParamNo,@DefValue) else Update [dbo].[DbParamDefaults] set [dbo].[DbParamDefaults].[DefValue]=@DefValue Where [dbo].[DbParamDefaults].[ParamNo]=@ParamNo Delete [dbo].[DbParamSourceTypeDefaults] from [dbo].[DbParamSourceTypeDefaults] a join (Select * from dbo.EAIF_GetItemTable_70(@paramSourceType, ';') st right outer join [dbo].[DbParamSourceTypeDefaults] dbpstd on st.Item=dbpstd.SourceType where [dbpstd].[ParamNo]=@ParamNo and st.Item is null) b on a.ParamNo=b.ParamNo and a.SourceType=b.SourceType if not exists ( select [dbo].[DbParamEditDetail].[ParamNo] from [dbo].[DbParamEditDetail] where [dbo].[DbParamEditDetail].[ParamNo] = @ParamNo ) insert into [dbo].[DbParamEditDetail] ( [dbo].[DbParamEditDetail].[ParamNo], [dbo].[DbParamEditDetail].[PromptText], [dbo].[DbParamEditDetail].[HelpText], [dbo].[DbParamEditDetail].[SeqNo], [dbo].[DbParamEditDetail].[EditLevel], [dbo].[DbParamEditDetail].[EditControl], [dbo].[DbParamEditDetail].[ValueTemplate], [dbo].[DbParamEditDetail].[ProcInfo] ) Select @ParamNo,@PromptText,@HelpText, max([dbo].[DbParamEditDetail].[SeqNo])+1 ,@EditLevel,@EditControl,@ValueTemplate, @ProcInfo from [dbo].[DbParamEditDetail] else Update [dbo].[DbParamEditDetail] SET [dbo].[DbParamEditDetail].[PromptText]=@PromptText, [dbo].[DbParamEditDetail].[HelpText]=@HelpText, [dbo].[DbParamEditDetail].[EditLevel]=@EditLevel, [dbo].[DbParamEditDetail].[EditControl]=@EditControl, [dbo].[DbParamEditDetail].[ValueTemplate]=@ValueTemplate, [dbo].[DbParamEditDetail].[ProcInfo]=@ProcInfo Where [dbo].[DbParamEditDetail].[ParamNo]=@ParamNo IF @newParamPosition IS NOT NULL BEGIN EXEC dbo.EAIP_DbParam_Resort_96 @ParamName, @newParamPosition, @paramNameToCompare END END
-- Created 2012.01.06 by jjalbert for "Search Tag Fallback Support" project CREATE PROCEDURE [dbo].[EAIP_GetCustomerSearchTags_102] ( @CustNo INT ) AS BEGIN -- SearchTagNo is not retreived as is not used in the copy and should not be used in the -- copy as it is a local identity value and may differ at the destination. SearchTag is -- the actual key. The same applies to DbVerNo and Dbname. SELECT td.SearchTag ,td.Description ,ISNULL(cctd.FallBackBehavior,'') AS FallBackBehavior ,d.DbName as DbName ,@CustNo as CustNo ,td.SeqNo FROM [dbo].[SearchTagFallbackDefaults] td LEFT OUTER JOIN [dbo].[CustConnectorSearchTagsFallBack] cctd ON td.[SearchTagNo] = cctd.[SearchTagNo] AND cctd.CustNo = @CustNo JOIN [dbo].[DbList] d on d.DbVerNo = cctd.DbVerNo WHERE td.FallBackBehavior <> cctd.FallBackBehavior order by td.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetTblParamItemDbs_101](@ParamNo int, @ItemId varchar(20)) AS BEGIN SELECT d.DbName, CASE WHEN p.DbName is null THEN 0 ELSE 1 END As Selected, d.DisplayName+ N'('+d.DbName+N')' As [Database] FROM [dbo].[DbList] d LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMDValues] p ON d.DbName=p.DbName AND p.ParamNo=@ParamNo AND p.ItemID=@ItemId WHERE d.DbLabel='live' AND d.SourceType='D' AND (d.DbType=1 or d.DbType=4) ORDER BY d.DisplayName asc END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceScreens_76] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceScreens_76] @InterfaceIDFrom , @VersionFrom, @InterfaceIDTo, @VersionTo DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Screens', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[UTIL_AddOrUpdateInterfaceParameter] @InterfaceVersion [InterfaceVersionType] READONLY, @ParamName VARCHAR(100), @EditLevel SMALLINT AS BEGIN IF NOT EXISTS ( SELECT * FROM sys.schemas WHERE name = 'BACK' ) BEGIN EXEC('CREATE SCHEMA BACK'); END; IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US792019_AddInterfaceParameter_UseHttpAuthentication' ) CREATE TABLE BACK.US792019_AddInterfaceParameter_UseHttpAuthentication ( InterfaceID VARCHAR(10), [Version] VARCHAR(10), EditLevel SMALLINT, DateInserted DATETIME NOT NULL, IsRollbacked BIT DEFAULT(0) ) -- Validation that all interfaces and Version are valid (from table InterfaceVersion) DECLARE @InterfaceVersion_Warning TABLE(InterfaceID VARCHAR(10), [Version] VARCHAR(10)) INSERT INTO @InterfaceVersion_Warning ( [InterfaceID], [Version] ) SELECT iv.InterfaceID, iv.[Version] FROM @InterfaceVersion iv LEFT OUTER JOIN [dbo].[InterfaceVersion] ivf ON iv.InterfaceID = ivf.InterfaceID AND iv.[Version] = ivf.[Version] WHERE ivf.InterfaceID IS NULL OR ivf.[Version] IS NULL GROUP BY iv.InterfaceID, iv.[Version] IF EXISTS (SELECT 1 FROM @InterfaceVersion_Warning) BEGIN DECLARE @ListInterfaceVersion VARCHAR(MAX) SELECT @ListInterfaceVersion = CONCAT(@ListInterfaceVersion, ivw.InterfaceID + ':', ivw.[Version] + '; ') FROM @InterfaceVersion_Warning ivw RAISERROR('The following InterfaceID and Version are not valid: %s', 16, 1, @ListInterfaceVersion) RETURN END; DECLARE @ParamNo SMALLINT = [dbo].[EAIF_GetCustomParamNumber_70](@ParamName, 'P') IF @ParamNo IS NULL BEGIN RAISERROR('The parameter with name: %s does not exist', 16, 1, @ParamName) RETURN END; BEGIN TRY BEGIN TRAN DECLARE @CurrentDateTime DATETIME = GETUTCDATE() MERGE [dbo].[InterfaceParamList] AS T_target USING @InterfaceVersion AS T_source ON (T_target.InterfaceID = T_source.InterfaceID AND T_target.[Version] = T_source.[Version] AND T_target.ParamNo = @ParamNo) WHEN MATCHED AND (T_target.EditLevel != @EditLevel) THEN UPDATE SET EditLevel = @EditLevel WHEN NOT MATCHED THEN INSERT([InterfaceID], [Version], [ParamNo], [EditLevel]) VALUES(T_source.InterfaceID, T_source.[Version], @ParamNo, @EditLevel) OUTPUT T_source.InterfaceID, T_source.[Version], deleted.EditLevel, @CurrentDateTime, 0 INTO BACK.US792019_AddInterfaceParameter_UseHttpAuthentication; DECLARE @STMode TABLE(STMode char(1)) INSERT @STMode VALUES('S'), ('T') INSERT INTO [dbo].[CustomParamDefaults] ( [ParamNo], [InterfaceID], [Version], [MarketID], [STMode], [DefValue] ) SELECT @ParamNo, back.InterfaceID, back.[Version], ml.MarketID, st.STMode, pl.DefValue FROM BACK.US792019_AddInterfaceParameter_UseHttpAuthentication back INNER JOIN [dbo].[CustomParamList] pl ON pl.ParamNo = @ParamNo CROSS JOIN EASUPPORT.dbo.MarketList ml CROSS JOIN @STMode st WHERE pl.ParamType IN ('S','B','N') AND back.EditLevel IS NULL AND back.DateInserted = @CurrentDateTime PRINT 'Adding and updating interface parameter has finished successfully.'; COMMIT TRAN END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR ( @ErrorMessage, @ErrorSeverity, @ErrorState ) END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyDbTopics_77] (@DbVerNo int, @TopicIDList varchar(8000)) AS /** procedure is used by EPCopy **/ BEGIN INSERT INTO [dbo].[DbTopic]([dbo].[DbTopic].[DbVerNo], [dbo].[DbTopic].[TopicNo]) SELECT @DbVerNo, tl.TopicNo FROM [dbo].[TopicList] AS tl INNER JOIN dbo.EAIF_GetItemTable_70(@TopicIDList,',') AS a ON tl.TopicID = a.Item END
CREATE PROCEDURE [dbo].[UTIL_AddContentFilterK12masterfilter_235] @BatchSize INT = 100, @WaitForReplicationSec INT = 10 AS BEGIN BEGIN TRY DECLARE @CustIDAndProfNoToAdd [dbo].[CustIDAndProfNoType] DECLARE @ContentFilter VARCHAR(20) = 'K12masterfilter' DECLARE @ContentFilterNo INT SELECT @ContentFilterNo = ContentFilterNo FROM dbo.ContentFilterList WHERE ContentFilterListID = @ContentFilter INSERT INTO @CustIDAndProfNoToAdd(CustID, ProfNo, InterfaceID, Version) SELECT c.CustID, p.ProfNo, p.InterfaceID, p.Version FROM dbo.Customer c INNER JOIN dbo.Profile p ON p.CustID = c.CustID WHERE p.MarketID = 'school' AND NOT EXISTS ( SELECT NULL FROM dbo.CustContentFilters ccf INNER JOIN dbo.ProfContentFilters pcf ON pcf.CustContentFilterNo = ccf.CustContentFilterNo AND pcf.ProfNo = p.ProfNo WHERE ccf.CustID = c.CustID AND ccf.ContentFilterNo = @ContentFilterNo ) EXEC [dbo].[UTIL_AddContentFilters_234] @ContentFilter, @CustIDAndProfNoToAdd, @BatchSize, @WaitForReplicationSec END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE() DECLARE @ErrorSeverity INT = ERROR_SEVERITY() DECLARE @ErrorState INT = ERROR_STATE() PRINT 'ERROR: ' + @ErrorMessage; RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetMDbSTSSourceTypes_90] @MultiDbSTSID varchar(10) AS Select mdbsc.Caption as MDbSTSCaption, dtl.DocTypeNo, [dtl].[DocTypeID], dtc.Caption From [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID Join [dbo].[DocTypeMultiDbSTSList] dtmdbsl on mdbsl.MultiDBSTSID=dtmdbsl.MultiDbSTSID Join [dbo].[DocTypeList] dtl on dtmdbsl.DocTypeNo=dtl.DocTypeNo Join [dbo].[DocTypeCaption] dtc on dtl.DocTypeNo=dtc.DocTypeNo where mdbsl.MultiDBSTSID=@MultiDbSTSID and dtc.LangCode='en' and mdbsc.LangCode='en' Order by [dtl].[DocTypeID]
CREATE PROCEDURE [dbo].[EATL_UpdateInterfaceTopic_77](@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @TopicID varchar(10),@Caption nvarchar(255),@MouseOverText nvarchar(255),@PhotoAltText nvarchar(255), @Lang varchar(10))AS BEGIN DECLARE @IntfTopicNo int SELECT @IntfTopicNo = it.IntfTopicNo FROM [dbo].[TopicList] tl INNER JOIN [dbo].[InterfaceTopic] it ON tl.TopicNo = it.TopicNo WHERE tl.TopicID = @TopicID AND it.InterfaceID = @InterfaceID AND it.Version = @Version IF @IntfTopicNo is null RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo]=@IntfTopicNo AND [dbo].[InterfaceTopicCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[InterfaceTopicCaption] SET [dbo].[InterfaceTopicCaption].[Caption]=@Caption, [dbo].[InterfaceTopicCaption].[MouseOverText]=@MouseOverText, [dbo].[InterfaceTopicCaption].[PhotoAltText]=@PhotoAltText WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo]=@IntfTopicNo AND [dbo].[InterfaceTopicCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Interface Topic Caption' END ELSE BEGIN INSERT INTO [dbo].[InterfaceTopicCaption] ([dbo].[InterfaceTopicCaption].[IntfTopicNo],[dbo].[InterfaceTopicCaption].[LangCode],[dbo].[InterfaceTopicCaption].[Caption],[dbo].[InterfaceTopicCaption].[MouseOverText],[dbo].[InterfaceTopicCaption].[PhotoAltText]) VALUES (@IntfTopicNo,@Lang,@Caption,@MouseOverText,@PhotoAltText) SET @LogFlag ='Translate(Insert) Interface Topic Caption' END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @CapAndMouseOver nvarchar(600) SET @CapAndMouseOver = @Caption +N';'+ @MouseOverText EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Interface Topic',@LogFlag, @InterfaceID, @Version, @TopicID, @Lang, @CapAndMouseOver COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceCaptions_76]( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT il.LangCode, il.InterfaceName,il.LinkText FROM [dbo].[InterfaceLanguage] il WHERE [il].[InterfaceID]=@InterfaceID AND [il].[Version]=@Version END
CREATE PROCEDURE [dbo].[AUTH_GetCustomeName_70](@CustID varchar(10)) AS BEGIN SElect [dbo].[Customer].[CustName] From [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID END
Create Procedure [dbo].[EAUI_GetInterfaceDbFeaturesByCaption_103](@Category varchar(10), @InterfaceID varchar(10), @Version varchar(10), @BrowseTerm varchar(100)) as Begin Declare @InterfaceDocHandle int Declare @GlobalDocHandle int Declare @FeatureNo smallint Declare @FeatureName varchar(100) Declare @InterfaceFieldValueXml xml DECLARE @GlobalFieldValueXml xml Declare @MergedXml xml Declare @Table table (FeatureNo smallint, FeatureName varchar(100), FieldValueXml xml) Declare @NewInterfaceFieldValueXml xml Declare @NewGlobalFieldValueXml xml Declare @InterfaceVal varchar(max) declare @GlobalVal varchar(max) Declare theCursor CURSOR For -- get list of Features for given Category attached to given Interface/Version and Interface and Global FieldValueXml select fl.FeatureNo, fl.FeatureName, idbfv.FieldValueXml, fv.FieldValueXml from [dbo].[InterfaceDbFeatures] idbf left outer join [dbo].[InterfaceDbFeatureValues] idbfv on idbf.InterfaceID=idbfv.InterfaceID and idbf.Version=idbfv.Version and idbf.FeatureNo=idbfv.FeatureNo join [dbo].[FeatureList] fl on idbf.FeatureNo=fl.FeatureNo and fl.Category=@Category join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo where idbf.InterfaceID=@InterfaceID and idbf.Version=@Version union all -- get list of Features for any Feature that is NOT attached IF the Feature has AutoAddForInterfaces set to 1 and the FeatureName >= the given BrowseTerm Select fl.FeatureNo, fl.FeatureName, null, fv.FieldValueXml From [dbo].[FeatureList] fl join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo left outer join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo and [idbf].[InterfaceID]=@InterfaceID and [idbf].[Version]=@Version where fl.AutoAddForInterfaces=1 and fl.Category=@Category and idbf.FeatureNo is null open theCursor Fetch Next From theCursor into @FeatureNo, @FeatureName, @InterfaceFieldValueXml, @GlobalFieldValueXml -- For each Feature retreived merge the Interface and Global FieldValueXml While @@FETCH_STATUS = 0 Begin -- get Interface/Version override English Caption (used to display on AdminUI list page so only need English) set @NewInterfaceFieldValueXml=@InterfaceFieldValueXml.query('/fields/field[@name = "ToolbarCaption"]').query('/field[@lang = "en"]') set @InterfaceVal=@NewInterfaceFieldValueXml.value('/field[1]', 'nvarchar(max)') -- do not use if Caption is < the given BrowseTerm if @InterfaceVal<@BrowseTerm set @InterfaceFieldValueXml = NULL -- if given Interface?version has not overriden the English Caption then get the Global Englisg Caption if @InterfaceFieldValueXml is null begin set @NewGlobalFieldValueXml=@GlobalFieldValueXml.query('/fields/field[@name = "ToolbarCaption"]').query('/field[@lang = "en"]') set @GlobalVal=@NewGlobalFieldValueXml.value('/field[1]', 'nvarchar(max)') -- do not use if Caption is < the given BrowseTerm if @GlobalVal<@BrowseTerm set @GlobalFieldValueXml = NULL end EXEC [dbo].[sp_xml_preparedocument] @InterfaceDocHandle OUTPUT, @InterfaceFieldValueXml EXEC [dbo].[sp_xml_preparedocument] @GlobalDocHandle OUTPUT, @GlobalFieldValueXml set @MergedXml=dbo.EAIF_MergeGlobalAndInterfaceDbFeatureValues_103(@InterfaceDocHandle, @InterfaceFieldValueXml, @GlobalDocHandle, @GlobalFieldValueXml) insert @Table (FeatureNo, FeatureName, FieldValueXml) values (@FeatureNo, @FeatureName, @MergedXml) exec [dbo].[sp_xml_removedocument] @InterfaceDocHandle exec [dbo].[sp_xml_removedocument] @GlobalDocHandle Fetch Next From theCursor into @FeatureNo, @FeatureName, @InterfaceFieldValueXml, @GlobalFieldValueXml End close theCursor deallocate theCursor -- get list of Features for given Category where there is a value in the table created above SELECT fl.FeatureNo, fl.FeatureName, FeatureType, fl.AutoAddForInterfaces FROM [dbo].[FeatureList] fl join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo AND idbf.InterfaceID=@InterfaceID and idbf.Version=@Version join @Table t on fl.FeatureNo=t.FeatureNo and [t].[FieldValueXml] is not null where fl.Category=@Category union -- get list of Features for given Category where there is a value in the table created above that have AutoAddForInterfaces set to 1 select fl.FeatureNo, fl.FeatureName, fl.FeatureType, fl.AutoAddForInterfaces from [dbo].[FeatureList] fl join @Table t on fl.FeatureNo=t.FeatureNo and [t].[FieldValueXml] is not null where Category=@Category and AutoAddForInterfaces=1 ORDER BY fl.FeatureNo -- get list of Fields for Features of given Category that should be included in summary and that allow interface override DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldLevel,ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl join [dbo].[FeatureFields] ff on fl.FeatureNo=ff.FeatureNo AND ff.FieldLevel='F'AND ff.IncludeInSummary=1 and ff.AllowInterfaceOverride=1 WHERE fl.Category =@TemplCategory ORDER BY ff.SeqNo -- get FieldValueXml from table create above select * from @Table where FieldValueXml is not null order by FeatureNo End
CREATE PROCEDURE [dbo].[EAIPO_AddSystemCollection_70]( @ColID nvarchar(50), @ColName nvarchar(100), @EPFullText bit, @CustomLink bit, @SmartLink bit, @Category varchar(50), @SharedFrom int, @ColNo int OUTPUT) AS BEGIN SELECT @ColID=lower(@ColID) SELECT @ColNo=[dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='system' AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 IF @ColNo IS NULL BEGIN INSERT INTO [dbo].[Collection]([dbo].[Collection].[CustID], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], [dbo].[Collection].[EPFullText], [dbo].[Collection].[CustomLink], [dbo].[Collection].[SmartLink], [dbo].[Collection].[LastUpdateDate], [dbo].[Collection].[Category], [dbo].[Collection].[SharedFrom] ) VALUES('system', @ColID, @ColName, @EPFullText, @CustomLink, @SmartLink, GETDATE(), @Category, @SharedFrom ) SELECT @ColNo=[dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='system' AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 END ELSE BEGIN RAISERROR('The Collection "system.%s" already exists, insert failed.',16,-1,@ColID) RETURN END END
CREATE PROCEDURE [dbo].[EPC_GetDbFamilyXml_70](@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @RetXml varchar(8000) SET @RetXml='' -- Fill-up info for MainDatabase(Parent) alongwith segment-info. --SELECT @RetXml=@RetXml + ' ' RETURN END SET @RetXml=@RetXml + '' SELECT @RetXml=@RetXml + ' ' FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[DbVolume] b ON a.DbVerNo=b.DbVerNo INNER JOIN [dbo].[DbTypeList] c ON a.DbType = c.DbType WHERE a.DbName=@DbName AND a.DbLabel=@DbLabel IF @RetXml IS NULL BEGIN SET @RetXml = ' ' SELECT @RetXml=@RetXml + ' ' -- Fill-up info for MainDatabase(Parent) Authorities and segment-info. SELECT @RetXml=@RetXml + '' FROM [dbo].[DbSegment] a INNER JOIN [dbo].[DbList] b ON a.DbVerNo=b.DbVerNo WHERE b.DbName=@DbName AND b.DbLabel=@DbLabel ORDER BY a.SeqNo SET @RetXml=@RetXml + ' ' FROM [dbo].[DbList] a INNER JOIN [dbo].[DbAuthority] b ON a.DbVerNo=b.MainDbVerNo INNER JOIN [dbo].[DbSegment] c ON b.AuthDbVerNo=c.DbVerNo INNER JOIN [dbo].[DbList] e ON b.AuthDbVerNo=e.DbVerNo INNER JOIN [dbo].[DbTypeList] d ON e.DbType = d.DbType WHERE a.DbName=@DbName AND a.DbLabel=@DbLabel AND b.OwnedFlag=1 AND d.DbType IN (2,7) order by b.SeqNo SET @RetXml=@RetXml + '' SELECT @RetXml END
CREATE PROCEDURE [dbo].[EAUI_GetDbBrowseOptions_76] ( @DbVerNo int ) AS BEGIN SELECT dso.BrowseOptionNo, ol.BrowseOptionId, oc.OptionCaption, svm.Description AS OptionType, dso.SearchString, dso.TargetDb FROM [dbo].[DbBrowseOption] dso INNER JOIN [dbo].[BrowseOptionList] ol ON dso.BrowseOptionNo = ol.BrowseOptionNo INNER JOIN [dbo].[DbBrowseOptionCaption] oc ON dso.DbVerNo = oc.DbVerNo AND dso.BrowseOptionNo = oc.BrowseOptionNo INNER JOIN [dbo].[StringValueMap] svm ON dso.OptionType = svm.FieldCode WHERE dso.DbVerNo = @DbVerNo AND oc.LangCode ='en' AND svm.FieldName='BrowseOptionType' END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerService_70](@CustID varchar(10), @ItemName varchar(255) ) AS BEGIN EXEC [dbo].[EAUI_GetCustomerParamXmlValue_70] @CustID,'customerSSText', @ItemName END
CREATE PROCEDURE [dbo].[EAIP_LogActivityOld_70](@UserId nvarchar(20), @UserIP varchar(15), @Activity varchar(100), @Param1 nvarchar(255)='', @Param2 nvarchar(255)='', @Param3 nvarchar(255)='', @Param4 nvarchar(255)='', @Param5 nvarchar(255)='', @Param6 nvarchar(255)='', @Param7 nvarchar(255)='', @Param8 nvarchar(255)='', @Param9 nvarchar(255)='', @Param10 nvarchar(255)='' ) AS BEGIN IF @UserId='' OR @UserId IS NULL BEGIN RAISERROR('UserId cannot be blank.',16,-1) RETURN END IF @Activity='' OR @Activity IS NULL BEGIN RAISERROR('Activity cannot be blank.',16,-1) RETURN END SET NOCOUNT ON INSERT INTO EASUPPORT.dbo.ActivityLog([EASUPPORT].[dbo].[ActivityLog].[UserID], [EASUPPORT].[dbo].[ActivityLog].[IPAddress], [EASUPPORT].[dbo].[ActivityLog].[LogTime], [EASUPPORT].[dbo].[ActivityLog].[Activity], [EASUPPORT].[dbo].[ActivityLog].[Param1]) VALUES(@UserID, @UserIP, getdate(), @Activity, (ISNULL(@Param1,'') + ',' + ISNULL(@Param2,'') + ',' + ISNULL(@Param3,'') + ',' + ISNULL(@Param4,'') + ',' + ISNULL(@Param5,'') + ',' + ISNULL(@Param6,'') + ',' + ISNULL(@Param7,'') + ',' + ISNULL(@Param8,'') + ',' + ISNULL(@Param9,'') + ',' + ISNULL(@Param10,'')) ) SET NOCOUNT OFF END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiter_77] ( @UserId nvarchar(20), @UserIp varchar(15), @LimiterNo int, @DbVerNo int, @SearchString varchar(4000), @DefValue varchar(255), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10), @IncludeAutoAdd bit ) AS BEGIN DECLARE @LimiterId varchar(20) DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbLimiter] Where [dbo].[DbLimiter].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiter].[DbVerNo] = @DbVerNo) UPDATE [dbo].[DbLimiter] SET [dbo].[DbLimiter].[SearchString] = @SearchString, [dbo].[DbLimiter].[DefValue] = @DefValue, [dbo].[DbLimiter].[ResFlag]=@IncludeAutoAdd WHERE [dbo].[DbLimiter].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiter].[DbVerNo] = @DbVerNo ELSE BEGIN DECLARE @NextSeqNo int IF EXISTS (SELECT 1 FROM [dbo].[DbLimiter] Where [dbo].[DbLimiter].[DbVerNo] = @DbVerNo) SELECT @NextSeqNo = MAX([dbo].[DbLimiter].[SeqNo])+1 FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo ELSE SELECT @NextSeqNo = 0 INSERT INTO [dbo].[DbLimiter]([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo], [dbo].[DbLimiter].[ResFlag], [dbo].[DbLimiter].[SearchString], [dbo].[DbLimiter].[SeqNo], [dbo].[DbLimiter].[DefValue]) VALUES (@DbVerNo, @LimiterNo, @IncludeAutoAdd, @SearchString, @NextSeqNo, @DefValue) END EXEC [dbo].[EAIP_UpdateDbLimiterCaption_70] @UserId,@UserIp,@DbVerNo,@LimiterNo,@LangCode, @Caption ,@MouseOverText IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Limiter', 'Update DbLimiter', @LimiterId, @DbName, @DbLabel COMMIT TRANSACTION END
--sql content merged from file: \Functions\EAIF_GetIsParentID.sql create function [dbo].[EAIF_GetIsParentID] ( @p_CustID varchar(10) ) returns char(1) as begin declare @CustCategory char(1) if exists(select 1 from dbo.CustomerGroup where [dbo].[CustomerGroup].[ChildID] = @p_CustID and [dbo].[CustomerGroup].[ParentID] = @p_CustID) set @CustCategory = '1' --ParentID else if not exists(select 1 from dbo.CustomerGroup where [dbo].[CustomerGroup].[ChildID] = @p_CustID) set @CustCategory = '2' --Stand-alone else set @CustCategory = '0' --ChildID return @CustCategory end
CREATE procedure [dbo].[EAUI_GetCharValueList_70]( @FieldName varchar(30) ) as BEGIN SELECT [dbo].[CharValueMap].[FieldCode], [dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName] = @FieldName END
CREATE procedure [dbo].[EAIP_AddGlobalExpander_91] @UserId nvarchar(20), @UserIp varchar(30), @ControlName varchar(50), @ControlShow bit, @ControlDefault bit, @Description varchar(50) as if exists (Select 1 from [dbo].[GlobalExpander] where [dbo].[GlobalExpander].[ControlName]=@ControlName) Begin RAISERROR('The Expander (%s) already exists in GlobalExpander', 16, -1, @ControlName) RETURN End Begin Try Begin Transaction Insert [dbo].[GlobalExpander] ([dbo].[GlobalExpander].[ControlName], [dbo].[GlobalExpander].[ControlShow], [dbo].[GlobalExpander].[ControlDefault], [dbo].[GlobalExpander].[Description]) Values (@ControlName, @ControlShow, @ControlDefault, @Description) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'GlobalExpander', 'Add Expander', @ControlName commit Transaction End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetCustomersFmlData_203] @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN WITH CTE AS ( SELECT c.CustID ,c.CustName ,c.CustType ,c.MarketID ,c.Consortium ,ct.CountryName ,ca.State AS SubdivisionId ,ca.City ,ca.PostalCode ,ca.Address1 ,ca.Address2 ,ca.Address3 ,STUFF(( SELECT DISTINCT ',' + p.InterfaceID FROM dbo.Profile p WHERE p.CustID = c.CustID AND EXISTS( SELECT TOP 1 1 FROM dbo.ProfDatabase pd WHERE pd.ProfNo = p.ProfNo AND pd.Enable = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) )FOR XML PATH('')),1,1,'' ) Interfaces FROM dbo.Customer c INNER JOIN dbo.CustAddress ca ON c.CustID=ca.CustID INNER JOIN dbo.Country ct ON ct.CountryID=ca.CountryID ) SELECT CustID ,CustName ,CustType ,MarketID ,Consortium ,CountryName ,SubdivisionId ,City ,PostalCode ,Address1 ,Address2 ,Address3 ,Interfaces ,NULL TotalCount FROM ( SELECT ROW_NUMBER() OVER(ORDER BY CustID) RowNum , CTE.* FROM CTE ) c WHERE RowNum BETWEEN @pageIndex * @pageSize + 1 AND (@pageIndex + 1) * @pageSize UNION ALL SELECT NULL CustID ,NULL CustName ,NULL CustType ,NULL MarketID ,NULL Consortium ,NULL CountryName ,NULL SubdivisionId ,NULL City ,NULL PostalCode ,NULL Address1 ,NULL Address2 ,NULL Address3 ,NULL Interfaces ,COUNT(*) TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_GetTimeZoneList_141] AS BEGIN SELECT [dbo].[TimeZone].[TimeZoneId],[dbo].[TimeZone].[Description] FROM [dbo].[TimeZone] order by [dbo].[TimeZone].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceSearchThemes_83] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceSearchThemes_83] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Search Themes', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[UTIL_AttachLimiterToInterface_151] (@UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceId VARCHAR(10), @InterfaceVersion VARCHAR(10), @ScreenID VARCHAR(10), @LimiterId VARCHAR(20), @DefValue VARCHAR(255), @ScriptId VARCHAR(100), @RequireRollBack BIT = 1) AS BEGIN IF @DefValue='' BEGIN SET @DefValue = NULL END DECLARE @IntfScreenNo INT, /* Stores the Basic/Advanced Screen No for the given Interface and it's version */ @DbVerNo INT , /* Stores DB version number for each DB inside the cursor */ @LimiterNo INT, /* Stores the Limiter No for each DB version number inside the cursor */ @AutoAddLimiter BIT /* Stores the AutoAddLimiter value from InterfaceScreen table for given Interface and it's anScreen Id */ SELECT @IntfScreenNo = [dbo].[InterfaceScreen].[IntfScreenNo], @AutoAddLimiter = [dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceId AND [dbo].[InterfaceScreen].[Version] = @InterfaceVersion AND [dbo].[InterfaceScreen].[ScreenID] = @ScreenID IF (@IntfScreenNo IS NULL OR @IntfScreenNo = '') BEGIN RETURN END BEGIN TRANSACTION /* Create a table to store all DBs for the given Limiter list */ IF (OBJECT_ID('Backup_AttachLimiterToInterface_151', 'U') IS NULL) BEGIN CREATE TABLE [dbo].[Backup_AttachLimiterToInterface_151] ( [ID] [INT] IDENTITY(1,1) PRIMARY KEY, [ScriptId] [INT] NOT NULL, [DbVerNo] [INT] NOT NULL, [LimiterNo] [INT] NOT NULL, [LimiterId] [VARCHAR] (20) NOT NULL, [IntfScreenNo] INT NOT NULL, [DefValue] VARCHAR(255) NULL ) END IF NOT EXISTS(SELECT 1 FROM sys.indexes(nolock) WHERE [sys].[indexes].[name] = 'IX_Backup_AttachLimiterToInterface_151_ScriptID') BEGIN CREATE NONCLUSTERED INDEX IX_Backup_AttachLimiterToInterface_151_ScriptID ON [dbo].[Backup_AttachLimiterToInterface_151] ([ScriptID],[LimiterID],[IntfScreenNo]) END /* Insert all DBs we need to attach for the given Limiter Id and Interface Screen into Backup table */ /* This will include all DbVerNo/LimiterNo/IntfScreenNo not already in the DbInterfaceLimiter table where @AutoAddLimiter is True and Database is Non-AutoAdd for Limiters or where @AutoAddLimiter is True and Database is AutoAdd for Limiters and @DefValue is not NULL or where @AutoAddLimiter is False */ INSERT INTO [dbo].[Backup_AttachLimiterToInterface_151] ([dbo].[Backup_AttachLimiterToInterface_151].[ScriptId],[dbo].[Backup_AttachLimiterToInterface_151].[DbVerNo],[dbo].[Backup_AttachLimiterToInterface_151].[LimiterNo],[dbo].[Backup_AttachLimiterToInterface_151].[LimiterId],[dbo].[Backup_AttachLimiterToInterface_151].[IntfScreenNo],[dbo].[Backup_AttachLimiterToInterface_151].[DefValue]) SELECT @ScriptId,DL.DbVerNo,DL.LimiterNo,ll.LimiterId,@IntfScreenNo,DL.DefValue FROM [dbo].[DbLimiter] DL INNER JOIN [dbo].[DbList] D ON DL.DbVerNo = D.DbVerNo INNER JOIN [dbo].[LimiterList] LL ON DL.LimiterNo = LL.LimiterNo LEFT JOIN [dbo].[DbInterfaceLimiter] DIL ON DIL.LimiterNo = DL.LimiterNo AND DIL.DbVerNo = DL.DbVerNo AND DIL.IntfScreenNo = @IntfScreenNo WHERE LL.LimiterId = @LimiterId AND ((@AutoAddLimiter = 1 AND DL.ResFlag = 0) OR (@AutoAddLimiter = 1 AND DL.ResFlag = 1 AND @DefValue IS NOT NULL) OR (@AutoAddLimiter = 0)) AND (LL.DbLabel = 'custom' OR D.DbLabel = LL.DbLabel) AND DIL.LimiterNo IS NULL /* Declare a cursor to loop through all the DB records for given limiter from the Backup table where CRUDType='I'*/ DECLARE DbLimiter_Cursor CURSOR FOR SELECT [dbo].[Backup_AttachLimiterToInterface_151].[DbVerNo], [dbo].[Backup_AttachLimiterToInterface_151].[LimiterNo] FROM [dbo].[Backup_AttachLimiterToInterface_151] WHERE [dbo].[Backup_AttachLimiterToInterface_151].[ScriptId] = @ScriptId AND [dbo].[Backup_AttachLimiterToInterface_151].[LimiterId] = @LimiterId AND [dbo].[Backup_AttachLimiterToInterface_151].[IntfScreenNo] = @IntfScreenNo FOR READ ONLY; OPEN DbLimiter_Cursor FETCH NEXT FROM DbLimiter_Cursor INTO @DbVerNo, @LimiterNo; WHILE @@FETCH_STATUS = 0 BEGIN EXEC [dbo].[EAUI_AddDbInterfaceLimiters_76] @UserID,@UserIP,@DbVerNo,@IntfScreenNo,NULL,@LimiterNo /* Attach the DB Limiters with the given Interface Screen */ FETCH NEXT FROM DbLimiter_Cursor INTO @DbVerNo, @LimiterNo; END CLOSE DbLimiter_Cursor DEALLOCATE DbLimiter_Cursor /* Update default for all DB Versions for the given Limiter */ /* If @DefValue is NULL then DbInterfaceLimiter will get DefValue from parent DbLimiter */ UPDATE DIL SET DIL.DefValue = @DefValue FROM [dbo].[DbInterfaceLimiter] DIL INNER JOIN [dbo].[Backup_AttachLimiterToInterface_151] BAL ON DIL.LimiterNo = BAL.LimiterNo AND DIL.DbVerNo = BAL.DbVerNo AND DIL.IntfScreenNo=BAL.IntfScreenNo AND BAL.LimiterId = @LimiterId AND BAL.ScriptId = @ScriptId AND BAL.IntfScreenNo = @IntfScreenNo IF @@ERROR <> 0 BEGIN /* Delete data from rollback table if any as requested so by user */ IF (@RequireRollBack <> 1) BEGIN DELETE FROM [dbo].[Backup_AttachLimiterToInterface_151] WHERE [dbo].[Backup_AttachLimiterToInterface_151].[ScriptId] = @ScriptId AND [dbo].[Backup_AttachLimiterToInterface_151].[LimiterId] = @LimiterId AND [dbo].[Backup_AttachLimiterToInterface_151].[IntfScreenNo] = @IntfScreenNo END ROLLBACK TRANSACTION RETURN END /* Delete data from rollback table if requested so by user */ IF (@RequireRollBack <> 1) BEGIN DELETE FROM [dbo].[Backup_AttachLimiterToInterface_151] WHERE [dbo].[Backup_AttachLimiterToInterface_151].[ScriptId] = @ScriptId AND [dbo].[Backup_AttachLimiterToInterface_151].[LimiterId] = @LimiterId AND [dbo].[Backup_AttachLimiterToInterface_151].[IntfScreenNo] = @IntfScreenNo END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyDocTypeCaptions_77] (@DocTypeNo int, @CaptionLangList nvarchar(max), @MouseOverLangList nvarchar(max)) AS /** procedure is used by EPCopy **/ BEGIN --Begin of Captions and Mouse over texts init DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(8000) DECLARE @MouseOverList nvarchar(max) DECLARE @MLangList varchar(8000) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim char(3) SET @LangDelim ='|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=Convert(varchar(8000),SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList))) SET @MouseOverList=SUBSTRING(@MouseOverLangList, 1, CHARINDEX(@LangDelim,@MouseOverLangList)-1) SET @MLangList=Convert(varchar(8000),SUBSTRING(@MouseOverLangList, CHARINDEX(@LangDelim,@MouseOverLangList)+3, LEN(@MouseOverLangList))) --End of Captions and Mouse over texts init DELETE FROM [dbo].[DocTypeCaption] WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[DocTypeCaption]([dbo].[DocTypeCaption].[DocTypeNo],[dbo].[DocTypeCaption].[LangCode],[dbo].[DocTypeCaption].[Caption],[dbo].[DocTypeCaption].[MouseOverText]) SELECT @DocTypeNo, cp.Value, ISNULL(cp.Item, ''), ISNULL(mo.Item,'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp LEFT OUTER JOIN dbo.EAIF_GetItemValueTable_70( @MouseOverList,@MLangList,@ValDelim) mo ON cp.Value=mo.Value AND cp.Item <>'' END
CREATE PROCEDURE [dbo].[UTIL_AddContentFilterPov2020ForPovInterfaceID_234] @BatchSize INT = 100, @WaitForReplicationSec INT = 10 AS BEGIN BEGIN TRY DECLARE @CustIDAndProfNoToAdd [dbo].[CustIDAndProfNoType] DECLARE @ContentFilter VARCHAR(20) = 'pov2020' DECLARE @ContentFilterNo INT SELECT @ContentFilterNo = ContentFilterNo FROM dbo.ContentFilterList WHERE ContentFilterListID = @ContentFilter INSERT INTO @CustIDAndProfNoToAdd(CustID, ProfNo, InterfaceID, Version) SELECT DISTINCT c.CustID, p.ProfNo, p.InterfaceID, p.Version FROM dbo.Customer c INNER JOIN dbo.Profile p ON p.CustID = c.CustID INNER JOIN dbo.CustAddress a ON a.CustID = c.CustID WHERE a.CountryID = 'USA' AND p.InterfaceID = 'pov' AND p.MarketID = 'public' AND NOT EXISTS ( SELECT NULL FROM dbo.CustContentFilters ccf INNER JOIN dbo.ProfContentFilters pcf ON pcf.CustContentFilterNo = ccf.CustContentFilterNo AND pcf.ProfNo = p.ProfNo WHERE ccf.CustID = c.CustID AND ccf.ContentFilterNo = @ContentFilterNo ) EXEC [dbo].[UTIL_AddContentFilters_234] @ContentFilter, @CustIDAndProfNoToAdd, @BatchSize, @WaitForReplicationSec END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE() DECLARE @ErrorSeverity INT = ERROR_SEVERITY() DECLARE @ErrorState INT = ERROR_STATE() PRINT 'ERROR: ' + @ErrorMessage; RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_GetMDbSTSSourceTypesToAttach_90] @MultiDbSTSID varchar(10) AS Select dtl.DocTypeNo, [dtl].[DocTypeID] + ' (' + [dtc].[Caption] + ')' as SourceType From [dbo].[DocTypeList] dtl Join [dbo].[DocTypeCaption] dtc on dtl.DocTypeNo=dtc.DocTypeNo where [dtc].[LangCode]='en' and [dtl].[Category]='G' and dtl.DocTypeNo not in (Select [dbo].[DocTypeMultiDbSTSList].[DocTypeNo] from [dbo].[DocTypeMultiDbSTSList] where [dbo].[DocTypeMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID) Order by [dtl].[DocTypeID]
CREATE PROCEDURE EATL_UpdateInterfaceTopic_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,InterfaceID VARCHAR(10) ,Version VARCHAR(10) ,TopicID VARCHAR(10) ,Caption NVARCHAR(255) ,MouseOverText NVARCHAR(255) ,PhotoAltText NVARCHAR(255) ) INSERT INTO #Objects ( InterfaceID ,Version ,TopicID ,Caption ,MouseOverText ,PhotoAltText ) SELECT m.c.value('(./InterfaceId)[1]', 'varchar(10)') ,m.c.value('(./Version)[1]', 'varchar(10)') ,m.c.value('(./TopicId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(255)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(255)') ,m.c.value('(./PhotoAltText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@InterfaceID VARCHAR(10) ,@Version VARCHAR(10) ,@TopicID VARCHAR(10) ,@Caption NVARCHAR(255) ,@MouseOverText NVARCHAR(255) ,@PhotoAltText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @InterfaceID = InterfaceID ,@Version = Version ,@TopicID = TopicID ,@Caption = Caption ,@MouseOverText = MouseOverText ,@PhotoAltText = PhotoAltText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateInterfaceTopic_77] @UserID ,@UserIP ,@InterfaceID ,@Version ,@TopicID ,@Caption ,@MouseOverText ,@PhotoAltText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceDbAuthorities_85](@InterfaceID varchar(10),@Version varchar(10)) AS BEGIN DECLARE @AutoAddAuthority bit SELECT @AutoAddAuthority=[iv].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] iv WHERE iv.InterfaceID=@InterfaceID AND iv.Version=@Version SELECT @AutoAddAuthority AS AutoAddAuthority, '' AS MainDbName, '' AS MainDbLabel, '' As AuthDbName, -1 as SeqNo, 0 AS Sorted UNION SELECT @AutoAddAuthority AS AutoAddAuthority, db.DbName AS MainDbName, db.DbLabel AS MainDbLabel, adb.DbName As AuthDbName, ISNULL(iao.SeqNo, -1) as SeqNo, CASE WHEN iao.InterfaceID is null THEN 0 ELSE 1 END AS Sorted FROM [dbo].[InterfaceDbAuthority] ia LEFT OUTER JOIN [dbo].[InterfaceDbAuthorityOrder] iao ON ia.InterfaceID=iao.InterfaceID AND ia.Version=iao.Version AND ia.MainDbVerNo=iao.MainDbVerNo AND ia.AuthDbVerNo=iao.AuthDbVerNo INNER JOIN [dbo].[DbList] db ON ia.MainDbVerNo = db.DbVerNo INNER JOIN [dbo].[DbList] adb ON ia.AuthDbVerNo = adb.DbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version UNION SELECT @AutoAddAuthority AS AutoAddAuthority, db.DbName AS MainDbName, db.DbLabel AS MainDbLabel, adb.DbName As AuthDbName, ISNULL(ia.SeqNo, -1), 1 AS Sorted FROM [dbo].[InterfaceDbAuthorityOrder] ia INNER JOIN [dbo].[DbList] db ON ia.MainDbVerNo = db.DbVerNo INNER JOIN [dbo].[DbList] adb On ia.AuthDbVerNo = adb.DbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version ORDER BY MainDbName,MainDbLabel,SeqNo END
CREATE PROCEDURE [dbo].[AUTH_GetCustomerAllowGeoValue_94]( @CustID varchar(10) ) AS BEGIN SELECT dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'allowGeoLocation') END
Create Procedure [dbo].[EAUI_GetInterfaceDbFeaturesByFeatureName_103](@Category varchar(10), @InterfaceID varchar(10), @Version varchar(10), @BrowseTerm varchar(100)) as Begin Declare @InterfaceDocHandle int Declare @GlobalDocHandle int Declare @FeatureNo smallint Declare @FeatureName varchar(100) Declare @InterfaceFieldValueXml xml DECLARE @GlobalFieldValueXml xml Declare @MergedXml xml Declare @Table table (FeatureNo smallint, FeatureName varchar(100), FieldValueXml xml) -- get list of Features for given Category attached to given Interface/Version and Interface and Global FieldValueXml Declare theCursor CURSOR For select fl.FeatureNo, fl.FeatureName, idbfv.FieldValueXml, fv.FieldValueXml from [dbo].[InterfaceDbFeatures] idbf left outer join [dbo].[InterfaceDbFeatureValues] idbfv on idbf.InterfaceID=idbfv.InterfaceID and idbf.Version=idbfv.Version and idbf.FeatureNo=idbfv.FeatureNo join [dbo].[FeatureList] fl on idbf.FeatureNo=fl.FeatureNo and fl.Category=@Category join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo where idbf.InterfaceID=@InterfaceID and idbf.Version=@Version open theCursor Fetch Next From theCursor into @FeatureNo, @FeatureName, @InterfaceFieldValueXml, @GlobalFieldValueXml -- For each Feature retreived merge the Interface and Global FieldValueXml While @@FETCH_STATUS = 0 Begin EXEC [dbo].[sp_xml_preparedocument] @InterfaceDocHandle OUTPUT, @InterfaceFieldValueXml EXEC [dbo].[sp_xml_preparedocument] @GlobalDocHandle OUTPUT, @GlobalFieldValueXml select @MergedXml=dbo.EAIF_MergeGlobalAndInterfaceDbFeatureValues_103(@InterfaceDocHandle, @InterfaceFieldValueXml, @GlobalDocHandle, @GlobalFieldValueXml) insert @Table (FeatureNo, FeatureName, FieldValueXml) values (@FeatureNo, @FeatureName, @MergedXml) exec [dbo].[sp_xml_removedocument] @InterfaceDocHandle exec [dbo].[sp_xml_removedocument] @GlobalDocHandle Fetch Next From theCursor into @FeatureNo, @FeatureName, @InterfaceFieldValueXml, @GlobalFieldValueXml End close theCursor deallocate theCursor -- get list of Features for given Category attached to given Interface/Version where the FeatureName >= the given BrowseTerm SELECT fl.FeatureNo, fl.FeatureName, [fl].[FeatureType], fl.AutoAddForInterfaces FROM [dbo].[FeatureList] fl join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo AND idbf.InterfaceID=@InterfaceID and idbf.Version=@Version where fl.Category=@Category and fl.FeatureName >= @BrowseTerm union -- get list of Features for given Category that have AutoAddForInterfaces set to 1 and the FeatureName >= the given BrowseTerm (union will weed out dupes) select [dbo].[FeatureList].[FeatureNo], [dbo].[FeatureList].[FeatureName], [dbo].[FeatureList].[FeatureType], [dbo].[FeatureList].[AutoAddForInterfaces] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]=@Category and [dbo].[FeatureList].[AutoAddForInterfaces]=1 and [dbo].[FeatureList].[FeatureName] >= @BrowseTerm ORDER BY fl.FeatureNo -- get list of Fields for Features of given Category that should be included in summary and that allow interface override DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldLevel,ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl join [dbo].[FeatureFields] ff on fl.FeatureNo=ff.FeatureNo AND ff.FieldLevel='F'AND ff.IncludeInSummary=1 and ff.AllowInterfaceOverride=1 WHERE fl.Category =@TemplCategory ORDER BY ff.SeqNo -- get values from table created above that will have merged FieldValueXml for Features for given Category attached to given Interface/Version where the FeatureName >= the given BrowseTerm select * from @Table where FeatureName >= @BrowseTerm union all -- get FieldValueXml for any Feature that is NOT attached IF the Feature has AutoAddForInterfaces set to 1 and the FeatureName >= the given BrowseTerm Select fl.FeatureNo, fl.FeatureName, fv.FieldValueXml From [dbo].[FeatureList] fl join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo left outer join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo and [idbf].[InterfaceID]=@InterfaceID and [idbf].[Version]=@Version where fl.AutoAddForInterfaces=1 and fl.Category=@Category and idbf.FeatureNo is null and fl.FeatureName >= @BrowseTerm order by FeatureNo End
--IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'EAIPO_AddYesMessage_70') --BEGIN -- DROP PROCEDURE dbo.EAIPO_AddYesMessage_70 --END --GO CREATE PROCEDURE [dbo].[EAIPO_AddYesMessage_70](@CustID varchar(10), @MsgText nvarchar(MAX), @YesMsgNo int OUTPUT) AS BEGIN SET NOCOUNT ON DECLARE @MsgNo int DECLARE @MsgTextChecksum int DECLARE @MsgTextTemp nvarchar(MAX) SET @MsgTextTemp = SUBSTRING(@MsgText,1,7000) SET @MsgTextChecksum=CHECKSUM(@MsgTextTemp) SELECT @MsgNo=[dbo].[YesMessage].[YesMsgNo] FROM [dbo].[YesMessage] WITH(NOLOCK) WHERE [dbo].[YesMessage].[CustID]=@CustID AND [dbo].[YesMessage].[MsgTextChecksum]=@MsgTextChecksum AND [dbo].[YesMessage].[MsgText]=@MsgTextTemp IF @MsgNo IS NULL BEGIN INSERT INTO [dbo].[YesMessage]([dbo].[YesMessage].[CustID], [dbo].[YesMessage].[MsgText], [dbo].[YesMessage].[MsgTextChecksum]) VALUES(@CustID, @MsgText, @MsgTextChecksum) SELECT @MsgNo=[dbo].[YesMessage].[YesMsgNo] FROM [dbo].[YesMessage] WITH(NOLOCK) WHERE [dbo].[YesMessage].[CustID]=@CustID AND [dbo].[YesMessage].[MsgTextChecksum]=@MsgTextChecksum AND [dbo].[YesMessage].[MsgText]=@MsgTextTemp END SET @YesMsgNo=@MsgNo END
CREATE PROCEDURE [dbo].[EPC_GetDBInfo]( @shortDBName varchar(10), @dbLabel varchar(10) ) AS BEGIN SELECT l.DbName, l.DbLabel, t.Description, c.Description, c.ImageFileName, l.EnforceSimUsage, l.DisplayName FROM [dbo].[DbList] l INNER JOIN [dbo].[DbTypeList] t ON t.DbType = l.DbType INNER JOIN [dbo].[DbContentList] c ON c.ContentType = l.ContentType WHERE l.DbName = @shortDBName AND l.DbLabel = @dbLabel END
CREATE PROCEDURE [dbo].[EAUI_GetDbBrowseOptionsForAdd_76] (@DbVerNo int, @ScreenNo int ) AS BEGIN SELECT dso.BrowseOptionNo, sol.BrowseOptionId + ':' + dsc.OptionCaption As Value FROM [dbo].[DbBrowseOption] dso LEFT OUTER JOIN [dbo].[DbInterfaceBrowseOption] iso ON dso.DbVerNo = iso.DbVerNo AND dso.BrowseOptionNo = iso.BrowseOptionNo AND iso.IntfScreenNo = @ScreenNo AND iso.DbVerNo = @DbVerNo INNER JOIN [dbo].[DbBrowseOptionCaption] dsc ON dso.DbVerNo = dsc.DbVerNo AND dso.BrowseOptionNo = dsc.BrowseOptionNo INNER JOIN [dbo].[BrowseOptionList] sol ON dso.BrowseOptionNo = sol.BrowseOptionNo WHERE dso.DbVerNo = @DbVerNo AND dsc.LangCode='en' AND iso.BrowseOptionNo is null ORDER BY sol.BrowseOptionId END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerXmlItems_70](@CustID varchar(10), @ParamName varchar(100)) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) EXEC [dbo].[EAUI_GetCustomParamXmlItems_70] @CustNo,'C',@ParamName END
CREATE PROCEDURE [dbo].[EAIP_LogDatabaseActivity_70] (@UserID nvarchar(255), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @Activity varchar(100), @Param3Prefix nvarchar(50)=N'', @Param3 nvarchar(950)=N'', @Param4Prefix nvarchar(50)=N'', @Param4 nvarchar(950)=N'', @Param5Prefix nvarchar(50)=N'', @Param5 nvarchar(950)=N'') AS BEGIN DECLARE @Param3Message nvarchar(1000) DECLARE @Param4Message nvarchar(1000) DECLARE @Param5Message nvarchar(1000) --Exclude all Production DDSUpdate activities except a few coming with @Param4Prefix value 'DDSUpdate' IF (@UserID!=N'prod_dda') OR (@UserID=N'prod_dda' AND @Param4Prefix=N'DDSUpdate') BEGIN SELECT @Param3Message=@Param3Prefix+N' '+@Param3, @Param4Message=@Param4Prefix+N' '+@Param4,@Param5Message=@Param5Prefix+N' '+@Param5 EXEC [dbo].[EAIP_LogActivity_70] @UserID,@UserIP,'Database',@Activity,@DbName, @DbLabel, @Param3Message,@Param4Message,@Param5Message END END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiterSequence_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @LimiterNoList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Reorder Limiters' UPDATE [dbo].[DbLimiter] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[DbLimiter] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@LimiterNoList, @SeqNoList,'+') b ON a.LimiterNo=CONVERT(int, b.Item) WHERE a.DbVerNo = @DbVerNo END
CREATE FUNCTION [dbo].[EAIF_GetLimiterNo_70](@LimiterID varchar(20), @DbLabel varchar(10)) RETURNS int AS BEGIN RETURN (SELECT [dbo].[LimiterList].[LimiterNo] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterId]=@LimiterID AND [dbo].[LimiterList].[DbLabel]=@DbLabel) END
CREATE PROCEDURE [dbo].[EAUI_GetClustersToAttach_89](@DbVerNo Int) AS BEGIN DECLARE @DbLabel Varchar(20) SELECT @DbLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT gc.ClustNo ClusterId, gcc.Caption + ' (' + gc.ClustId + ')' AS Caption FROM [dbo].[ClusterList] gc INNER JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ClustId = gcc.ID AND gcc.LangCode = 'en' LEFT JOIN [dbo].[DbCluster] dc ON gc.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE gc.DbLabel = @DbLabel AND (dc.Enable = 0 OR (dc.DbVerNo Is Null AND gc.AutoAdd2Db = 0)) END
CREATE procedure [dbo].[EAIP_AddGlobalExpanderCaption_91] @UserId nvarchar(20), @UserIp varchar(30), @ControlName varchar(50), @LangCode varchar(10), @DefCaption nvarchar(100) as if exists (Select 1 from [dbo].[GlobalExpanderCaption] where [dbo].[GlobalExpanderCaption].[ControlName]=@ControlName and [dbo].[GlobalExpanderCaption].[LangCode]=@LangCode) Begin RAISERROR('The Expander (%s) already exists for LangCode (%s) in GlobalExpanderCaption', 16, -1, @ControlName, @LangCode) RETURN End Begin Try Begin Transaction Insert [dbo].[GlobalExpanderCaption] ([dbo].[GlobalExpanderCaption].[ControlName], [dbo].[GlobalExpanderCaption].[LangCode], [dbo].[GlobalExpanderCaption].[DefCaption]) Values (@ControlName, @LangCode, @DefCaption) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'GlobalExpanderCaption', 'Add ExpanderCaption', @ControlName, @LangCode, @DefCaption Commit Transaction End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetCustomersFmlDataExt_203] @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN DECLARE @flipsterProd VARCHAR(10) = 'flipster', @findMyOrgProd VARCHAR(10) = 'FindMyOrg', @customerProxyParamNo INT; SELECT @customerProxyParamNo = ParamNo FROM dbo.CustomParamList WHERE ParamLevel = 'C' AND ParamName = 'customerProxy' ;WITH ProdCTE AS ( SELECT CustNo , CustID ,CustName ,MarketID ,Consortium ,MAX(0 + ISNULL(IsFlipma, 0)) IsFlipma ,MAX(0 + ISNULL(IsFindMyOrg, 0)) IsFindMyOrg FROM ( SELECT c.CustNo ,c.CustID ,c.CustName ,c.MarketID ,c.Consortium ,CASE pcd.Product WHEN @flipsterProd THEN ISNULL(pc.ProductAllowed, pcd.ProductAllowed) END IsFlipma ,CASE pcd.Product WHEN @findMyOrgProd THEN ISNULL(pc.ProductAllowed, pcd.ProductAllowed) END IsFindMyOrg FROM dbo.Customer c INNER JOIN [dbo].[CustomParamProductConfigurationDefault] pcd ON c.MarketID = pcd.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc ON c.CustID = pc.CustID AND pcd.Product = pc.Product WHERE c.CustType <> 'I' AND (pcd.Product = @flipsterProd OR pcd.Product = @findMyOrgProd) AND (pc.ProductAllowed = 1 OR (pcd.ProductAllowed = 1 AND pc.ProductAllowed IS NULL)) ) c GROUP BY CustNo, CustID, CustName, MarketID, Consortium ), AddressCTE AS ( SELECT p.* ,ct.CountryName ,ca.State AS SubdivisionId ,ca.City ,ca.PostalCode ,ca.Address1 ,ca.Address2 ,ca.Address3 FROM ProdCTE p INNER JOIN dbo.CustAddress ca ON p.CustID=ca.CustID INNER JOIN dbo.Country ct ON ct.CountryID=ca.CountryID ), InterfacesCTE AS ( SELECT a.* ,STUFF(( SELECT DISTINCT ',' + p.InterfaceID FROM dbo.Profile p WHERE p.CustID = a.CustID AND EXISTS( SELECT TOP 1 1 FROM dbo.ProfDatabase pd WHERE pd.ProfNo = p.ProfNo AND pd.Enable = 1 AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) )FOR XML PATH('')),1,1,'' ) Interfaces FROM AddressCTE a ), CustCTE AS ( SELECT ROW_NUMBER() OVER(ORDER BY CustID) RowNum ,i.* ,STUFF((SELECT ',,' + pv.ItemName + '::' + CONVERT(XML, pv.ParamValue).value('(/customerProxy/@urlMask)[1]','nvarchar(max)') FROM dbo.CustomParamXmlValues pv WHERE i.CustNo = pv.TargetNo AND pv.ParamNo = @customerProxyParamNo ORDER BY pv.ItemName FOR XML PATH('')), 1 ,2,'') AuthProxy FROM InterfacesCTE i ) SELECT CustID ,CustName ,MarketID ,Consortium ,IsFlipma ,IsFindMyOrg ,CountryName ,SubdivisionId ,City ,PostalCode ,Address1 ,Address2 ,Address3 ,Interfaces ,AuthProxy ,NULL TotalCount FROM CustCTE WHERE RowNum BETWEEN @pageIndex * @pageSize + 1 AND (@pageIndex + 1) * @pageSize UNION ALL SELECT NULL CustID ,NULL CustName ,NULL MarketID ,NULL Consortium ,NULL IsFlipma ,NULL IsFindMyOrg ,NULL CountryName ,NULL SubdivisionId ,NULL City ,NULL PostalCode ,NULL Address1 ,NULL Address2 ,NULL Address3 ,NULL Interfaces ,NULL AuthProxy ,COUNT(*) TotalCount FROM AddressCTE END
CREATE PROCEDURE [dbo].[EAUI_GetTitlePublisherList_81](@Title nvarchar(100)) AS BEGIN SELECT TOP 100 [dbo].[Publisher].[PID], [dbo].[Publisher].[PublisherName] FROM [dbo].[Publisher] WHERE [dbo].[Publisher].[PID] IS NOT NULL AND [dbo].[Publisher].[PublisherName] IS NOT NULL AND [dbo].[Publisher].[PublisherName] LIKE @Title+N'%' ORDER BY [dbo].[Publisher].[PublisherName] END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbBrowseOption_DbBrowseOptionCaption(@DbVerNo int, @BrowseOptionNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS BrowseOptionNo, [dbo].[DbBrowseOptionCaption].[LangCode], [dbo].[DbBrowseOptionCaption].[OptionCaption], [dbo].[DbBrowseOptionCaption].[ResultCaption], [dbo].[DbBrowseOptionCaption].[Description], [dbo].[BrowseOptionList].[BrowseOptionId] AS BrowseOptionId FROM [dbo].[DbBrowseOptionCaption] LEFT JOIN [dbo].[BrowseOptionList] ON [dbo].[BrowseOptionList].[BrowseOptionNo] = [dbo].[DbBrowseOptionCaption].[BrowseOptionNo] WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbBrowseOptionCaption].[BrowseOptionNo] = @BrowseOptionNo ORDER BY DbVerNo, BrowseOptionNo, [dbo].[DbBrowseOptionCaption].[LangCode], [dbo].[DbBrowseOptionCaption].[OptionCaption], [dbo].[DbBrowseOptionCaption].[ResultCaption] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceToolbar_79] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN DECLARE @ItemName varchar(50) DECLARE @Category varchar(50) DECLARE @Alignment varchar(10) DECLARE @Image varchar(255) DECLARE @SeqNo int DECLARE @Captions nvarchar(max) DECLARE @Dbs varchar(max) BEGIN TRANSACTION DELETE [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceToolbar].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE C1_C CURSOR FOR SELECT [dbo].[InterfaceToolbar].[ItemName], [dbo].[InterfaceToolbar].[Category], [dbo].[InterfaceToolbar].[Alignment], [dbo].[InterfaceToolbar].[Image], [dbo].[InterfaceToolbar].[SeqNo], dbo.EAIF_InterfaceToolbarItemLangAndCaptions_77([dbo].[InterfaceToolbar].[IntfToolbarItem]) AS Captions, dbo.EAIF_InterfaceToolbarItemDbs([dbo].[InterfaceToolbar].[IntfToolbarItem]) As Dbs FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceToolbar].[Version] = @VersionFrom OPEN C1_C FETCH NEXT FROM C1_C INTO @ItemName,@Category,@Alignment,@Image,@SeqNo,@Captions, @Dbs WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAIP_CopyToolbarItem_77] @InterfaceIDTo, @VersionTo, @ItemName,@Category,@Alignment,@Image,@SeqNo,@Captions,@Dbs IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C ROLLBACK TRANSACTION RETURN END END FETCH NEXT FROM C1_C INTO @ItemName,@Category,@Alignment,@Image,@SeqNo,@Captions,@Dbs END CLOSE C1_C DEALLOCATE C1_C DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Toolbar Items', @SourceIntf, @TargetIntf COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\UTIL_BuildProcessDatabaseTest.sql CREATE PROCEDURE [dbo].[UTIL_BuildProcessDatabaseTest] AS BEGIN SELECT '1234567' END
CREATE PROCEDURE [dbo].[EAIP_CopyDocTypes_77](@DocTypeID varchar(10),@SearchString varchar(255), @SortOption varchar(50), @SearchImage varchar(255),@ResultImage varchar(255), @Defvalue bit, @Category char, @ParentDocTypeID varchar(10), @CaptionLangList nvarchar(max), @MouseOverLangList nvarchar(max))AS /** procedure is used by EPCopy **/ DECLARE @ParentDocTypeNo int DECLARE @DocTypeNo int BEGIN SELECT @ParentDocTypeNo = [dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID] = @ParentDocTypeID IF NOT EXISTS (SELECT 1 FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID) BEGIN INSERT INTO [dbo].[DocTypeList] ([dbo].[DocTypeList].[DocTypeID],[dbo].[DocTypeList].[SearchString],[dbo].[DocTypeList].[SortOption],[dbo].[DocTypeList].[SearchImage],[dbo].[DocTypeList].[ResultImage],[dbo].[DocTypeList].[DefValue],[dbo].[DocTypeList].[Category],[dbo].[DocTypeList].[ParentDocTypeNo]) VALUES (@DocTypeID,@SearchString,@SortOption,@SearchImage,@ResultImage,@Defvalue ,@Category, @ParentDocTypeNo) IF @@ERROR <> 0 RETURN SELECT @DocTypeNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID exec [dbo].[EAIP_CopyDocTypeCaptions_77] @DocTypeNo,@CaptionLangList, @MouseOverLangList END ELSE BEGIN SELECT @DocTypeNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID UPDATE [dbo].[DocTypeList] SET [dbo].[DocTypeList].[SearchString]=@SearchString,[dbo].[DocTypeList].[SortOption]=@SortOption,[dbo].[DocTypeList].[SearchImage]=@SearchImage, [dbo].[DocTypeList].[ResultImage]=@ResultImage,[dbo].[DocTypeList].[DefValue]=@Defvalue,[dbo].[DocTypeList].[Category]=@Category, [dbo].[DocTypeList].[ParentDocTypeNo]=@ParentDocTypeNo WHERE [dbo].[DocTypeList].[DocTypeNo]=@DocTypeNo AND ([dbo].[DocTypeList].[SearchString]<>@SearchString OR [dbo].[DocTypeList].[SortOption]<>@SortOption OR [dbo].[DocTypeList].[SearchImage]<>@SearchImage OR [dbo].[DocTypeList].[ResultImage]<>@ResultImage OR [dbo].[DocTypeList].[DefValue]<>@Defvalue OR [dbo].[DocTypeList].[Category]<>@Category OR ISNULL([dbo].[DocTypeList].[ParentDocTypeNo], '')<>ISNULL(@ParentDocTypeNo, '')) IF @@ERROR <> 0 RETURN IF @CaptionLangList<> dbo.EAIF_DocTypeLangAndCaptions_77(@DocTypeNo)OR @MouseOverLangList<>dbo.EAIF_DocTypeLangAndMouseOverTexts_77(@DocTypeNo) exec [dbo].[EAIP_CopyDocTypeCaptions_77] @DocTypeNo,@CaptionLangList, @MouseOverLangList END END
CREATE PROCEDURE [dbo].[UTIL_AddContentFilterPov2020ForPwhDatabase_234] @BatchSize INT = 100, @WaitForReplicationSec INT = 10 AS BEGIN BEGIN TRY DECLARE @CustIDAndProfNoToAdd [dbo].[CustIDAndProfNoType] DECLARE @ContentFilter VARCHAR(20) = 'pov2020' DECLARE @ContentFilterNo INT SELECT @ContentFilterNo = ContentFilterNo FROM dbo.ContentFilterList WHERE ContentFilterListID = @ContentFilter INSERT INTO @CustIDAndProfNoToAdd(CustID, ProfNo, InterfaceID, Version) SELECT DISTINCT c.CustID, p.ProfNo, p.InterfaceID, p.Version FROM dbo.Customer c INNER JOIN dbo.Profile p ON p.CustID = c.CustID INNER JOIN dbo.CustAddress a ON a.CustID = c.CustID INNER JOIN dbo.ProfDatabase pDb ON pDb.ProfNo = p.ProfNo AND pDb.Enable = 1 AND (pDb.AccessEndDate IS NULL OR pDb.AccessEndDate > GETDATE()) INNER JOIN dbo.DbList db ON db.DbVerNo = pDb.DbVerNo WHERE a.CountryID = 'USA' AND db.DbName = 'pwh' AND p.MarketID = 'school' AND NOT EXISTS ( SELECT NULL FROM dbo.CustContentFilters ccf INNER JOIN dbo.ProfContentFilters pcf ON pcf.CustContentFilterNo = ccf.CustContentFilterNo AND pcf.ProfNo = p.ProfNo WHERE ccf.CustID = c.CustID AND ccf.ContentFilterNo = @ContentFilterNo ) EXEC [dbo].[UTIL_AddContentFilters_234] @ContentFilter, @CustIDAndProfNoToAdd, @BatchSize, @WaitForReplicationSec END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE() DECLARE @ErrorSeverity INT = ERROR_SEVERITY() DECLARE @ErrorState INT = ERROR_STATE() PRINT 'ERROR: ' + @ErrorMessage; RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE Procedure [dbo].[EAUI_GetMDbSTSUsage_90] @MDbSTSID varchar(10) as Declare @DocTypeNoList varchar(max) Select @DocTypeNoList=dbo.EAIF_GetDocTypeNoList_90(@MDbSTSID) if exists( select 1 from [dbo].[MultiDbSTSList] mdbsl join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID join [dbo].[DocTypeMultiDbSTSList] dtmdbsl On mdbsl.MultiDBSTSID=dtmdbsl.MultiDbSTSID join [dbo].[DbDocType] dbdt on dtmdbsl.DocTypeNo=dbdt.DocTypeNo join [dbo].[DbList] dbl on dbdt.DbVerNo=dbl.DbVerNo Where mdbsl.MultiDBSTSID=@MDbSTSID and [mdbsc].[LangCode]='en') Begin select distinct a.MultiDBSTSID, a.Caption, a.DbName, a.[Database], [dbo].[EAIF_GetMDbSTSDocTypeInterfaceList_90].[Interface] from (Select distinct mdbsl.MultiDBSTSID, mdbsc.Caption, dbl.DbVerNo, [dbl].[DbName], [dbl].[DisplayName] + N' (' + [dbl].[DbName] + N'-' + [dbl].[DbLabel] + N')' as [Database] from [dbo].[MultiDbSTSList] mdbsl join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID join [dbo].[DocTypeMultiDbSTSList] dtmdbsl On mdbsl.MultiDBSTSID=dtmdbsl.MultiDbSTSID join [dbo].[DbDocType] dbdt on dtmdbsl.DocTypeNo=dbdt.DocTypeNo join [dbo].[DbList] dbl on dbdt.DbVerNo=dbl.DbVerNo Where mdbsl.MultiDBSTSID=@MDbSTSID and [mdbsc].[LangCode]='en') as a Outer apply dbo.EAIF_GetMDbSTSDocTypeInterfaceList_90(@MDbSTSID, @DocTypeNoList, a.DbVerNo) Order by [a].[DbName]--, InterfaceID, Version End else begin Select [dbo].[EAIF_GetMDbSTSDocTypeInterfaceList_90].[MultiDbSTSID], [dbo].[EAIF_GetMDbSTSDocTypeInterfaceList_90].[Caption], Null as [Database], [dbo].[EAIF_GetMDbSTSDocTypeInterfaceList_90].[Interface] From dbo.EAIF_GetMDbSTSDocTypeInterfaceList_90(@MDbSTSID, @DocTypeNoList,0) --Order by InterfaceID, Version end
CREATE Procedure [dbo].[EATL_UpdateMDbAuthority_90](@UserID nvarchar(20), @UserIP varchar(15), @MultiDbAuthId varchar(10), @LinkText nvarchar(255), @MouseOverText nvarchar(255), @Lang varchar(10))AS BEGIN SET NOCOUNT ON; DECLARE @LogFlag varchar(100) IF Exists(SELECT 1 FROM [dbo].[MultiDbAuthList] WHERE [dbo].[MultiDbAuthList].[MultiDbAuthID] = @MultiDbAuthId) BEGIN IF Exists (SELECT 1 FROM [dbo].[MultiDbAuthCaption] WHERE [dbo].[MultiDbAuthCaption].[MultiDbAuthID] = @MultiDbAuthId AND [dbo].[MultiDbAuthCaption].[LangCode] = @Lang) BEGIN UPDATE [dbo].[MultiDbAuthCaption] SET [dbo].[MultiDbAuthCaption].[LinkText] = @LinkText, [dbo].[MultiDbAuthCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[MultiDbAuthCaption].[MultiDbAuthID] = @MultiDbAuthId AND [dbo].[MultiDbAuthCaption].[LangCode] = @Lang; SELECT @LogFlag ='Translate(Update) Global MultiDb Authority' END ELSE BEGIN INSERT INTO [dbo].[MultiDbAuthCaption] ([dbo].[MultiDbAuthCaption].[MultiDbAuthID], [dbo].[MultiDbAuthCaption].[LangCode], [dbo].[MultiDbAuthCaption].[LinkText], [dbo].[MultiDbAuthCaption].[MouseOverText]) VALUES(@MultiDbAuthId, @Lang, @LinkText, @MouseOverText) SELECT @LogFlag ='Translate(Insert) Global MultiDb Authority' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @MultiDbAuthId, @LogFlag, 'Lang:', @Lang, 'LinkText:', @LinkText, 'MouseOverText:', @MouseOverText END END
Create Procedure [dbo].[EPCS_GetInterfaceDbFeature_103] (@Category varchar(10), @InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(50)) as Begin SELECT l.FeatureName, l.FeatureType, fd.FieldName, fd.FieldLevel,fd.FieldType FROM [dbo].[FeatureList] l join [dbo].[FeatureList] ld on ld.Category = @Category+'_templ' join [dbo].[FeatureFields] fd on ld.FeatureNo=fd.FeatureNo WHERE l.Category = @Category AND l.FeatureName=@FeatureName Order By fd.FieldLevel, fd.SeqNo SELECT l.FeatureName,v.ItemNo, v.FieldValueXml FROM [dbo].[FeatureList] l join [dbo].[InterfaceDbFeatureValues] v on l.FeatureNo=v.FeatureNo and v.InterfaceID=@InterfaceID and v.Version=@Version WHERE l.Category = @Category AND l.FeatureName=@FeatureName end
--sql content merged from file: \StoredProcedures\AUTH_GetCustomerAuthenticationPromptForProduct_99.sql CREATE PROCEDURE [dbo].[AUTH_GetCustomerAuthenticationPromptForProduct_99](@CustID varchar(10), @Product varchar(10)) AS BEGIN SELECT pc.CustID, pc.Product, pc.LoginText, pc.AuthType, ISNULL(pc.DisplayName, c.CustName)AS DisplayName, [c].[MarketID], ISNULL(pc.ProductAllowed,0) as ProductAllowed, pc.Product FROM [dbo].[Customer] c JOIN [dbo].[CustomParamProductConfiguration] pc ON c.CustID=pc.CustID WHERE pc.CustID = @CustID AND pc.Product = @Product END
Create Procedure [dbo].[EAUI_GetInterfaceDbFeaturesForAttach_103] (@Category varchar(10), @InterfaceID varchar(10), @Version varchar(10)) as Begin select fl.FeatureNo, N'(' + fl.FeatureName + N') ' + (convert(xml, fv.FieldValueXml).query('/fields/field[@name = "ToolbarCaption"]')).value('/field[1]', 'nvarchar(max)') as FeatureName from [dbo].[FeatureList] fl join [dbo].[FeatureValues] fv on fl.FeatureNo=fv.FeatureNo left outer join [dbo].[InterfaceDbFeatures] idbf on fl.FeatureNo=idbf.FeatureNo and idbf.InterfaceID=@InterfaceID and idbf.Version=@Version where [fl].[AutoAddForInterfaces]=0 and fl.Category=@Category and idbf.InterfaceID is null End
CREATE PROCEDURE [dbo].[EAIPO_AdjustCustomerAtoZCollections_97] ( @RootEPAZCustomerID varchar(10), @AtoZCustomerID int, @EPCustIDList varchar(max), @AddCount int output, @DelCount int output) AS BEGIN /* This procedure completely manages the set of customer AZ collections based off the set of master AZ collections available. Specifically, missing collections are added, and stray ones are removed. Parameters: @RootEPAZCustomerID - EP CustomerID that 'owns' all master copies of AZ collections (shared by customers) If blank/null, 'system' is assumed @AtoZCustomerID - Apply to this AZ CustomerID @EPCustIDList - Tab-delimited list of EP Customer IDs that use this AtoZCustomerID Resides In: EAMASTER Reads From: dbo.Collection Writes To: dbo.Collection EXEC EAIPO_AddCollection_70 EXEC EAIP_DeleteCollection_70 */ SET NOCOUNT ON IF (@RootEPAZCustomerID IS NULL or @RootEPAZCustomerID='') -- assume 'system' owns all AZ collections, if not specified otherwise SET @RootEPAZCustomerID='system' DECLARE @cust TABLE (EPCustID varchar(10)) DECLARE @tempCustID VARCHAR(10); DECLARE @x1 INT, @y1 INT SET @x1=1 WHILE (@x1 < LEN(@EPCustIDList)) BEGIN SET @y1=charindex(CHAR(9), @EPCustIDList, @x1) -- all strings always have a trailing delimiter SET @tempCustID = CASE WHEN @y1=@x1 THEN NULL ELSE SUBSTRING(@EPCustIDList,@x1,@y1-@x1) END INSERT INTO @cust VALUES(@tempCustID) SET @x1=@y1+1 END DECLARE @colidMask varchar(50) set @colidMask='az'+cast(@AtoZCustomerID as varchar(10)) + '-%' DECLARE @azcol TABLE (ColNo int, ColID varchar(50), ColName varchar(100), ColType int) -- @azcol represents a list of all master (shareable) AtoZ collections for this AtoZCustomerID INSERT INTO @azcol select [dbo].[Collection].[ColNo],[dbo].[Collection].[ColID],[dbo].[Collection].[ColName], case substring([dbo].[Collection].[ColID],charindex('-',[dbo].[Collection].[ColID])+1,len([dbo].[Collection].[ColID])-charindex('-',[dbo].[Collection].[ColID])) when 'o' then 1 when 'e' then 2 when 'p' then 3 when 'nb' then 4 else 0 end as coltype from [dbo].[Collection] where [dbo].[Collection].[ColID] like @colidMask -- TODO: change to more reliable "AtoZ=1" instead of relying on the naming convention and [dbo].[Collection].[CustID]=@RootEPAZCustomerID and [dbo].[Collection].[SharedFrom]=0 and [dbo].[Collection].[IsDeleted] = 0 DECLARE @custcol TABLE (EPCustID varchar(10), ColNo int, ColID varchar(50), ColName varchar(100), ColType int) -- @custcol represents a list of all customer collections shared from the master AtoZ collections for this AtoZCustomerID INSERT INTO @custcol select [dbo].[Collection].[CustID],[dbo].[Collection].[ColNo],[dbo].[Collection].[ColID],[dbo].[Collection].[ColName], case substring([dbo].[Collection].[ColID],charindex('-',[dbo].[Collection].[ColID])+1,len([dbo].[Collection].[ColID])-charindex('-',[dbo].[Collection].[ColID])) when 'o' then 1 when 'e' then 2 when 'p' then 3 when 'nb' then 4 else 0 end as coltype from [dbo].[Collection] where [dbo].[Collection].[ColID] like @colidMask -- TODO: change to more reliable "AtoZ=1" instead of relying on the naming convention and [dbo].[Collection].[SharedFrom]<>0 and [dbo].[Collection].[IsDeleted] = 0 DECLARE @curs CURSOR DECLARE @epcustid varchar(10), @azcolno int, @colid varchar(50), @colname varchar(100), @coltype int, @epcolno int set @AddCount = 0 set @DelCount = 0 -- Identify all customer collections that should exist but do not. Add them in a loop. SET @curs=CURSOR FORWARD_ONLY READ_ONLY FOR SELECT x.EPCustID, x.ColID, x.ColName, x.ColNo, x.ColType FROM (select c.EPCustID, a.ColID, a.ColName, a.ColNo, a.ColType from @cust as c CROSS JOIN @azcol as a) as x LEFT JOIN @custcol as cc on x.EPCustID=cc.EPCustID and cc.ColID=x.ColID WHERE cc.EPCustID IS NULL OPEN @curs FETCH NEXT FROM @curs INTO @epcustid, @colid, @colname, @azcolno, @coltype WHILE @@fetch_status=0 BEGIN EXEC [dbo].[EAIPO_AddCollection_70] @epcustid,@colid,@colname,0,null,@azcolno,0,@epcolno OUTPUT UPDATE [dbo].[Collection] SET [dbo].[Collection].[AutoRecreate] = 1, [dbo].[Collection].[LastUpdateDate]=getdate() WHERE [dbo].[Collection].[ColNo]=@epcolno and [dbo].[Collection].[IsDeleted] = 0 -- TODO: also set new fields when available (AtoZ=1, CollectionType=@coltype) set @AddCount = @AddCount + 1 FETCH NEXT FROM @curs INTO @epcustid, @colid, @colname, @azcolno, @coltype END CLOSE @curs DEALLOCATE @curs -- Identify all customer collections that should not exist but do. Delete them in a loop. SET @curs=CURSOR FORWARD_ONLY READ_ONLY FOR SELECT cc.ColNo FROM @custcol as cc left join (SELECT c.EPCustID,a.ColID FROM @cust as c CROSS JOIN @azcol as a) as x on x.EPCustID=cc.EPCustID and x.ColID=cc.ColID WHERE x.EPCustID IS NULL OPEN @curs FETCH NEXT FROM @curs INTO @epcolno WHILE @@fetch_status=0 BEGIN EXEC [dbo].[EAIP_DeleteCollection_70] @epcolno set @DelCount = @DelCount + 1 FETCH NEXT FROM @curs INTO @epcolno END CLOSE @curs DEALLOCATE @curs RETURN END
CREATE PROCEDURE [dbo].[EPC_GetDbVerNo_70] (@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SELECT dbo.EAIF_GetDbVerNo_70(@DbName,@DbLabel) END
CREATE PROCEDURE [dbo].[EAUI_GetDbClusterDetails_102](@ClustId varchar(20), @DbName varchar(10), @DbLabel varchar(10), @LangCode varchar(10) = 'en') AS BEGIN -- for db info, leave DbLabel as is DECLARE @DbVerNo INT SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel -- when searching for cluster info -- set DbLabel to 'custom' if it's not one of the 4 defined ones IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' DECLARE @ClustNo INT SELECT @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClustId AND [dbo].[ClusterList].[DbLabel] = @DbLabel SELECT @ClustId as ClustId, gcc.Caption, gc.Tag AS GlobalSearchTag, dc.DbSearchTag as DbSearchTag FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ID = gcc.ID AND gcc.LangCode = @LangCode LEFT JOIN [dbo].[DbCluster] dc ON dc.DbVerNo = @dbVerNo AND dc.ClustNo = @ClustNo WHERE (gc.ID = @ClustId) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomLinkCategories_70] AS BEGIN EXEC [dbo].[EAUI_GetStringValueMap] 'CLCategory' END
CREATE PROCEDURE [dbo].[EAIP_LogUpdatesCustomParam_100](@TargetNo int, @ParamNo smallint, @ParamLevel char) AS BEGIN MERGE INTO [dbo].[CustomParamLastUpdate] AS Target USING (VALUES (@TargetNo, @ParamNo, @ParamLevel)) AS Source (TargetNo, ParamNo, ParamLevel) ON Target.TargetNo = Source.TargetNo AND Target.ParamNo = Source.ParamNo AND Target.Paramlevel = Source.ParamLevel WHEN MATCHED THEN UPDATE SET Target.LastUpdateTime= getdate() WHEN NOT MATCHED BY TARGET THEN INSERT ([TargetNo], [ParamNo], [Paramlevel], [LastUpdateTime]) VALUES (@TargetNo ,@ParamNo, @ParamLevel, getdate()); END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiterSequenceOld_70] ( @UserID nvarchar(20), @UserIP varchar(15), @SeqNo smallint, @LimiterNo int, @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Reorder Limiters' UPDATE [dbo].[DbLimiter] SET [dbo].[DbLimiter].[SeqNo] = @SeqNo WHERE [dbo].[DbLimiter].[LimiterNo] = @LimiterNo AND [dbo].[DbLimiter].[DbVerNo] = @DbVerNo END
CREATE FUNCTION dbo.EAIF_GetLimiterTemplates_70(@LimiterNo int) RETURNS varchar(8000) AS BEGIN DECLARE @Captions varchar(8000) SET @Captions='' SELECT @Captions = @Captions + ''+IsNull(a.ControlTemplate,'') +' ' FROM [dbo].[LimiterDetail] a WHERE a.LimiterNo=@LimiterNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCollectionRecreateFlag_70]( @ColNo int ) AS BEGIN SELECT [dbo].[Collection].[AutoRecreate]|[dbo].[Collection].[ForceRecreate] from [dbo].[Collection] where [dbo].[Collection].[ColNo] = @ColNo and [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAIP_AddIndividualSubscriber_164](@CustID varchar(10), @CustName nvarchar(100), @MarketID varchar(20) ) AS BEGIN -- This procedure would be called from the new web API (Name to be updated later) during the process of adding new individual subscription. -- API would make the call with the cust ID passed to it in the service call. Other inputs for this procedure would be -- CustName : Individual Subscriber (static for now) -- MarketID : 'Medical' (Static for now - Dynamed Plus) IF NOT EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID) BEGIN SELECT @CustID=lower(@CustID) IF (@MarketID='' OR @MarketID is NULL) SET @MarketID = 'Medical' --- Default settings BEGIN TRY BEGIN TRANSACTION -- CustType : 'U' (new type to identify individual subscriber - Static) -- Consortium : 0 (Off - Static) -- Status : 'a' (static) INSERT INTO [dbo].[Customer]([dbo].[Customer].[CustID], [dbo].[Customer].[CustName], [dbo].[Customer].[CustType], [dbo].[Customer].[MarketID], [dbo].[Customer].[Status], [dbo].[Customer].[Consortium], [dbo].[Customer].[TimeStamp]) VALUES(@CustID, @CustName, 'U', @MarketID, 'a', 0, GETDATE()) INSERT INTO [dbo].[UserGroup]([dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail]) VALUES (@CustID,'main','Main User Group', NULL) COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH EXEC [dbo].[EAIP_LogActivity_70] 'DmpMarketing', '', 'Individual Subscriber', 'Create New Individual Subscriber', @CustID, @CustName, 'U', @MarketID END /* ELSE BEGIN RAISERROR('Individual Subscriber: CustID "%s" already exists.',16,-1,@CustID) RETURN END */ END
CREATE PROCEDURE [dbo].[EAIP_GetCustomizerInfo_88](@FeatureNo Int) AS BEGIN BEGIN SELECT [dbo].[FeatureValues].[FieldValueXml] FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo] = @FeatureNo AND [dbo].[FeatureValues].[ItemNo] > 0; END END
CREATE PROCEDURE [dbo].[EAUI_GetTopicDetail_77] (@TopicNo int, @LangCode varchar(10)) AS BEGIN SELECT tl.TopicID , tl.SearchString, tc.Caption FROM [dbo].[TopicList] tl LEFT OUTER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo AND tc.LangCode = @LangCode WHERE tl.TopicNo= @TopicNo END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbBrowseOption_DbInterfaceBrowseOption(@DbVerNo int, @BrowseOptionNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS IntfScreenNo, 0 AS BrowseOptionNo, [dbo].[DbInterfaceBrowseOption].[Show], [dbo].[DbInterfaceBrowseOption].[SeqNo], [dbo].[BrowseOptionList].[BrowseOptionId] AS BrowseOptionId, [dbo].[InterfaceScreen].[InterfaceID] AS InterfaceID, [dbo].[InterfaceScreen].[Version] AS Version, [dbo].[InterfaceScreen].[ScreenID] AS ScreenID FROM [dbo].[DbInterfaceBrowseOption] LEFT JOIN [dbo].[BrowseOptionList] ON [dbo].[BrowseOptionList].[BrowseOptionNo] = [dbo].[DbInterfaceBrowseOption].[BrowseOptionNo] LEFT JOIN [dbo].[InterfaceScreen] ON [dbo].[InterfaceScreen].[IntfScreenNo] = [dbo].[DbInterfaceBrowseOption].[IntfScreenNo] WHERE [dbo].[DbInterfaceBrowseOption].[DbVerNo] = @DbVerNo AND [dbo].[DbInterfaceBrowseOption].[BrowseOptionNo] = @BrowseOptionNo ORDER BY DbVerNo, IntfScreenNo, BrowseOptionNo, [dbo].[DbInterfaceBrowseOption].[Show], [dbo].[DbInterfaceBrowseOption].[SeqNo] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceTopics_81] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceTopics_81] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Topics', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[UTIL_Columns] (@table_name nvarchar(128))AS BEGIN SELECT C.COLUMN_NAME AS [Column], C.DATA_TYPE AS [DataType], C.IS_NULLABLE AS [Allows Nulls] FROM INFORMATION_SCHEMA.TABLES T JOIN INFORMATION_SCHEMA.COLUMNS C ON T.TABLE_NAME = C.TABLE_NAME WHERE T.TABLE_NAME = @table_name ORDER BY C.ORDINAL_POSITION END
CREATE PROCEDURE [dbo].[EAIP_CopyGlobalInterfaceCluster_102](@ClustId VARCHAR(20), @InterfaceId VARCHAR(10), @Version VARCHAR(50), @MinDisplay INT, @MaxDisplay INT, @MaxPercentageResults INT, @CaseConversion INT, @Show INT) AS BEGIN -- check for -1 value parameters and set them to NULL IF @MinDisplay=-1 SET @MinDisplay = NULL IF @MaxDisplay=-1 SET @MaxDisplay = NULL IF @MaxPercentageResults=-1 SET @MaxPercentageResults = NULL IF @CaseConversion=-1 SET @CaseConversion = NULL IF @Show=-1 SET @Show = NULL DECLARE @Overridden BIT SET @Overridden = 1 IF (@MinDisplay IS NULL AND @MaxDisplay IS NULL AND @MaxPercentageResults IS NULL AND @CaseConversion IS NULL AND @Show IS NULL) BEGIN SET @Overridden = 0 END -- update the global level clusters -- using the ClustId and Version, check if the cluster exists in the GlobalClusters table -- if it's not there we aren't going to add it or the GlobalInterfaceCluster IF (EXISTS (SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @ClustId )) BEGIN -- now check to see if the record is already in InterfaceClusters, if it is, update it, if it isn't, insert it IF (EXISTS (SELECT 1 FROM [dbo].[GlobalClusterInterface] WHERE [dbo].[GlobalClusterInterface].[InterfaceId] = @InterfaceId AND @Version = @Version AND [dbo].[GlobalClusterInterface].[ClustId] = @ClustId)) BEGIN IF (@Overridden = 1) BEGIN UPDATE [dbo].[GlobalClusterInterfaceDetails] SET [dbo].[GlobalClusterInterfaceDetails].[MinDisplay] = @MinDisplay, [dbo].[GlobalClusterInterfaceDetails].[MaxDisplay] = @MaxDisplay, [dbo].[GlobalClusterInterfaceDetails].[MaxPercentageResults] = @MaxPercentageResults, [dbo].[GlobalClusterInterfaceDetails].[CaseConversion] = @CaseConversion, [dbo].[GlobalClusterInterfaceDetails].[Show] = @Show WHERE [dbo].[GlobalClusterInterfaceDetails].[InterfaceId] = @InterfaceId AND [dbo].[GlobalClusterInterfaceDetails].[Version] = @Version AND [dbo].[GlobalClusterInterfaceDetails].[ClustId] = @ClustId END END ELSE BEGIN INSERT INTO [dbo].[GlobalClusterInterface] ([dbo].[GlobalClusterInterface].[ClustId], [dbo].[GlobalClusterInterface].[InterfaceId], [dbo].[GlobalClusterInterface].[Version]) VALUES (@ClustId, @InterfaceId, @Version) -- check for overridden values IF (@Overridden = 1) BEGIN INSERT INTO [dbo].[GlobalClusterInterfaceDetails] ([dbo].[GlobalClusterInterfaceDetails].[ClustId], [dbo].[GlobalClusterInterfaceDetails].[InterfaceId], [dbo].[GlobalClusterInterfaceDetails].[Version] , [dbo].[GlobalClusterInterfaceDetails].[MinDisplay], [dbo].[GlobalClusterInterfaceDetails].[MaxDisplay], [dbo].[GlobalClusterInterfaceDetails].[MaxPercentageResults], [dbo].[GlobalClusterInterfaceDetails].[CaseConversion], [dbo].[GlobalClusterInterfaceDetails].[Show]) VALUES (@ClustId, @InterfaceId, @Version, @MinDisplay, @MaxDisplay, @MaxPercentageResults, @CaseConversion, @Show) END END END END
CREATE Procedure [dbo].[EAUI_GetMultiDbAuthInterfaceCustomization_90]( @InterfaceId Varchar(10), @InterfaceVersion Varchar(10), @MDbAId Varchar(10), @LangCode Varchar(50)) AS Declare @IsCaptionDefault bit Declare @isMouseOverTextDefault bit set @IsCaptionDefault=0; set @IsMouseOverTextDefault=0; SET NOCOUNT ON IF Exists(SELECT 1 FROM [dbo].[MultiDbAuthInterfaceCaption] WHERE [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MDbAId AND [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceId AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @InterfaceVersion AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @LangCode) Begin SELECT ic.InterfaceName + '(' + ic.InterfaceID + '-' + ic.Version + ')' InterfaceName, mdbaic.LinkText Caption, @IsCaptionDefault as IsCaptionDefault, mdbaic.MouseOverText, @IsMouseOverTextDefault as IsMouseOverTextDefault, mdbal.Description FROM [dbo].[MultiDbAuthInterfaceCaption] mdbaic INNER JOIN [dbo].[InterfaceLanguage] ic ON mdbaic.InterfaceID = ic.InterfaceID AND mdbaic.Version = ic.Version AND ic.LangCode = 'en' INNER JOIN [dbo].[MultiDbAuthList] mdbal ON mdbaic.MultiDbAuthId = mdbal.MultiDbAuthID WHERE mdbaic.MultiDbAuthId = @MDbAId AND mdbaic.InterfaceID = @InterfaceId AND mdbaic.Version = @InterfaceVersion AND mdbaic.LangCode = @LangCode End ELSE Begin set @IsCaptionDefault=1 set @isMouseOverTextDefault=1 SELECT ic.InterfaceName + '(' + ic.InterfaceID + '-' + ic.Version + ')' InterfaceName, mdbac.LinkText Caption, @IsCaptionDefault as IsCaptionDefault, mdbac.MouseOverText, @IsMouseOverTextDefault as IsMouseOverTextDefault, mdbal.Description FROM [dbo].[MultiDbAuthCaption] mdbac INNER JOIN [dbo].[MultiDbAuthList] mdbal ON mdbac.MultiDbAuthID = mdbal.MultiDbAuthID CROSS JOIN [dbo].[InterfaceLanguage] ic WHERE mdbac.MultiDbAuthID = @MDbAId AND mdbac.LangCode = @LangCode AND ic.InterfaceID = @InterfaceId AND ic.Version = @InterfaceVersion AND ic.LangCode = 'en' End
CREATE PROCEDURE EATL_UpdateMDbAuthority_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@MultiDbAuthorityGlobals XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #MultiDbAuthorityGlobals ( ID INT identity(1, 1) ,MultiDbAuthId VARCHAR(10) ,LinkText NVARCHAR(255) ,MouseOverText NVARCHAR(255) ) INSERT INTO #MultiDbAuthorityGlobals ( MultiDbAuthId ,LinkText ,MouseOverText ) SELECT m.c.value('(./Id)[1]', 'varchar(10)') ,m.c.value('(./LinkText)[1]', 'nvarchar(max)') ,m.c.value('(./MouseOverText)[1]', 'nvarchar(max)') FROM @MultiDbAuthorityGlobals.nodes('/ArrayOfMultiDbAuthorityGlobal/MultiDbAuthorityGlobal') AS m(c) DECLARE @i INT ,@Count INT ,@MultiDbAuthId VARCHAR(10) ,@LinkText NVARCHAR(255) ,@MouseOverText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #MultiDbAuthorityGlobals ) WHILE @i <= @Count BEGIN SELECT @MultiDbAuthId = MultiDbAuthId ,@LinkText = LinkText ,@MouseOverText = MouseOverText FROM #MultiDbAuthorityGlobals WHERE ID = @i EXECUTE [dbo].[EATL_UpdateMDbAuthority_90] @UserID ,@UserIP ,@MultiDbAuthId ,@LinkText ,@MouseOverText ,@Lang SET @i = @i + 1 END DROP TABLE #MultiDbAuthorityGlobals END
Create Procedure [dbo].[EPCS_GetInterfaceDbFeatures_103] (@Category varchar(10), @InterfaceID varchar(10), @Version varchar(10)) as Select fl.FeatureName from [dbo].[InterfaceDbFeatures] idbf join [dbo].[FeatureList] fl on idbf.FeatureNo=fl.FeatureNo and fl.Category=@Category where idbf.InterfaceID=@InterfaceID and idbf.Version=@Version union select [dbo].[FeatureList].[FeatureName] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]=@Category and [dbo].[FeatureList].[AutoAddForInterfaces]=1
--sql content merged from file: \StoredProcedures\AUTH_GetCustomerByID_912.sql CREATE Procedure [dbo].[AUTH_GetCustomerByID_912] @CustID varchar(10) AS BEGIN SELECT * FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDbSearchTagDetails_82](@InterfaceID varchar(10),@Version varchar(10),@Tag varchar(10)) AS BEGIN DECLARE @Interface nvarchar(100) SELECT @Interface=[dbo].[InterfaceLanguage].[InterfaceName]+N'('+[dbo].[InterfaceLanguage].[InterfaceID]+N'-'+[dbo].[InterfaceLanguage].[Version]+N')' FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]='en' SELECT @Interface AS Interface, ISNULL(itc.Caption, gt.Description) As Caption FROM [dbo].[GlobalSearchTags] gt LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] itc ON gt.Tag=itc.Tag AND itc.InterfaceID=@InterfaceID AND itc.Version=@Version WHERE gt.Tag =@Tag END
CREATE PROCEDURE [dbo].[EAIPO_GetInterfaceSearchThemesHierarchy_83](@ThemeID varchar(20), @ThemeHierarchy varchar(8000) OUT)AS BEGIN SET NOCOUNT OFF DECLARE @ParentThemeID varchar(20) IF LEN(@ThemeHierarchy) > 0 SET @ThemeHierarchy = (SELECT [dbo].[SearchTheme].[ThemeID] FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID] = @ThemeID)+'|'+ISNULL(@ThemeHierarchy,'') ELSE SET @ThemeHierarchy = (SELECT [dbo].[SearchTheme].[ThemeID] FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID] = @ThemeID) SET @ParentThemeID = (SELECT MIN([dbo].[SearchTheme].[ParentThemeID]) FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID] = @ThemeID) WHILE LEN(ISNULL(@ParentThemeID,'')) > 0 BEGIN EXEC [dbo].[EAIPO_GetInterfaceSearchThemesHierarchy_83] @ParentThemeID, @ThemeHierarchy out SET @ParentThemeID = (SELECT MIN([dbo].[SearchTheme].[ParentThemeID]) FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID] = @ThemeID AND [dbo].[SearchTheme].[ParentThemeID] > @ParentThemeID) END END
CREATE PROCEDURE [dbo].[EPC_GetMainDbVer_70](@ShortDbName varchar(10), @Label varchar(20)) AS BEGIN /*First Flag bit records DDS Db*/ SELECT Max(a.DbVerNo), Max(CAST(a.ShowOnDDSConsole as CHAR)) as Flags, Max(a.DSFamilyName) as DSFamilyName, Max(c.LastUpdateDate) as LastUpdateDate FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[DbVolume] c ON a.DbVerNo=c.DbVerNo WHERE a.DbName=@ShortDbName AND a.DbLabel=@Label END
CREATE PROCEDURE [dbo].[EAUI_GetDBClusters_89](@DbVerNo Int, @LangCode Varchar(10)) AS BEGIN DECLARE @DbLabel Varchar(10), @DbType Smallint SELECT @DbLabel = d.DbLabel, @DbType = d.DbType, @DbVerNo = ISNULL(s.PhysDbVerNo,d.DbVerNo) -- get DBClusters from PhysicalDB if database is SubsetDB FROM [dbo].[DbList] d left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=d.DbVerNo WHERE d.DbVerNo = @DbVerNo IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' IF (@DbType = 1) SELECT cl.ClustId ClusterId, gcc.Caption, CASE WHEN gc.Show=1 THEN 'Yes' ELSE 'No' END AS Show, ISNULL(dc.DbSearchTag, gc.Tag) AS SearchTag, CASE WHEN (dc.DbSearchTag IS NULL) THEN 'global' ELSE 'override' END AS SearchTagSource FROM [dbo].[ClusterList] cl INNER JOIN [dbo].[GlobalCluster] gc on cl.ClustId = gc.ID INNER JOIN [dbo].[GlobalClusterCaption] gcc ON cl.ClustId = gcc.ID LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE cl.DbLabel = @DbLabel AND gcc.LangCode = @LangCode AND ((cl.AutoAdd2Db = 1 AND (dc.Enable Is Null OR dc.Enable = 1)) OR dc.Enable = 1) END
CREATE PROCEDURE [dbo].[EAUI_GetDbFieldTagType_70] AS BEGIN EXEC [dbo].[EAUI_GetIntValueMap] 'DbFieldTagType' END
CREATE PROCEDURE [dbo].[EAIP_ModCustRights_1042](@CustID varchar(10), @PrdOffNo int, @CallerUserID nvarchar(255), @CallerUserIP varchar(15) ) AS BEGIN SET NOCOUNT ON DECLARE @POType char(1) SELECT @POType = [po].[SourceType] FROM EASUPPORT.dbo.ProductOffering po WHERE [po].[PrdOffNo]=@PrdOffNo IF @POType <> 'M' AND @POType <>'D' AND @POType<>'C' return -- nothing to do - no databases are assotiated with 'S' or 'E' type of products/product offerings ----------------------------------------------------------------------------- -- Step 1 -- Start to retrive customer products and Interface for the current subscription and other subscriptions -- referensing the same products. DECLARE @WRK_CustProducts TABLE ( SourceType char(1) , ProductId varchar(10), InterfaceId varchar(10), Version varchar(10), DbVerNo int, EndDate datetime, Mode char(1), GracePeriod int, AccessEndDate datetime) IF @POType = 'D' Begin INSERT INTO @WRK_CustProducts ( SourceType, ProductId, InterfaceId, Version , DbVerNo, EndDate, Mode, GracePeriod) SELECT po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, ISNULL(d.DbVerNo,'') As DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod FROM EASUPPORT.dbo.CustSubscription cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo left Outer Join [dbo].[DbList] d WITH (NOLOCK) on pkg.ProductID=d.DbName and d.DbLabel='live' INNER JOIN EASUPPORT.dbo.ProductInterface pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID AND pr.ProductID=d.DbName INNER JOIN EASUPPORT.dbo.ProductPackage pkg2 WITH (NOLOCK) ON pkg.ProductID=pkg2.ProductID WHERE cs.CustID=@CustID AND pkg2.PrdOffNo=@PrdOffNo GROUP BY po.SourceType, CASE WHEN cs.PrdOffNo=@PrdOffNo THEN 1 ELSE 0 END, pkg.ProductID, pdi.InterfaceID, pdi.Version, ISNULL(d.DbVerNo,''), cs.EndDate, cs.Mode, pr.GracePeriod End ELSE IF @POType = 'M' BEGIN INSERT INTO @WRK_CustProducts ( SourceType, ProductId, InterfaceId, Version , DbVerNo, EndDate, Mode, GracePeriod) SELECT po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, MAX(cs.EndDate) Enddate, cs.Mode, pr.GracePeriod FROM EASUPPORT.dbo.CustSubscription cs WITH (NOLOCK) JOIN EASUPPORT.dbo.ProductOffering po WITH (NOLOCK) ON po.PrdOffNo = cs.PrdOffNo JOIN EASUPPORT.dbo.ProductPackage pkg WITH (NOLOCK) ON pkg.PrdOffNo = cs.PrdOffNo JOIN EASUPPORT.dbo.Product pr WITH (NOLOCK) ON pr.ProductID = pkg.ProductID JOIN EASUPPORT.dbo.ProductPackage pkg2 WITH (NOLOCK) ON pkg.ProductID = pkg2.ProductID JOIN EASUPPORT.dbo.ProductInterface pdi WITH (NOLOCK) ON pdi.ProductID = pkg.ProductID JOIN [dbo].[Customer] c WITH (NOLOCK) ON c.CustID = cs.CustID JOIN [dbo].[CustExternalDbList] d WITH (NOLOCK) ON c.CustNo = d.CustNo WHERE cs.CustID = @CustID AND pkg2.PrdOffNo = @PrdOffNo GROUP BY po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, --cs.Enddate, cs.Mode, pr.GracePeriod END Else If @POType = 'C' Begin Insert @WRK_CustProducts ( SourceType, ProductId, InterfaceId, Version , DbVerNo, EndDate, Mode, GracePeriod) Select po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod From EASUPPORT.dbo.CustSubscription cs WITH (NOLOCK) INNER JOIN EASUPPORT.dbo.ProductOffering po WITH (NOLOCK) ON cs.PrdOffNo=po.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductPackage pkg WITH (NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface pdi WITH (NOLOCK) ON pkg.ProductID=pdi.ProductID INNER JOIN EASUPPORT.dbo.Product pr WITH (NOLOCK) ON pkg.ProductID=pr.ProductID INNER JOIN EASUPPORT.dbo.CustomerCatalogs cc WITH (NOLOCK) ON cc.CustID=cs.CustID AND cc.SubscriptionNo=cs.SubscriptionNo INNER JOIN [dbo].[DbList] d WITH (NOLOCK) ON cc.DbName=d.DbName Where cs.CustID=@CustID AND cs.PrdOffNo=@PrdOffNo AND d.DbLabel='Live' Group by po.SourceType, pkg.ProductID, pdi.InterfaceID, pdi.Version, d.DbVerNo, cs.EndDate, cs.Mode, pr.GracePeriod END --End to retrieve all customer subscription, products and Interface -------------------------------------------------------------------------- --------------------------------------------------------------------------- -- Step 2. --Start AccessEnddate culculation DECLARE @WRK_AccessEndDate TABLE ( Mode char(1), Graceperiod int, EndDate datetime, AcessEndDate datetime) Insert Into @WRK_AccessEndDate (Mode, Graceperiod, EndDate) select distinct Mode, GracePeriod, EndDate from @WRK_CustProducts update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,ISNULL(Graceperiod,90),null,null) where Mode='S' update @WRK_AccessEndDate set AcessEndDate=dbo.fn_GetEPAccessEndDate_90(EndDate,0,null,null) where Mode='T' Update @WRK_CustProducts SET [AccessEndDate] =wa.AcessEndDate FROM @WRK_CustProducts wp INNER JOIN @WRK_AccessEndDate wa ON wp.Mode=wa.Mode And wp.EndDate=wa.EndDate and ISNULL(wp.GracePeriod, 0)=ISNULL(wa.Graceperiod, 0) --End AccessEnddate culculation --------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------- -- Step 3. --Start: Eliminate duplicates for identical products coming from diff. subscriptions /* Always select the longer running subscription, even if the longer running mode is 'T'. Ideally we should set Mode to 'S' if customer has current 'S' even if the 'T' subscription has later AccessEndDate, but to support this we have to have a process to reset the mode when 'S' expired and we don't have it.. :(. In reality it should be a rare event. */ delete @WRK_CustProducts from @WRK_CustProducts w INNER JOIN (SELECT DbVerNo, Max(AccessEndDate) AS AccessEndDate FROM @WRK_CustProducts Group By DbVerNo) a ON w.DbVerNo=a.DbVerNo and w.AccessEndDate<>a.AccessEndDate -- NOTE: The following logic has been removed. -- This step was removing not just the duplicate entry but all entry which have duplicates. -- It is removing databases which needs to be updated for the accessenddate. -- The duplicates (if any), will get not matter, as the next step gets distinct entries. -- /* -- In case several subscriptions with overlapping products has the same EndDate - -- there still will be duplicates - needs to remove them -- */ -- delete @WRK_CustProducts -- from @WRK_CustProducts w, -- ( -- select DbVerNo, InterfaceId, Version,Mode,AccessEndDate -- from @WRK_CustProducts -- Group By DbVerNo,InterfaceId, Version, Mode,AccessEndDate -- Having count(*)>1 -- ) a -- Where w.DbVerNo=a.DbVerNo and w.InterfaceId=a.InterfaceID and w.Version=a.Version and w.Mode=a.Mode and w.AccessEndDate=a.AccessEndDate --End: Eliminate duplicates for identical products coming from diff. subscriptions ------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------- -- Step 4 -- Start: list of customer profile databases for current subscriptions: /* EADM-5452/EADM-4355 fix: AddModSubscription call failed due to primary key violation exception. Eliminate 'Trial' subscriptions if there are overlapping products with the same access end date but will different subscription Mode. If not removed, it would cause a primary key violation when data from @WRK_CustProducts gets inserted in @WRK_ProfDbs in Step 4. */ DELETE wcpt from @WRK_CustProducts wcpt Join @WRK_CustProducts wcps ON wcps.DbVerNo=wcpt.DbVerNo and wcps.InterfaceId=wcpt.InterfaceId and wcps.Version = wcpt.Version and wcps.AccessEndDate= wcpt.AccessEndDate AND wcps.Mode='S' Where wcpt.Mode='T' DECLARE @WRK_ProfDbs TABLE (ProfNo int, DbVerNo int, Mode char(1), AccessEndDate datetime, PdMode char(1), PdAccessEndDate datetime PRIMARY KEY (ProfNo, DbVerNo)) Insert Into @WRK_ProfDbs (ProfNo , DbVerNo, Mode, AccessEndDate) SELECT DISTINCT p.ProfNo, w.DbVerNo, w.Mode, w.AccessEndDate FROM [dbo].[Profile] p WITH (NOLOCK) JOIN @WRK_CustProducts w ON p.InterfaceID=w.InterfaceId AND p.Version=w.Version JOIN [dbo].[InterfaceVersion] iv WITH (NOLOCK) ON p.InterfaceID=iv.InterfaceID AND p.Version=iv.Version WHERE p.CustID=@CustID --Copy over the current values of Mode, AccessEndDate from profDatabase Update @WRK_ProfDbs SET [PdMode] =pd.Mode, [PdAccessEndDate]= pd.AccessEndDate From @WRK_ProfDbs w INNER JOIN [dbo].[ProfDatabase] pd WITH (NOLOCK) ON w.ProfNo=pd.ProfNo and w.DbVerNo=pd.DbVerNo ----------------------------------------------------- --Debug version - output collected data and return ------------------------------------------------------ IF EXISTS (SELECT 1 FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName]='addCustRightsDebug' AND [dbo].[AdminState].[ParamValue]='true') BEGIN SELECT * FROM @WRK_CustProducts SELECT p.GroupID, p.ProfID, p.InterfaceID, p.Version, db.DbName,wp.Mode, wp.AccessEndDate,wp.PdMode As CurrMode, wp.PdAccessEndDate As CurrAccessEndDate FROM @WRK_ProfDbs wp INNER JOIN [dbo].[Profile] p WITH (NOLOCK) ON wp.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] db WITH (NOLOCK) ON wp.DbVerNo=db.DbVerNo AND wp.DbVerNo=db.DbVerNo ORDER BY p.GroupID, p.ProfID, db.DbName RETURN END --//////////////////////////////////////////////////////////// --------------------------------------------------------------- -- DATA UPDATE --------------------------------------------------------------- --///////////////////////////////////////////////////////////// BEGIN TRY BEGIN TRANSACTION --------------------------------------------------------------------- --Step 9 --Start update data in profDatabase UPDATE [dbo].[ProfDatabase] SET ProfDatabase.AccessEndDate= a.AccessEndDate FROM @WRK_ProfDbs AS a INNER JOIN dbo.ProfDatabase AS b ON a.ProfNo=b.ProfNo AND a.DbVerNo=b.DbVerNo WHERE a.AccessEndDate<>a.PdAccessEndDate -------------------------------------------------------------------------------- --LogActivity -------------------------------------------------------------------------------- DECLARE @ToDay datetime SET @ToDay=getdate() INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, @ToDay, 'Profiles', 'Recalc and Update Db Access End Date on customer Profiles (on delete subscription)', (p.CustID+'.'+p.GroupID+'.'+p.ProfID) as Prof, dbl.DbName, a.AccessEndDate, NULL, NULL FROM @WRK_ProfDbs a INNER JOIN [dbo].[Profile] p WITH (NOLOCK) ON a.ProfNo=p.ProfNo INNER JOIN [dbo].[DbList] dbl WITH (NOLOCK) ON a.DbVerNo=dbl.DbVerNo WHERE a.DbVerNo>0 AND a.AccessEndDate<>a.PdAccessEndDate COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH SET NOCOUNT OFF END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiterValues_70] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @LimiterNo int, @LimiterId varchar(20), @SearchString varchar(4000), @LangCode varchar(10), @Caption nvarchar(100), @MouseOverText nvarchar(255), @Mode varchar(6) ) AS IF (@Mode = 'attach' ) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Attach Limiter','Limiter ID:',@LimiterId ELSE EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Update Limiter','Limiter ID:',@LimiterId BEGIN EXEC [dbo].[EAIP_UpdateLimiterSearchString_70] @UserID, @UserIP, @DbVerNo, @LimiterNo, @SearchString END BEGIN EXEC [dbo].[EAIP_UpdateDbLimiterCaption_70] @UserID, @UserIP, @DbVerNo, @LimiterNo, @LangCode, @Caption, @MouseOverText END
CREATE FUNCTION [dbo].[EAIF_GetLinkSourceProfile_70](@CustID varchar(10), @GroupID varchar(10) ) RETURNS INT AS BEGIN DECLARE @ProfNo int DECLARE @LinkSourceProfNo varchar(50) SET @LinkSourceProfNo=dbo.EAIF_GetGroupParamScalarValue_70(@CustID, @GroupID,'linkSourceProfile') IF @LinkSourceProfNo <> '' SET @ProfNo= convert(int,@LinkSourceProfNo) -- make sure @LinkSourceProfID is a valid profileID IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo) SELECT TOP 1 @ProfNo=a.ProfNo FROM [dbo].[Profile] a WHERE [a].[CustID]=@CustID AND [a].[GroupID]=@GroupID ORDER BY [a].[SeqNo] RETURN @ProfNo END
CREATE PROCEDURE [dbo].[EAUI_GetCollectionsForDeletion_191] AS BEGIN DECLARE @TempCollection as TABLE (ColNo int) INSERT INTO @TempCollection SELECT [dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[IsDeleted]=1 SELECT c.ColNo FROM [dbo].[Collection] as c INNER JOIN @TempCollection as t ON c.SharedFrom = t.ColNo UNION SELECT ColNo FROM @TempCollection END
CREATE PROCEDURE [dbo].[EAIP_AddInterfaceKnownSearchItem_161] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @Label nvarchar(255), @SearchString nvarchar(255), @GhostText nvarchar(255)) AS BEGIN DECLARE @SmallIntMaxValue AS INT IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END SELECT @SmallIntMaxValue=MAX([dbo].[InterfaceKnownSearchItems].[SeqNo]) FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version]=@Version IF(@SmallIntMaxValue=32767) BEGIN RAISERROR('The Maximum value for Seqno is reached since it is a small integer type and can''t add new known items', 16,-1) RETURN END EXEC [dbo].[EAUI_AddInterfaceKnownSearchItem_103] @UserID,@UserIP,@InterfaceID,@Version,@Label,@SearchString,@GhostText END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamTblProfXmlValues_153] ( @ParamNo int, @ProfNo int) AS BEGIN SELECT [dbo].[CustomParamXmlValues].[ItemName],[dbo].[CustomParamXmlValues].[ParamValue] FROM dbo.CustomParamXmlValues WHERE [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo END
CREATE PROCEDURE [dbo].[EAUI_GetTopicInterfaceDetails_77](@IntfTopicNo int, @LangCode varchar(10)) AS BEGIN DECLARE @Interface nvarchar(100), @InterfaceID varchar(10), @InterfaceVersion varchar(10) SELECT @Interface = (il.InterfaceName + N'(' + it.InterfaceID + N'-' + it.Version + N')'), @InterfaceID = it.InterfaceID, @InterfaceVersion = it.Version FROM [dbo].[InterfaceTopic] AS it INNER JOIN [dbo].[TopicList] AS tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[InterfaceLanguage] AS il ON it.InterfaceID = il.InterfaceID AND it.Version = il.Version WHERE (it.IntfTopicNo = @IntfTopicNo) AND (il.LangCode = @LangCode) DECLARE @ParentTopicNo int SELECT @ParentTopicNo = tl.ParentTopicNo FROM [dbo].[TopicList] AS tl INNER JOIN [dbo].[InterfaceTopic] AS it ON tl.TopicNo = it.TopicNo WHERE (it.IntfTopicNo = @IntfTopicNo) DECLARE @ParentTopicCaption nvarchar(255) IF (@ParentTopicNo IS NOT NULL) BEGIN SELECT @ParentTopicCaption = [dbo].[InterfaceTopicCaption].[Caption] FROM [dbo].[InterfaceTopic] INNER JOIN [dbo].[InterfaceTopicCaption] ON [dbo].[InterfaceTopic].[IntfTopicNo] = [dbo].[InterfaceTopicCaption].[IntfTopicNo] WHERE ([dbo].[InterfaceTopic].[TopicNo] = @ParentTopicNo) AND ([dbo].[InterfaceTopic].[InterfaceID] = @InterfaceID) AND ([dbo].[InterfaceTopic].[Version] = @InterfaceVersion) AND ([dbo].[InterfaceTopicCaption].[LangCode] = @LangCode) IF(@ParentTopicCaption IS NUll) SELECT @ParentTopicCaption = [dbo].[TopicCaption].[Caption] FROM [dbo].[TopicCaption] WHERE [dbo].[TopicCaption].[TopicNo] = @ParentTopicNo AND [dbo].[TopicCaption].[LangCode] = @LangCode END SELECT @ParentTopicCaption AS PCaption, @Interface AS Interface, tl.TopicID , ISNULL(itc.Caption,tc.Caption) AS Caption, it.Image, it.Photo1, it.Photo2, it.Photo3, itc.MouseOverText, itc.PhotoAltText FROM [dbo].[InterfaceTopic] it LEFT OUTER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo = itc.IntfTopicNo AND itc.LangCode = @LangCode INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo LEFT OUTER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo AND tc.LangCode = @LangCode WHERE it.IntfTopicNo=@IntfTopicNo END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbFieldGroup_DbFieldElement(@DbVerNo int, @FieldGroupNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS FieldGroupNo, 0 AS FieldElementNo, [dbo].[FieldElementList].[FieldElementName] AS FieldElementName, [dbo].[FieldGroupList].[FieldGroupId] AS FieldGroupId FROM [dbo].[DbFieldElement] LEFT JOIN [dbo].[FieldElementList] ON [dbo].[FieldElementList].[FieldElementNo] = [dbo].[DbFieldElement].[FieldElementNo] LEFT JOIN [dbo].[FieldGroupList] ON [dbo].[FieldGroupList].[FieldGroupNo] = [dbo].[DbFieldElement].[FieldGroupNo] WHERE [dbo].[DbFieldElement].[DbVerNo] = @DbVerNo AND [dbo].[DbFieldElement].[FieldGroupNo] = @FieldGroupNo ORDER BY DbVerNo, FieldGroupNo, FieldElementNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceVersionParameters_70] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10), @CopyLimiters bit )AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceParamList] ([dbo].[InterfaceParamList].[InterfaceID], [dbo].[InterfaceParamList].[Version], [dbo].[InterfaceParamList].[ParamNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceParamList].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceIDTo AND [dbo].[CustomParamDefaults].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[CustomParamDefaults]([dbo].[CustomParamDefaults].[ParamNo], [dbo].[CustomParamDefaults].[InterfaceID], [dbo].[CustomParamDefaults].[Version], [dbo].[CustomParamDefaults].[MarketID], [dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue]) SELECT [dbo].[CustomParamDefaults].[ParamNo], @InterfaceIDTo, @VersionTo, [dbo].[CustomParamDefaults].[MarketID], [dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceIDFrom AND [dbo].[CustomParamDefaults].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE cpsv FROM [dbo].[CustomParamScalarValues] cpsv INNER JOIN [dbo].[Profile] b ON cpsv.TargetNo = b.ProfNo WHERE cpsv.ParamLevel='P' AND b.InterfaceID=@InterfaceIDFrom AND b.Version=@VersionFrom AND cpsv.ParamNo NOT IN ( SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE a FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceIDFrom AND b.Version=@VersionFrom AND a.ParamNo NOT IN ( SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @CopyLimiters=1 BEGIN DELETE from [dbo].[LimiterDefaults] WHERE [dbo].[LimiterDefaults].[InterfaceID]=@InterfaceIDTo AND [dbo].[LimiterDefaults].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[LimiterDefaults] ([dbo].[LimiterDefaults].[LimiterNo], [dbo].[LimiterDefaults].[InterfaceID], [dbo].[LimiterDefaults].[Version], [dbo].[LimiterDefaults].[MarketID], [dbo].[LimiterDefaults].[ForceCommon], [dbo].[LimiterDefaults].[ControlDefault], [dbo].[LimiterDefaults].[BitFlag1],[dbo].[LimiterDefaults].[BitFlag2],[dbo].[LimiterDefaults].[BitFlag3],[dbo].[LimiterDefaults].[BitFlag4],[dbo].[LimiterDefaults].[BitFlag5],[dbo].[LimiterDefaults].[BitFlag6]) SELECT [dbo].[LimiterDefaults].[LimiterNo], @InterfaceIDTo, @VersionTo, [dbo].[LimiterDefaults].[MarketID], [dbo].[LimiterDefaults].[ForceCommon], [dbo].[LimiterDefaults].[ControlDefault], [dbo].[LimiterDefaults].[BitFlag1],[dbo].[LimiterDefaults].[BitFlag2],[dbo].[LimiterDefaults].[BitFlag3],[dbo].[LimiterDefaults].[BitFlag4],[dbo].[LimiterDefaults].[BitFlag5],[dbo].[LimiterDefaults].[BitFlag6] FROM [dbo].[LimiterDefaults] WHERE [dbo].[LimiterDefaults].[InterfaceID] = @InterfaceIDFrom AND [dbo].[LimiterDefaults].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Parameters', @SourceIntf, @TargetIntf COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[util_CorrectShortDbDescription](@From varchar(50), @To varchar(50)) AS BEGIN IF @From is null OR @From='' RETURN IF @To is null RETURN DECLARE @DbVerNo int DECLARE @PValue1 varchar(8000) DECLARE @PValue2 varchar(8000) DECLARE @PValue3 varchar(8000) DECLARE @ParamNo int SELECT @ParamNo=dbo.EAIF_GetDbParamNumber_70('shortDescription') declare crs cursor local static for select [dbo].[DbParamXmlValues].[DbVerNo] from dbo.DbParamXmlValues where [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ParamValue] like '%'+@From+'%' for read only open crs fetch crs into @DbVerNo while @@fetch_status >= 0 begin Print 'Processing DbVerNo='+CONVERT(varchar(10),@DbVerNo) SELECT @PValue1=Substring([dbo].[DbParamXmlValues].[ParamValue],1,8000) from dbo.DbParamXmlValues where [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo SELECT @PValue2=Substring([dbo].[DbParamXmlValues].[ParamValue],8001,8000) from dbo.DbParamXmlValues where [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo SELECT @PValue3=Substring([dbo].[DbParamXmlValues].[ParamValue],16001,8000) from dbo.DbParamXmlValues where [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo IF @PValue1 is not null BEGIN SET @PValue1 =REPLACE(@PValue1, @From,@To) UPDATE dbo.DbParamXmlValues SET [dbo].[DbParamXmlValues].[ParamValue] = @PValue1 WHERE [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo IF @@ERROR <> 0 BEGIN CLOSE crs DEALLOCATE crs RETURN END IF @PValue2 is not null BEGIN SET @PValue2 =REPLACE(@PValue2, @From,@To) UPDATE dbo.DbParamXmlValues SET [dbo].[DbParamXmlValues].[ParamValue] = @PValue2 WHERE [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo IF @@ERROR <> 0 BEGIN CLOSE crs DEALLOCATE crs RETURN END END IF @PValue3 IS NOT NULL BEGIN SET @PValue3 =REPLACE(@PValue3, @From,@To) UPDATE dbo.DbParamXmlValues SET [dbo].[DbParamXmlValues].[ParamValue] = @PValue3 WHERE [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo IF @@ERROR <> 0 BEGIN CLOSE crs DEALLOCATE crs RETURN END END end FETCH NEXT FROM crs into @DbVerNo end close crs deallocate crs END
CREATE PROCEDURE [dbo].[EAIP_CopyGroupCaptions_80] (@GroupNo int, @CaptionLangList nvarchar(max)) AS BEGIN /**This procedure is used by EACopy **/ DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(8000) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim char(3) SET @LangDelim ='|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=Convert(varchar(8000),SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList))) DELETE FROM [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[GroupCaption]([dbo].[GroupCaption].[GroupNo],[dbo].[GroupCaption].[LangCode],[dbo].[GroupCaption].[Caption]) SELECT @GroupNo, cg.Value, ISNULL(cg.Item,'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cg END
CREATE PROCEDURE [dbo].[EAUI_GetMultiDbSTSListBrowseByCaption_90] @Caption nvarchar(255) AS SELECT mdbsl.MultiDBSTSID, [mdbsc].[Caption], [mdbsl].[Description], [mdbsl].[SortOption] From [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where [mdbsc].[LangCode]='en' and [mdbsc].[Caption] like @Caption + '%' Order by mdbsl.MultiDBSTSID
--sql content merged from file: \StoredProcedures\EATL_UpdateMultiDbLimiterExternalSource_92.sql CREATE Procedure [dbo].[EATL_UpdateMultiDbLimiterExternalSource_92] @UserID nvarchar(20), @UserIP varchar(50), @LimiterID varchar(10), @Caption nvarchar(100), ---Correction: Changed from 255 to 100 @LangCode varchar(10) as Begin Declare @LimiterNo int DECLARE @LogFlag varchar(100) If Not exists (select 1 from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID) Return BEGIN TRANSACTION Select @LimiterNo=[dbo].[MDbLimitersExternalSource].[LimiterNo] from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID If exists (select 1 from [dbo].[MDbLimitersExternalSourceCaption] where [dbo].[MDbLimitersExternalSourceCaption].[LimiterNo]=@LimiterNo and [dbo].[MDbLimitersExternalSourceCaption].[LangCode]=@LangCode) Begin Update [dbo].[MDbLimitersExternalSourceCaption] set [dbo].[MDbLimitersExternalSourceCaption].[Caption]=@Caption where [dbo].[MDbLimitersExternalSourceCaption].[LimiterNo]=@LimiterNo and [dbo].[MDbLimitersExternalSourceCaption].[LangCode]=@LangCode SET @LogFlag ='Translate(Update) MultiDbLimiterExternalSource Caption' End Else Begin Insert [dbo].[MDbLimitersExternalSourceCaption] ([dbo].[MDbLimitersExternalSourceCaption].[LimiterNo], [dbo].[MDbLimitersExternalSourceCaption].[LangCode], [dbo].[MDbLimitersExternalSourceCaption].[Caption]) values (@limiterNo, @LangCode, @Caption) SET @LogFlag ='Translate(Insert) MultiDbLimiterExternalSource Caption' End IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'MultiDbLimiterExternalSource',@LogFlag, @LimiterID,'Lang:', @LangCode, 'Caption:', @Caption COMMIT TRANSACTION End
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceDbTags_82](@InterfaceID varchar(10),@Version varchar(10))AS BEGIN SELECT ISNULL(itc.SeqNo,gt.SeqNo) AS SeqNo, gt.Tag, ISNULL(itc.Caption, gt.Description) As Description FROM [dbo].[GlobalSearchTags] gt LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] itc ON gt.Tag=itc.Tag AND itc.InterfaceID=@InterfaceID AND itc.Version=@Version WHERE gt.AutoAdd=1 UNION ALL SELECT ISNULL(itc.SeqNo,gt.SeqNo) AS SeqNo, gt.Tag, ISNULL(itc.Caption, gt.Description) As Description FROM [dbo].[GlobalSearchTags] gt INNER JOIN [dbo].[InterfaceSearchTags] it ON gt.Tag=it.Tag LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] itc ON it.InterfaceID=itc.InterfaceID AND it.Version=itc.Version AND it.Tag=itc.Tag WHERE gt.AutoAdd=0 AND it.InterfaceID=@InterfaceID AND it.Version=@Version ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[AUTH_GetCustomerEhostConnectDetails_80](@CustID varchar(10)) AS BEGIN DECLARE @Proxy nvarchar(max) DECLARE @xmlDocHandle int DECLARE @urlMask varchar(255) DECLARE @ip varchar(30) DECLARE @encode varchar(5) SELECT @Proxy=[p].[ParamValue] FROM [dbo].[Customer] AS c LEFT OUTER JOIN [dbo].[CustomParamEhostConnect] AS ec ON c.CustID = ec.CustID INNER JOIN [dbo].[CustomParamXmlValues] AS p ON c.CustNo = p.TargetNo INNER JOIN [dbo].[CustomParamList] AS l ON l.ParamNo = p.ParamNo WHERE c.CustID=@CustID AND l.ParamLevel='C' AND l.ParamName = 'customerProxy' AND [p].[ItemName]=ISNULL(ec.ProxyID,'') EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @Proxy SELECT @urlMask=urlMask, @ip=ip,@encode=encode FROM OPENXML (@xmlDocHandle, '/customerProxy',0) WITH (urlMask varchar(255) , ip varchar(255), encode varchar(5)) EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle SELECT ISNULL([dbo].[CustomParamEhostConnect].[EHConnection],0) as EHConnection, ISNULL([dbo].[CustomParamEhostConnect].[AuthType], 'uid') as AuthType, ISNULL([dbo].[CustomParamEhostConnect].[DirectURL],'') as DirectURL , [dbo].[CustomParamEhostConnect].[UseProxy], ISNULL(@urlMask,'') AS ProxyUrl, ISNULL(@ip,'') AS ProxyIp, ISNULL(@encode,'n')AS ProxyEncode FROM [dbo].[CustomParamEhostConnect] WHERE [dbo].[CustomParamEhostConnect].[CustID] = @CustID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDbSearchTags_82](@InterfaceID varchar(10),@Version varchar(10)) AS BEGIN SELECT ISNULL(itc.SeqNo,gt.SeqNo) AS SeqNo, gt.Tag, ISNULL(itc.Caption, gt.Description) As Description, 1 AS AutoAdd FROM [dbo].[GlobalSearchTags] gt LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] itc ON gt.Tag=itc.Tag AND itc.InterfaceID=@InterfaceID AND itc.Version=@Version WHERE gt.AutoAdd=1 UNION ALL SELECT ISNULL(itc.SeqNo,gt.SeqNo) AS SeqNo, gt.Tag, ISNULL(itc.Caption, gt.Description) As Description, 0 AS AutoAdd FROM [dbo].[GlobalSearchTags] gt INNER JOIN [dbo].[InterfaceSearchTags] it ON gt.Tag=it.Tag LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] itc ON it.InterfaceID=itc.InterfaceID AND it.Version=itc.Version AND it.Tag=itc.Tag WHERE gt.AutoAdd=0 AND it.InterfaceID=@InterfaceID AND it.Version=@Version ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAIPO_GetLimiterValueText_70](@xmlText varchar(8000), @LimiterType int, @DefPosn int OUTPUT, @ValueText varchar(8000) OUTPUT) AS BEGIN SET NOCOUNT ON DECLARE @xmlDocHandle int --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText /* List Box, List Button */ IF @LimiterType=4 OR @LimiterType=5 BEGIN /**/ /* */ DECLARE @SameVals int SELECT @SameVals=1 FROM OPENXML (@xmlDocHandle, '/lbItems/lbItem',2) WITH (defPosn int '../@defPosn', value varchar(8000) '@value', lbItem varchar(8000) 'text()') WHERE value<>lbItem SET @ValueText=NULL IF @SameVals IS NULL BEGIN SELECT @DefPosn=defPosn, @ValueText=ISNULL(@ValueText+char(10)+value, value) FROM OPENXML (@xmlDocHandle, '/lbItems/lbItem',2) WITH (defPosn int '../@defPosn', value varchar(8000) '@value') END ELSE BEGIN SELECT @DefPosn=defPosn, @ValueText=ISNULL(@ValueText+char(10)+value+'_'+lbItem, value) FROM OPENXML (@xmlDocHandle, '/lbItems/lbItem',2) WITH (defPosn int '../@defPosn', value varchar(8000) '@value', lbItem varchar(8000) 'text()') END END /* List Scan */ IF @LimiterType=15 BEGIN /*Caption goes here */ /**/ SET @ValueText='' SET @DefPosn=0 SELECT @ValueText=limdb+','+scantag FROM OPENXML (@xmlDocHandle, '/lbscan',1) WITH (limdb varchar(10) '@limdb', scantag varchar(25) '@scantag') END /* Range Edit */ IF @LimiterType=16 BEGIN SET @DefPosn=0 /* */ SELECT @ValueText=below+','+above FROM OPENXML (@xmlDocHandle, '/range',2) WITH (below varchar(10) '@below', above varchar(10) '@above') END EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END
CREATE PROCEDURE [dbo].[EPC_GetMasterDbList_70](@ShortDbName varchar(10), @Label varchar(20)) AS BEGIN SELECT a.DbVerNo, CASE WHEN b.Category='A' THEN 1 ELSE 0 END as 'AuthorityFlag' FROM [dbo].[DbList] a INNER JOIN [dbo].[DbTypeList] b ON a.DbType = b.DbType WHERE a.DbName=@ShortDbName AND a.DbLabel=@Label END
CREATE PROCEDURE [dbo].[EAUI_GetDbClusterUse_102](@ClusterId varchar(20), @Label varchar(10)) AS BEGIN IF (@Label NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @Label = 'custom' DECLARE @AutoAdd Bit, @Caption nVarchar(255), @ClustNo Int, @interfaceVersionList VARCHAR(MAX) SELECT @Caption = [dbo].[GlobalClusterCaption].[Caption] FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID] = @ClusterId AND [dbo].[GlobalClusterCaption].[LangCode] = 'en' SELECT @AutoAdd = [dbo].[ClusterList].[AutoAdd2Db], @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClusterId AND [dbo].[ClusterList].[DbLabel] = @Label SELECT @interfaceVersionList = dbo.EAIF_GetClusterInterfaceAssignment_102(@ClusterId) IF @@RowCount > 0 BEGIN IF(@AutoAdd = 1) IF(@Label = 'custom') SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption, @interfaceVersionList Interfaces FROM [dbo].[DbList] dl LEFT JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND dl.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND dc.Enable Is Null OR dc.Enable = 1 ORDER BY dl.DbName ELSE SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption, @interfaceVersionList Interfaces FROM [dbo].[DbList] dl LEFT JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND dl.DbLabel = @Label AND dc.Enable Is Null OR dc.Enable = 1 ORDER BY dl.DbName ELSE IF(@Label = 'custom') SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption, @interfaceVersionList Interfaces FROM [dbo].[DbList] dl INNER JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND [dl].[DbLabel] NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND dc.Enable = 1 UNION ALL SELECT ssdb.DbName, ssdb.DisplayName, ssdb.DbLabel, @ClusterId ClusterId, @Caption Caption, @interfaceVersionList Interfaces FROM [dbo].[DbList] ssdb INNER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = ssdb.DbVerNo INNER JOIN [dbo].[DbList] dl ON dl.DbVerNo = ss.PhysDbVerNo INNER JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND dl.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND dc.Enable = 1 ORDER BY dl.DbName ELSE SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption, @interfaceVersionList Interfaces FROM [dbo].[DbList] dl INNER JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND [dl].[DbLabel] = @Label AND dc.Enable = 1 UNION ALL SELECT ssdb.DbName, ssdb.DisplayName, ssdb.DbLabel, @ClusterId ClusterId, @Caption Caption, @interfaceVersionList Interfaces FROM [dbo].[DbList] ssdb INNER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = ssdb.DbVerNo INNER JOIN [dbo].[DbList] dl ON dl.DbVerNo = ss.PhysDbVerNo INNER JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND dl.DbLabel = @Label AND dc.Enable = 1 ORDER BY dl.DbName END END
CREATE PROCEDURE [dbo].[EAUI_GetHideAuthMethods_70](@CustID varchar(10)) AS BEGIN EXEC [dbo].[EAUI_GetStringValueMap] 'HideAuth' END
-- Created 2012.01.06 by jjalbert for "Search Tag Fallback Support" project -- Modified 2012.01.18 by jjalbert to take DbName and SearchTag as input instead of -- DbVerNo and SearchTagNo because the latter are identity fields which may change -- from server to server. CREATE PROCEDURE [dbo].[EAIP_ModifyConnectorSearchTag_102] ( @UserID NVARCHAR(20), @UserIP varchar(15), @DbName VARCHAR(20), @SearchTag VARCHAR(20), @NewBehavior VARCHAR(2) ) AS BEGIN -- by what DbVerno is DbName known locally? DECLARE @DbVerNo INT SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE @DbName = [dbo].[DbList].[DbName] DECLARE @BaseBehavior VARCHAR(2) DECLARE @CurrentBehavior VARCHAR(2) = '**' -- Magic value not ever found DECLARE @SearchTagNo INT -- SearchTagNo is an identity column. We divine the correct values using SearchTag. SELECT @BaseBehavior=[dbo].[SearchTagFallbackDefaults].[FallBackBehavior],@SearchTagNo=[dbo].[SearchTagFallbackDefaults].[SearchTagNo] FROM [dbo].[SearchTagFallbackDefaults] WHERE [dbo].[SearchTagFallbackDefaults].[SearchTag] = @SearchTag SELECT @CurrentBehavior=ISNULL([dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior],'**') FROM [dbo].[ConnectorSearchTagsFallBack] WHERE [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] =@DbVerNo DECLARE @LogString VARCHAR(255) = '' SET @LogString = 'Fallback Behavior for '+@SearchTag+' is set to: '+@NewBehavior -- default log message IF (@NewBehavior = @BaseBehavior) BEGIN DELETE FROM [dbo].[ConnectorSearchTagsFallBack] WHERE [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] =@DbVerNo SET @LogString = 'Fallback Behavior for '+@SearchTag+' reverts to Default: '+@NewBehavior END ELSE IF (@NewBehavior = @CurrentBehavior) BEGIN Set @LogString = ''; -- value is semaphore, nothing done, no logging END ELSE IF (@CurrentBehavior = '**') BEGIN INSERT INTO [dbo].[ConnectorSearchTagsFallBack] ([dbo].[ConnectorSearchTagsFallBack].[SearchTagNo], [dbo].[ConnectorSearchTagsFallBack].[DbVerNo], [dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior]) VALUES (@SearchTagNo, @DbVerNo, @NewBehavior); END ELSE BEGIN UPDATE [dbo].[ConnectorSearchTagsFallBack] SET [dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior] = @NewBehavior WHERE [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] = @DbVerNo AND [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo END IF (@LogString <> '') BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, 'live','update','Connector Fallback Changes:',@logString END END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiterWithTemplate_76] ( @UserId nvarchar(20), @UserIp varchar(15), @LimiterNo int, @DbVerNo int, @SearchString varchar(255), @DefValue varchar(255), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10), @Template varchar(max) ) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAUI_UpdateDbLimiter_76] @UserId, @UserIp, @LimiterNo,@DbVerNo,@SearchString,@DefValue,@Caption,@MouseOverText,@LangCode IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo) UPDATE [dbo].[DbLimiterDetail] SET [dbo].[DbLimiterDetail].[ControlTemplate] = @Template WHERE [dbo].[DbLimiterDetail].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo ELSE INSERT INTO [dbo].[DbLimiterDetail] ([dbo].[DbLimiterDetail].[DbVerNo], [dbo].[DbLimiterDetail].[LimiterNo], [dbo].[DbLimiterDetail].[ControlTemplate]) VALUES (@DbVerNo, @LimiterNo, @Template) COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetLocalLimiterCaption_235](@ProfNo int, @IntfScreenNo int, @ColNo int, @LangCode varchar(10)) RETURNS NVARCHAR(255) AS BEGIN DECLARE @Caption nvarchar(255) = NULL SELECT @Caption = a.Caption FROM [dbo].[ProfLocalLimiterCaption2] a WHERE a.ProfNo=@ProfNo AND a.ColNo = @ColNo AND a.IntfScreenNo=@IntfScreenNo AND a.LangCode = @LangCode IF @Caption IS NULL OR @Caption = '' BEGIN SELECT @Caption = [ColName] FROM [dbo].[Collection] WHERE [ColNo] = @ColNo AND [IsDeleted] = 0 END RETURN @Caption END
CREATE PROCEDURE [dbo].[EAUI_GetColNameByColNo_70](@ColNo int) AS BEGIN SELECT dbo.EAIF_GetColName_70(@ColNo, '', '') AS 'ColName' END
CREATE PROCEDURE [dbo].[EAIP_AddInterfaceParameters_161]( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ParamNameList varchar(2000)) AS BEGIN DECLARE @ParamList varchar(2000) ='' IF @ParamNameList<>'' SELECT @ParamList = COALESCE(@ParamList+'+','') + CONVERT(varchar, c.ParamNo) FROM [dbo].[Split](',', @ParamNameList) s JOIN dbo.CustomParamList c ON s.[Value]=c.ParamName ORDER BY s.RowID SET @ParamList= SUBSTRING(@ParamList,2, LEN(@ParamList) ) EXEC [dbo].[EAUI_AddInterfaceParameters_70] @UserID, @UserIP, @InterfaceID, @Version, @ParamList END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamXmlFieldsByParamName_162] @ParamName VARCHAR(100) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName) BEGIN RAISERROR('The Parameter Name: %s, does not exist.', 16,-1, @ParamName) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamList] cpl join [dbo].[CustomParamXmlFields] cpf on cpl.ParamNo=cpf.ParamNo where [cpl].[ParamName]=@ParamName and [cpl].[ParamType] ='T') BEGIN RAISERROR('The Parameter: %s is not attached any table parameter default fields', 16,-1, @ParamName) RETURN END SELECT [cpxf].[FieldName],[cpxf].[FieldDisplayName],[cpxf].[MaxLength],[cpxf].[ControlType],[cpxf].[FieldType],[cpxf].[ValueTemplate] FROM [dbo].[CustomParamXmlFields] cpxf JOIN [dbo].[CustomParamList] cpl ON cpxf.ParamNo=cpl.ParamNo WHERE cpl.ParamName=@ParamName AND [cpxf].[ControlType] IN('TEXTBOX','RADIOBUTTON','CHECKBOX','DROPDOWNLIST') Order by [cpxf].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_GetTopicList_77] (@StartCaption nvarchar(255))AS BEGIN SELECT tl.TopicNo , tl.TopicID , tl.SearchString, tc.Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE tl.ParentTopicNo is null AND tc.LangCode = 'en' AND tc.Caption>=@StartCaption ORDER BY tc.Caption END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbFieldGroup_DbFieldGroupCaption(@DbVerNo int, @FieldGroupNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS FieldGroupNo, [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption], [dbo].[FieldGroupList].[FieldGroupId] AS FieldGroupId FROM [dbo].[DbFieldGroupCaption] LEFT JOIN [dbo].[FieldGroupList] ON [dbo].[FieldGroupList].[FieldGroupNo] = [dbo].[DbFieldGroupCaption].[FieldGroupNo] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo] = @FieldGroupNo ORDER BY DbVerNo, FieldGroupNo, [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CopyInterfaceVersionParameters_76] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceVersionParameters_76] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo , @VersionTo DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface Parameters', @SourceIntf, @TargetIntf END
CREATE PROCEDURE [dbo].[UTIL_CreateProcedure] @Name VARCHAR(100) AS IF EXISTS (SELECT * FROM dbo.sysobjects WHERE [dbo].[sysobjects].[id] = object_id(@Name) and OBJECTPROPERTY([dbo].[sysobjects].[id], N'IsProcedure') = 1) BEGIN EXEC ('DROP PROCEDURE ' + @Name) END EXEC ('CREATE PROCEDURE ' + @Name + ' AS') EXEC ('GRANT EXECUTE ON object :: ' + @Name + ' TO eadmin')
CREATE PROCEDURE [dbo].[EAIP_CopyGroupMouseOverTexts_80] (@GroupNo int, @MouseOverTextLangList nvarchar(max)) AS BEGIN /**This procedure is used by EACopy **/ IF LEN(@MouseOverTextLangList)=0 RETURN DECLARE @MouseOverTextList nvarchar(max) DECLARE @CLangList varchar(8000) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim char(3) SET @LangDelim ='|||' SET @MouseOverTextList =SUBSTRING(@MouseOverTextLangList, 1, CHARINDEX(@LangDelim,@MouseOverTextLangList)-1) SET @CLangList=Convert(varchar(8000),SUBSTRING(@MouseOverTextLangList, CHARINDEX(@LangDelim,@MouseOverTextLangList)+3, LEN(@MouseOverTextLangList))) UPDATE [dbo].[GroupCaption] SET [MouseOverText]=ISNULL(cg.Item,'') FROM [dbo].[GroupCaption] AS c INNER JOIN dbo.EAIF_GetItemValueTable_70( @MouseOverTextList,@CLangList,@ValDelim ) AS cg ON c.LangCode=cg.Value WHERE c.GroupNo=@GroupNo END
CREATE PROCEDURE [dbo].[EAUI_GetMultiDbSTSListBrowseByID_90] @MultiDbSTSID varchar(10) AS SELECT mdbsl.MultiDBSTSID, [mdbsc].[Caption], [mdbsl].[Description], [mdbsl].[SortOption] From [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where [mdbsc].[LangCode]='en' and mdbsl.MultiDBSTSID like @MultiDbSTSID + '%' Order by mdbsl.MultiDBSTSID
CREATE PROCEDURE EATL_UpdateMultiDbLimiterExternalSource_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,LimiterID VARCHAR(10) ,Caption NVARCHAR(100) ) INSERT INTO #Objects ( LimiterID ,Caption ) SELECT m.c.value('(./LimiterId)[1]', 'varchar(10)') ,m.c.value('(./Caption)[1]', 'nvarchar(100)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@LimiterID VARCHAR(10) ,@Caption NVARCHAR(100) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @LimiterID = LimiterID ,@Caption = Caption FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateMultiDbLimiterExternalSource_92] @UserID ,@UserIP ,@LimiterID ,@Caption ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceDocTypes_77](@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT dtl.DocTypeID, dtl.Category, ISNULL(pdtl.DocTypeID, '') AS ParentID, ISNULL(idt.SearchImage, dtl.SearchImage) AS SearchImage, ISNULL(idt.ResultImage, dtl.ResultImage) AS ResultImage, idt.DefValue AS Selected, ISNULL(idt.SortOption, dtl.SortOption) AS SortOption, dbo.EAIF_GetDbDocTypeMouseOverTexts_77(idt.IntfDocTypeNo) AS MouseOverText, dbo.EAIF_DbDocTypeCaptions_77(idt.IntfDocTypeNo) AS Caption FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo = idt.DocTypeNo WHERE idt.InterfaceID = @InterfaceID AND idt.Version = @Version ORDER BY idt.SeqNo END
--sql content merged from file: \StoredProcedures\AUTH_GetCustomerProductConfigurationForPrompt_912.sql CREATE PROCEDURE [dbo].[AUTH_GetCustomerProductConfigurationForPrompt_912](@CustID varchar(10), @Product varchar(10)) AS BEGIN SELECT c.CustID , d.Product , ISNULL(pc.ProductAllowed, d.ProductAllowed) AS ProductAllowed , ISNULL(pc.ProductForChildrenAllowed,0) AS ProductForChildrenAllowed , ISNULL(pc.AuthType, d.AuthType) AS AuthType , pc.DirectURL , ISNULL(pc.DisplayName, c.CustName)AS DisplayName , pc.LoginText , pc.LibraryLogoUrl , CONVERT(varchar, pc.TimeStamp, 120) AS [TimeStamp] , ISNULL(pc.ProxyID, '') as ProxyID FROM [dbo].[Customer] c WITH (NOLOCK) JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE c.Status = 'a' AND c.CustType <> 'I' AND c.CustID = @CustID AND d.Product = @Product END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDocTypeDetails_77](@IntfDocTypeNo int, @LangCode varchar(10)) AS BEGIN SELECT il.InterfaceName+'('+idt.InterfaceID+'-'+idt.Version+')' AS Interface, dtl.DocTypeID, sm.Description AS Category, dtl.SearchString, pdtl.DocTypeID AS ParentDocTypeID, ISNULL(idt.SortOption, dtl.SortOption) AS SortOption, ISNULL(idt.SearchImage, dtl.SearchImage) AS SearchImage, ISNULL(idt.ResultImage, dtl.ResultImage) AS ResultImage, idt.DefValue, IsNULL(Convert(nvarchar(255),idtc.Caption), Convert(nvarchar(255),dtc.Caption)) AS Caption, ISNULL(Convert(nvarchar(255),idtc.MouseOverText), Convert(nvarchar(255),dtc.MouseOverText)) AS MouseOverText FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo AND dtc.LangCode=@LangCode LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo = idt.DocTypeNo LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idt.IntfDocTypeNo=idtc.IntfDocTypeNo AND idtc.LangCode = @LangCode INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode INNER JOIN [dbo].[InterfaceLanguage] il ON idt.InterfaceID=il.InterfaceID AND idt.Version=il.Version WHERE idt.IntfDocTypeNo=@IntfDocTypeNo AND sm.FieldName='DocTypeCategory' AND il.LangCode='en' END
CREATE PROCEDURE [dbo].[EAIPO_IdentifyHoldingsImportCollection_100] ( @CustID VARCHAR(10), @ColID VARCHAR(50), @ColNo INT OUTPUT, @YesMsgNo INT OUTPUT, @NoMsgNo INT OUTPUT ) AS SET NOCOUNT ON DECLARE @OldForceRecreate BIT EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID,'',@YesMsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID,'',@NoMsgNo OUTPUT SELECT @ColNo=[dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 IF @@rowcount=0 SET @ColNo=NULL RETURN
CREATE PROCEDURE [dbo].[EPC_NotifyChanges_70](@DbName varchar(10),@DbLabel varchar(10)) AS BEGIN -- We have to notify EPLR - Locals Recreate Servers to fetch new segment information INSERT INTO EASUPPORT.dbo.NotifyRequest([EASUPPORT].[dbo].[NotifyRequest].[UserID], [EASUPPORT].[dbo].[NotifyRequest].[ReqTime], [EASUPPORT].[dbo].[NotifyRequest].[ReqType], [EASUPPORT].[dbo].[NotifyRequest].[Request], [EASUPPORT].[dbo].[NotifyRequest].[Param1], [EASUPPORT].[dbo].[NotifyRequest].[Param2], [EASUPPORT].[dbo].[NotifyRequest].[Param3], [EASUPPORT].[dbo].[NotifyRequest].[Email], [EASUPPORT].[dbo].[NotifyRequest].[LastProcTime], [EASUPPORT].[dbo].[NotifyRequest].[LastProcStatus], [EASUPPORT].[dbo].[NotifyRequest].[LastProcError], [EASUPPORT].[dbo].[NotifyRequest].[ProcRetryCount]) SELECT 'system', GETDATE(), 'N', c.ServerURI+'/item=RecreateDbSegment&DbName={param1}&SegName={param2}&Label={param3}', a.DbName, b.SegName, a.DbLabel, null, null, 'N', null, 0 FROM [dbo].[ConfigAppNotifyItem] AS d INNER JOIN [dbo].[ConfigServer] AS c ON d.ApplicationNo = c.ApplicationNo INNER JOIN [dbo].[ConfigApplication] AS e ON d.ApplicationNo = e.ApplicationNo CROSS JOIN [dbo].[DbList] AS a INNER JOIN [dbo].[DbSegment] AS b ON a.DbVerNo = b.DbVerNo WHERE a.DbName=@DbName AND a.DbLabel=@DbLabel AND c.ServerStatus='A' AND d.Item='RecreateDbSegment' AND e.NotifyProtocol='tcp' AND c.ServerURI like 'tcp://%' AND @DbLabel <> 'live' --EPLR no live label starting SFB (Tupelo release) --Hardcoded UserID and IP address - these are just for information purpose only and there is no real use EXEC [dbo].[EAIP_LogDatabaseActivity_70] 'prod_dda','10.1.32.191',@DbName,@DbLabel,'Notify Changes', '', '', 'DDSUpdate' END
CREATE PROCEDURE [dbo].[EAUI_GetDbClusterUse_89](@ClusterId varchar(20), @Label varchar(10)) AS BEGIN DECLARE @AutoAdd Bit, @Caption nVarchar(255), @ClustNo Int SELECT @Caption = [dbo].[GlobalClusterCaption].[Caption] FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID] = @ClusterId AND [dbo].[GlobalClusterCaption].[LangCode] = 'en' SELECT @AutoAdd = [dbo].[ClusterList].[AutoAdd2Db], @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClusterId AND [dbo].[ClusterList].[DbLabel] = @Label IF @@RowCount > 0 BEGIN IF(@AutoAdd = 1) IF(@Label = 'custom') SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption FROM [dbo].[DbList] dl LEFT JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND dl.DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND dc.Enable Is Null OR dc.Enable = 1 ORDER BY dl.DbName ELSE SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption FROM [dbo].[DbList] dl LEFT JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND dl.DbLabel = @Label AND dc.Enable Is Null OR dc.Enable = 1 ORDER BY dl.DbName ELSE IF(@Label = 'custom') SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption FROM [dbo].[DbList] dl INNER JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND [dl].[DbLabel] NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') AND dc.Enable = 1 ORDER BY dl.DbName ELSE SELECT dl.DbName, dl.DisplayName, dl.DbLabel, @ClusterId ClusterId, @Caption Caption FROM [dbo].[DbList] dl INNER JOIN [dbo].[DbCluster] dc ON dl.DbVerNo = dc.DbVerNo AND dc.ClustNo = @ClustNo WHERE dl.DbType=1 AND [dl].[DbLabel] = @Label AND dc.Enable = 1 ORDER BY dl.DbName END END
CREATE PROCEDURE [dbo].[EAUI_GetNextDbSubjectID_70] AS BEGIN DECLARE @NewSubjectNo varchar(255) EXEC [dbo].[EAIPO_GetNextDbSbjectID_70] @NewSubjectNo OUTPUT SELECT @NewSubjectNo AS NewSubjectId END
CREATE PROCEDURE [dbo].[EAIP_ModifyContentFilterList_181](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterListId varchar(25), @ContentFilterListName nvarchar(255), @ContentFilterType Char(1)) AS BEGIN BEGIN TRY DECLARE @Id varchar (25) Declare @lastUpdateDate datetime SET @Id=LTRIM(RTRIM(@ContentFilterListId)) SET @lastUpdateDate=GETDATE() UPDATE [dbo].[ContentFilterList] SET [dbo].[ContentFilterList].[ContentFilterListDesc]=LTRIM(RTRIM(@ContentFilterListName)), [dbo].[ContentFilterList].[ContentFilterType]=@ContentFilterType, [dbo].[ContentFilterList].[LastUpdatedDate]=@lastUpdateDate WHERE [dbo].[ContentFilterList].[ContentFilterListID]=@Id EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Content Filter List','Modify List', @ContentFilterListId, @ContentFilterListName, @ContentFilterType END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiterWithTemplate_77] ( @UserId nvarchar(20), @UserIp varchar(15), @LimiterNo int, @DbVerNo int, @SearchString varchar(4000), @DefValue varchar(255), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10), @IncludeAutoAdd bit, @Template nvarchar(max) ) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAUI_UpdateDbLimiter_77] @UserId, @UserIp, @LimiterNo,@DbVerNo,@SearchString,@DefValue,@Caption,@MouseOverText,@LangCode, @IncludeAutoAdd IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo) BEGIN exec [dbo].[EAIP_CompareDbLimTemplates_86] @DbVerNo, @LimiterNo, @Template if @@ROWCOUNT=0 UPDATE [dbo].[ProfDbLimiter2] SET [dbo].[ProfDbLimiter2].[DefValue] = null WHERE [dbo].[ProfDbLimiter2].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiter2].[LimiterNo]=@LimiterNo UPDATE [dbo].[DbLimiterDetail] SET [dbo].[DbLimiterDetail].[ControlTemplate] = @Template WHERE [dbo].[DbLimiterDetail].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo END ELSE INSERT INTO [dbo].[DbLimiterDetail] ([dbo].[DbLimiterDetail].[DbVerNo], [dbo].[DbLimiterDetail].[LimiterNo], [dbo].[DbLimiterDetail].[ControlTemplate]) VALUES (@DbVerNo, @LimiterNo, @Template) COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetLocalLimiterCaption_70](@ProfNo int, @ColNo int, @LangCode varchar(10)) RETURNS NVARCHAR(100) AS BEGIN DECLARE @Caption nvarchar(100) SELECT @Caption=[dbo].[ProfLocalLimiterCaption].[Caption] FROM [dbo].[ProfLocalLimiterCaption] WHERE [dbo].[ProfLocalLimiterCaption].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption].[LangCode] = @LangCode IF @Caption IS NULL OR @Caption=N'' SELECT @Caption=[dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 RETURN @Caption END
CREATE PROCEDURE [dbo].[EAUI_GetColNameByCustColId_70](@CustID varchar(10), @ColID varchar(50)) AS BEGIN SELECT dbo.EAIF_GetColName_70(0, @CustID, @ColID) AS 'ColName' END
CREATE PROCEDURE [dbo].[EAIP_AddInterfaceToolbarItem_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ItemName VARCHAR(50), @Category VARCHAR(255), @Align VARCHAR(10), @Image VARCHAR(255), @Caption NVARCHAR(255) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR ('Interface-Version %s-%s does not exist.', 16, 1, @InterfaceID, @Version) RETURN END EXEC [dbo].[EAUI_AddInterfaceToolbarItem_77] @UserID, @UserIP, @InterfaceID, @Version, @ItemName, @Category, @Align, @Image, @Caption END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamXmlFieldValues_154] ( @CustId VARCHAR(10), @GroupId VARCHAR(10), @ProfileId VARCHAR(10) ) AS BEGIN DECLARE @TargetNo INT, @ParamLevel CHAR(1), @ParamNo INT, @ItemName VARCHAR(255) = '', @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ParamName VARCHAR(100), @PLevelTargetNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustId AND [dbo].[Profile].[GroupID] = @GroupId AND [dbo].[Profile].[ProfID] = @ProfileId) BEGIN RAISERROR('The %s.%s.%s Profile does not exist.', 16, -1, @CustId, @GroupId, @ProfileId) RETURN END DECLARE @CustParamNo INT DECLARE @ProfParamNo INT SELECT @CustParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') DECLARE @TempParamData TABLE(ParamNo INT PRIMARY KEY, ParamName VARCHAR(100) NOT NULL, ParamValue NVARCHAR(MAX) NULL, ParamLevel CHAR(1) NULL, EditGroup VARCHAR(100) NULL, EditSubGroup VARCHAR(100) NULL, PromptText VARCHAR(255)) INSERT INTO @TempParamData (ParamNo, ParamName, ParamLevel, EditGroup, EditSubGroup, PromptText) SELECT CPL.ParamNo, CPL.ParamName, [CPL].[ParamLevel], [CPED].[EditGroup], [CPED].[EditSubGroup], [CPED].[PromptText] FROM [dbo].[CustomParamList] CPL INNER JOIN [dbo].[CustomParamEditDetail] CPED ON CPL.ParamNo = CPED.ParamNo WHERE CPL.ParamType IN('X','T') AND [CPL].[ParamLevel] = 'P' AND EXISTS(SELECT 1 FROM [dbo].[CustomParamXmlValues] CPXV WHERE [CPXV].[ParamNo] = CPED.ParamNo) AND [CPL].[ParamName] <> 'profCustomLinks' SET @PLevelTargetNo =(select [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustId AND [dbo].[Profile].[GroupID] = @GroupId AND [dbo].[Profile].[ProfID] = @ProfileId) select b.ParamValue into #tempparam89_2015 FROM ( SELECT a.CustID, a.CustNo FROM [dbo].[Customer] a WHERE [a].[CustID] = @CustId UNION SELECT a.CustID, a.CustNo FROM dbo.CustomerGroup AS g INNER JOIN dbo.Customer AS a ON g.ParentID = a.CustID WHERE g.ChildID = @CustId ) a JOIN [dbo].[CustomParamXmlValues] b ON a.CustNo=b.TargetNo AND b.ParamLevel='C' AND b.ParamNo=@CustParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@ProfParamNo AND c.TargetNo= @PLevelTargetNo INSERT INTO @TempParamData (ParamNo, ParamName, ParamValue,ParamLevel, EditGroup, EditSubGroup, PromptText) SELECT CPL.ParamNo, CPL.ParamName, (select cast (#tempparam89_2015.[ParamValue] as xml) from #tempparam89_2015 for xml path('') ) ParamValue,CPL.ParamLevel,CPED.EditGroup, CPED.EditSubGroup,CPED. PromptText FROM [dbo].[CustomParamList] CPL INNER JOIN [dbo].[CustomParamEditDetail] CPED ON CPL.ParamNo = CPED.ParamNo where CPL.ParamNo =@ProfParamNo SELECT @TargetNo = [dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustId AND [dbo].[Profile].[GroupID] = @GroupId AND [dbo].[Profile].[ProfID] = @ProfileId UPDATE TPD SET TPD.ParamValue = ISNULL(CPXV.ParamValue, CPXD.DefValue) FROM @TempParamData TPD LEFT OUTER JOIN [dbo].[CustomParamXmlValues] CPXV ON TPD.ParamNo = CPXV.ParamNo AND CPXV.ParamLevel = TPD.ParamLevel AND CPXV.TargetNo = @TargetNo AND CPXV.ItemName = @ItemName INNER JOIN [dbo].[CustomParamXmlDefaults] CPXD ON TPD.ParamNo = CPXD.ParamNo AND CPXD.InterfaceID = @InterfaceID AND CPXD.Version = @Version -- This is to UPDATE profZ3950Targets Param data since it stored in mutiple tables in CustomParamXmlValues table unlike other Xml Params DECLARE @AllColumnsIntoASingleRow VARCHAR(MAX) SELECT @AllColumnsIntoASingleRow = COALESCE(@AllColumnsIntoASingleRow, '') + [CPXV].[ParamValue] FROM [dbo].[CustomParamXmlValues] CPXV INNER JOIN [dbo].[CustomParamList] CPL ON CPXV.ParamNo = CPL.ParamNo WHERE [CPL].[ParamName] = 'profZ3950Targets' AND [CPXV].[TargetNo] = @TargetNo UPDATE @TempParamData SET ParamValue = @AllColumnsIntoASingleRow WHERE ParamName = 'profZ3950Targets' SELECT ParamNo,ParamName, CASE WHEN ParamName <> 'profZ3950Targets' THEN REPLACE(REPLACE(REPLACE(ParamValue,'',''),' ',''),'"','''') ELSE ParamValue END AS ParamValue, ParamLevel,EditGroup,EditSubGroup,PromptText FROM @TempParamData END
CREATE PROCEDURE [dbo].[EAUI_GetTopicListByID_77] (@StartID varchar(10))AS BEGIN SELECT tl.TopicNo , tl.TopicID , tl.SearchString, tc.Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE tl.ParentTopicNo is null AND tc.LangCode = 'en' AND tl.TopicID>=@StartID ORDER BY tl.TopicID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbFieldGroup_DbFieldGroupDefaults(@DbVerNo int, @FieldGroupNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS FieldGroupNo, [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue], [dbo].[FieldGroupList].[FieldGroupId] AS FieldGroupId FROM [dbo].[DbFieldGroupDefaults] LEFT JOIN [dbo].[FieldGroupList] ON [dbo].[FieldGroupList].[FieldGroupNo] = [dbo].[DbFieldGroupDefaults].[FieldGroupNo] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo] = @DbVerNo AND [dbo].[DbFieldGroupDefaults].[FieldGroupNo] = @FieldGroupNo ORDER BY DbVerNo, FieldGroupNo, [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue] FOR XML RAW('r') ) END
CREATE Procedure [dbo].[EAUI_CopyInterfaceXmlParams_89] (@UserID nvarchar(20), @UserIP varchar(15), @InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10)) AS BEGIN EXEC [dbo].[EAIP_CopyInterfaceXmlParams_89] @InterfaceIDFrom, @VersionFrom, @InterfaceIDTo, @VersionTo IF @@ERROR <> 0 RETURN DECLARE @SourceIntf varchar(255), @TargetIntf varchar(255) SET @SourceIntf = 'Source: ' + @InterfaceIDFrom + ' - ' + @VersionFrom SET @TargetIntf = 'Target: ' + @InterfaceIDTo + ' - ' + @VersionTo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Copy Interface DXML Params', @SourceIntf, @TargetIntf END
/* =============================================================================================================== Developer: Anne Wan Create date: 9/26/2008 Description: utility script to clean out all test customers, profiles & subscriptions created using dbo.UTIL_CreateTestExtCustsAndSubs_91 exec UTIL_DeleteAllTestExtCustsAndSubs_91 '0926_' =================================================================================================================*/ CREATE procedure [dbo].[UTIL_DeleteAllTestExtCustsAndSubs_91] ( @p_PrefixPattern varchar(5) ) as begin set nocount on if @p_PrefixPattern is not null or @p_PrefixPattern <> '' begin declare @ResultSet table(KeyCol varchar(20)) declare @RowCnt int print 'Result Report:' /*1. ProfDatabase*/ delete [dbo].[ProfDatabase] output deleted.ProfNo into @ResultSet from [dbo].[ProfDatabase] a INNER JOIN [dbo].[Profile] b on a.ProfNo = b.ProfNo INNER JOIN EASUPPORT.dbo.CustSubscription c on b.CustID = c.CustID where c.CustID like @p_PrefixPattern + '%' set @RowCnt = (select count(KeyCol) from @ResultSet) print '1. There are ' + cast(@RowCnt as varchar) + ' ProfNo(s) deleted from EAMASTER.dbo.ProfDatabase' /*2. Profile*/ delete from @ResultSet delete from [dbo].[Profile] output deleted.ProfNo into @ResultSet where [dbo].[Profile].[CustID] like @p_PrefixPattern + '%' set @RowCnt = (select count(KeyCol) from @ResultSet) print '2. There are ' + cast(@RowCnt as varchar) + ' Profile(s) deleted from EAMASTER.dbo.Profile' /*3. CustSubscription*/ delete from @ResultSet delete from EASUPPORT.dbo.CustSubscription output deleted.SubscriberID into @ResultSet where [EASUPPORT].[dbo].[CustSubscription].[CustID] like @p_PrefixPattern + '%' set @RowCnt = (select count(KeyCol) from @ResultSet) print '3. There are ' + cast(@RowCnt as varchar) + ' Subscription(s) deleted from EASUPPORT.dbo.CustSubscription' /*4. UserGroup*/ delete from @ResultSet delete from [dbo].[UserGroup] output deleted.CustID into @ResultSet where [dbo].[UserGroup].[CustID] like @p_PrefixPattern + '%' set @RowCnt = (select count(KeyCol) from @ResultSet) print '4. There are ' + cast(@RowCnt as varchar) + ' user group(s) deleted from EAMASTER.dbo.UserGroup' /*5. Customer*/ delete from @ResultSet delete from [dbo].[Customer] output deleted.CustID into @ResultSet where [dbo].[Customer].[CustID] like @p_PrefixPattern + '%' set @RowCnt = (select count(KeyCol) from @ResultSet) print '5. There are ' + cast(@RowCnt as varchar) + ' Customer(s) deleted from EAMASTER.dbo.Customer ' end set nocount off end
CREATE PROCEDURE [dbo].[EAIP_CopyGroups_80](@GroupID varchar(12),@GroupNotes nvarchar(255), @CaptionLangList nvarchar(max), @MouseOverTexts nvarchar(max))AS /** This Procedure is used by EACopy **/ BEGIN DECLARE @GroupNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID) BEGIN INSERT INTO [dbo].[GroupList] ([dbo].[GroupList].[GroupID],[dbo].[GroupList].[GroupNotes]) VALUES (@GroupID,@GroupNotes) IF @@ERROR <> 0 RETURN SELECT @GroupNo=[dbo].[GroupList].[GroupNo] FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID EXEC [dbo].[EAIP_CopyGroupCaptions_80] @GroupNo,@CaptionLangList EXEC [dbo].[EAIP_CopyGroupMouseOverTexts_80] @GroupNo,@MouseOverTexts END ELSE BEGIN SELECT @GroupNo=[dbo].[GroupList].[GroupNo] FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID UPDATE [dbo].[GroupList] SET [dbo].[GroupList].[GroupNotes]=@GroupNotes WHERE [dbo].[GroupList].[GroupNo]=@GroupNo AND [dbo].[GroupList].[GroupNotes]<>@GroupNotes IF @@ERROR <> 0 RETURN IF @CaptionLangList <> dbo.EAIF_GroupLangAndCaptions_80(@GroupNo) EXEC [dbo].[EAIP_CopyGroupCaptions_80] @GroupNo,@CaptionLangList IF @MouseOverTexts <> dbo.EAIF_GroupLangAndMouseOverTexts_80(@GroupNo) EXEC [dbo].[EAIP_CopyGroupMouseOverTexts_80] @GroupNo,@MouseOverTexts END END
/**********************************************************/ /** added SearchString **/ CREATE PROCEDURE [dbo].[EAUI_GetNewDbLimiterDetails_70](@DbVerNo int, @LimiterNo int) AS BEGIN SELECT [dbo].[EAIF_GetNewDbLimiterDetails_132].[LimiterNo], [dbo].[EAIF_GetNewDbLimiterDetails_132].[LimiterId], [dbo].[EAIF_GetNewDbLimiterDetails_132].[Description], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlName], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlTag], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlType], [dbo].[EAIF_GetNewDbLimiterDetails_132].[DefaultEditControl], [dbo].[EAIF_GetNewDbLimiterDetails_132].[DefaultValueTemplate], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlClass], [dbo].[EAIF_GetNewDbLimiterDetails_132].[SearchString], [dbo].[EAIF_GetNewDbLimiterDetails_132].[EnableQueryMask], [dbo].[EAIF_GetNewDbLimiterDetails_132].[QueryMaskId],[dbo].[EAIF_GetNewDbLimiterDetails_132].[IsListContentsGrouped], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ListItemUniqueId], [dbo].[EAIF_GetNewDbLimiterDetails_132].[HelpUrl] FROM dbo.EAIF_GetNewDbLimiterDetails_132 (@DbVerNo, @LimiterNo) ORDER BY [dbo].[EAIF_GetNewDbLimiterDetails_132].[Description], [dbo].[EAIF_GetNewDbLimiterDetails_132].[LimiterId] END
CREATE PROCEDURE [dbo].[EATL_UpdateSearchCaptions_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @SearchOptionId varchar(20), @LangCode varchar(10), @OCaption nvarchar(255), @RCaption nvarchar(255), @Description nvarchar(255)) AS BEGIN DECLARE @SearchOptionNo int SELECT @SearchOptionNo=[dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@SearchOptionId IF @SearchOptionNo is null RETURN If not exists (Select 1 from [dbo].[DbSearchOption] where [dbo].[DbSearchOption].[DbVerNo]=@DbVerNo and [dbo].[DbSearchOption].[SearchOptionNo]=@SearchOptionNo) Return BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[DbSearchOptionCaption] WHERE [dbo].[DbSearchOptionCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbSearchOptionCaption].[SearchOptionNo] = @SearchOptionNo AND [dbo].[DbSearchOptionCaption].[LangCode] = @LangCode) BEGIN UPDATE [dbo].[DbSearchOptionCaption] SET [dbo].[DbSearchOptionCaption].[OptionCaption] = @OCaption, [dbo].[DbSearchOptionCaption].[ResultCaption] = @RCaption, [dbo].[DbSearchOptionCaption].[Description] = @Description WHERE [dbo].[DbSearchOptionCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbSearchOptionCaption].[SearchOptionNo] = @SearchOptionNo AND [dbo].[DbSearchOptionCaption].[LangCode] = @LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN INSERT INTO [dbo].[DbSearchOptionCaption] ([dbo].[DbSearchOptionCaption].[DbVerNo], [dbo].[DbSearchOptionCaption].[SearchOptionNo], [dbo].[DbSearchOptionCaption].[LangCode], [dbo].[DbSearchOptionCaption].[OptionCaption], [dbo].[DbSearchOptionCaption].[ResultCaption], [dbo].[DbSearchOptionCaption].[Description]) VALUES (@DbVerNo, @SearchOptionNo, @LangCode, @OCaption, @RCaption, @Description) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceFeatures_77] (@InterfaceID varchar(10),@Version varchar(10))AS BEGIN SELECT l.FeatureName, l.ScreenID, l.FeatureType,l.DbDependant, ISNULL(l.VisibleItemCount,0) AS VisibleItemCount, ISNULL(l.SelectionMode,'R')AS SelectionMode, f.FieldName, f.FieldLevel,f.FieldType FROM [dbo].[InterfaceFeatureList] l INNER JOIN [dbo].[InterfaceFeatureFields] f ON l.InterfaceFeatureNo = f.InterfaceFeatureNo WHERE l.InterfaceID = @InterfaceID AND l.Version=@Version ORDER BY l.FeatureName SELECT l.FeatureName,v.ItemNo, v.FieldValueXml FROM [dbo].[InterfaceFeatureList] l INNER JOIN [dbo].[InterfaceFeatureValues] v ON l.InterfaceFeatureNo=v.InterfaceFeatureNo WHERE l.InterfaceID = @InterfaceID AND l.Version=@Version AND v.Show=1 ORDER BY l.FeatureName,v.SeqNo END
CREATE PROCEDURE [dbo].[AUTH_GetCustomerProxyURLMask_912](@CustID varchar(10), @ItemName varchar(255)) AS BEGIN SELECT (Convert(xml,[dbo].[CustomParamXmlValues].[ParamValue])).value('(/customerProxy/@urlMask)[1]', 'nvarchar(100)') AS UrlMask FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]= dbo.EAIF_GetCustNo_70(@CustID) AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]= dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') AND [dbo].[CustomParamXmlValues].[ItemName] = @ItemName; END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDocTypeList_77](@InterfaceID varchar(10),@Version varchar(10))AS BEGIN SELECT idt.IntfDocTypeNo, dtl.DocTypeID, IsNULL(idtc.Caption, dtc.Caption) AS Caption, sm.Description AS Category, pdtl.DocTypeID AS ParentID, idt.SeqNo FROM [dbo].[InterfaceDocType] idt LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idt.IntfDocTypeNo = idtc.IntfDocTypeNo AND idtc.LangCode = 'en' INNER JOIN [dbo].[DocTypeList] dtl ON idt.DocTypeNo = dtl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE idt.InterfaceID = @InterfaceID AND idt.Version=@Version AND dtc.LangCode='en' AND sm.FieldName = 'DocTypeCategory' ORDER BY idt.SeqNo END
--sql content merged from file: \StoredProcedures\EAIPO_ParseIPAddress_70.sql CREATE PROCEDURE [dbo].[EAIPO_ParseIPAddress_70](@IPAddress varchar(15), @Class char(1) OUT, @DotCount int OUT, @Octet1 int OUT, @Octet2 int OUT, @Octet3 int OUT, @Octet4 int OUT, @IPNum varchar(30) OUT, @ErrMessage varchar(255) OUT, @CheckInternalIP bit=1) AS BEGIN DECLARE @IPPart varchar(30) DECLARE @DotPos int DECLARE @OctString varchar(10) DECLARE @Octet int SELECT @Class='' SELECT @ErrMessage='' SELECT @IPNum='' IF @IPAddress IS NULL OR @IPAddress='' BEGIN SELECT @ErrMessage='IP Address should contain atleast one octet.' RETURN END SELECT @IPAddress = RTRIM(@IPAddress) SELECT @IPPart=@IPAddress+'.' SELECT @DotPos=CHARINDEX('.',@IPPart) SELECT @DotCount=0 WHILE (@DotPos > 0 AND @DotPos IS NOT NULL) BEGIN SELECT @OctString = SUBSTRING(@IPPart,1,@DotPos-1) IF ISNUMERIC(@OctString) = 1 BEGIN SELECT @Octet= CONVERT(int,@OctString) SELECT @IPNum = @IPNum + REPLICATE('0', 3 - DATALENGTH(@OctString)) + @OctString END ELSE SELECT @Octet=NULL IF (@Octet IS NULL OR @Octet <0 OR @Octet > 255) BEGIN SELECT @ErrMessage = 'All octets in the IP Address must be within the range of 0 to 255.' RETURN END IF @DotCount = 0 SELECT @Octet1=@Octet ELSE IF @DotCount = 1 SELECT @Octet2=@Octet ELSE IF @DotCount = 2 SELECT @Octet3=@Octet ELSE IF @DotCount = 3 SELECT @Octet4=@Octet ELSE BEGIN SELECT @ErrMessage='IP Address should not contain more than 3 dots.' RETURN END SELECT @DotCount=@DotCount+1 SELECT @IPPart=SUBSTRING(@IPPart, @DotPos+1,30) SELECT @DotPos=CHARINDEX('.',@IPPart) END /* List of Internal IP Addresses, which should not be added in AuthIP table 10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255 */ IF @CheckInternalIP=1 BEGIN IF ( (@Octet1=10) OR (@Octet1=172 AND (@Octet2>=16 AND @Octet2<=31) ) OR (@Octet1=192 AND @Octet2=168) ) BEGIN SELECT @ErrMessage='The IP Address '+@IPAddress+' is reserved for private internet use, it cannot be used for IP Authentication.' RETURN END END SELECT @DotCount = @DotCount -1 SELECT @Octet = 0 -- reuse the variable IF @Octet1 >=0 AND @Octet1 < 128 BEGIN SELECT @Class='A' SELECT @Octet = 1 END ELSE IF @Octet1 >=128 AND @Octet1 < 192 BEGIN SELECT @Class='B' IF @DotCount >= 1 SELECT @Octet = 1 END ELSE IF @Octet1 >=192 AND @Octet1 < 224 BEGIN SELECT @Class='C' IF @DotCount >= 2 SELECT @Octet = 1 END ELSE IF @Octet1 >= 224 AND @Octet1 <= 255 BEGIN SELECT @Class='D' IF @DotCount = 3 SELECT @Octet = 1 END IF @Octet = 0 BEGIN SELECT @ErrMessage='The class '+@Class+' Address '+@IPAddress+' does not have enough octets to facilitate IP Authentication. Please specify a narrow range.' RETURN END SET @IpNum = substring(@IpNum+'000000000000',1,12) END
Create PROCEDURE [dbo].[EPC_NotifyDbPromote_103] (@UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10) ) AS BEGIN DECLARE @LogMessage varchar(15) SELECT @LogMessage='From '+@OldDbLabel DECLARE @OldDbVerNo int SET @OldDbVerNo = dbo.EAIF_GetDbVerNo_70(@DbName,@OldDbLabel) DECLARE @Query varchar(250) SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' DECLARE @SegList varchar(250) Set @SegList='' SET @SegList=dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo) IF ( LEN(@SegList) > 0 ) SET @Query = @Query+'&SegName='+ @SegList EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','PromoteDatabase',@Query,@DbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','DatabaseInfo', 'item=db&db={param1}&label={param2}',@DbName,@NewDbLabel --Notify all authorities - see EHPMADMIND-515 DECLARE @TempDb table( ItemIndex int identity(1,1) PRIMARY KEY, DbName varchar(10), DbVerNo int NULL ) Insert into @TempDb(DbName) select da.DbName from [dbo].[DbList] d join [dbo].[DbAuthority] a on d.DbVerNo=a.MainDbVerNo join [dbo].[DbList] da on a.AuthDbVerNo=da.DbVerNo where d.DbName=@DbName and d.DbLabel=@NewDbLabel and da.DbType<>4 DECLARE @ItemCount int, @ItemIndex int DECLARE @AuthDbName varchar(10) SELECT @ItemCount = count(*) FROM @TempDb SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @AuthDbName=DbName FROM @TempDb Where ItemIndex=@ItemIndex EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','DatabaseInfo', 'item=db&db={param1}&label={param2}',@AuthDbName,@NewDbLabel END -- Notify all Subset Databases Delete @TempDb Insert @TempDb (DbName, DbVerNo) Select Dbl.DbName, dbl.DbVerNo from [dbo].[DbList] dbl join [dbo].[DbSubset] dbs on dbl.DbVerNo=dbs.SubsetDbVerNo and dbs.PhysDbVerNo=dbo.EAIF_GetDbVerNo_70(@DbName,@NewDbLabel) DECLARE @SubsetDbName varchar(10) Declare @SubsetDbVerNo int SELECT @ItemCount = count(*) FROM @TempDb SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @SubsetDbName=DbName FROM @TempDb Where ItemIndex=@ItemIndex Select @SubsetDbVerNo=DbVerNo FROM @TempDb Where ItemIndex=@ItemIndex SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo))>0 ) SET @Query = @Query+'&SegName='+ dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','PromoteDatabase',@Query,@SubsetDbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','DatabaseInfo', 'item=db&db={param1}&label={param2}',@SubsetDbName,@NewDbLabel End EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Database','Notify Db Promote',@DbName,@NewDbLabel,@LogMessage END
CREATE PROCEDURE [dbo].[EAUI_GetDbFeatures_80](@Category varchar(10), @DbVerNo int) AS BEGIN SELECT fl.FeatureNo, fl.FeatureName,[fl].[FeatureType] FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[DbFeature] dbf ON fl.FeatureNo=dbf.FeatureNo WHERE fl.Category=@Category AND dbf.DbVerNo=@DbVerNo ORDER BY fl.FeatureNo DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldLevel,ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureFields] ff ON fl.FeatureNo=ff.FeatureNo WHERE fl.Category =@TemplCategory AND ff.FieldLevel='F'AND [ff].[IncludeInSummary]=1 ORDER BY ff.SeqNo SELECT fl.FeatureNo,fl.FeatureName, fv.FieldValueXml FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureValues] fv ON fl.FeatureNo=fv.FeatureNo INNER JOIN [dbo].[DbFeature] dbf ON fl.FeatureNo=dbf.FeatureNo WHERE fl.Category =@Category AND fv.ItemNo = 0 AND dbf.DbVerNo=@DbVerNo ORDER BY fl.FeatureNo END
CREATE PROCEDURE [dbo].[EAUI_GetParentAndSystemLinksList_70](@CustID varchar(10)) AS BEGIN EXEC [dbo].[EAUI_GetParentLinksList_70] @CustID EXEC [dbo].[EAUI_GetSystemLinksList_70] END
CREATE PROCEDURE [dbo].[EAIP_ModifyContentFilterListItem_181](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterItemNo INT, @ContentFilterItemSearchConceptID varchar(20), @ContentFilterItemSearchTerm nvarchar(2000)) AS BEGIN BEGIN TRY DECLARE @ContentFilterNo INT SELECT @ContentFilterNo=[dbo].[ContentFilterListItems].[ContentFilterNo] FROM [dbo].[ContentFilterListItems] WHERE [dbo].[ContentFilterListItems].[ContentFilterItemNo]=@ContentFilterItemNo BEGIN TRANSACTION UPDATE [dbo].[ContentFilterListItems] SET [dbo].[ContentFilterListItems].[ContentFilterItemSearchConceptID]=@ContentFilterItemSearchConceptID, [dbo].[ContentFilterListItems].[ContentFilterItemSearchTerm]=@ContentFilterItemSearchTerm WHERE [dbo].[ContentFilterListItems].[ContentFilterItemNo]=@ContentFilterItemNo UPDATE [dbo].[ContentFilterList] SET [dbo].[ContentFilterList].[LastUpdatedDate]=GETDATE() WHERE [dbo].[ContentFilterList].[ContentFilterNo]=@ContentFilterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Content Filter List','Modify List Item', @ContentFilterNo, @ContentFilterItemNo, @ContentFilterItemSearchConceptID, @ContentFilterItemSearchTerm COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbLimiterWrapperForService_132] ( @UserId nvarchar(20), @UserIp varchar(15), @LimiterId VARCHAR(20), @DbName VARCHAR(10), @DbLabel VARCHAR(10), @SearchString varchar(4000), @DefValue varchar(255), @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10), @IncludeAutoAdd bit, @Template nvarchar(max) ) AS BEGIN --BEGIN TRANSACTION -- check that dbname and label exist DECLARE @DbVerNo INT DECLARE @SourceType CHAR(1) DECLARE @xml XML DECLARE @val VARCHAR(1) DECLARE @xml2 XML DECLARE @val2 VARCHAR(1) SELECT @DbVerNo = [dbo].[DbList].[DbVerNo], @SourceType = [dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel IF @DbVerNo IS NULL BEGIN RAISERROR('Database with DbName "%s" and DbLabel "%s" does not exist as an EBSCO database, catalog or IR. Only EBSCO databases, catalogs and IRs can have limiters', 16, -1, @DbName, @DbLabel) RETURN END -- make sure the database is an EBSCO database, a catalog or IR IF @SourceType NOT IN ('C', 'D') BEGIN RAISERROR('Only EBSCO databases, catalogs and IRs can have limiters.', 16, -1) RETURN END -- check to see if the DbLable is a custom one and adjust accordingly for the Limiter DECLARE @LimiterLabel varchar(10) SET @LimiterLabel = @DbLabel IF @LimiterLabel NOT IN ('live','liveQC', 'rebuild', 'rebuildQC') SET @LimiterLabel='custom' -- check that the limiter exists DECLARE @LimiterNo INT SELECT @LimiterNo = [dbo].[LimiterList].[LimiterNo] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterId] = @LimiterId AND [dbo].[LimiterList].[DbLabel] = @LimiterLabel IF @LimiterNo IS NULL BEGIN RAISERROR('Limiter Id "%s" does not exist for DbLabel "%s".', 16, -1, @LimiterId, @LimiterLabel) RETURN END -- check MouseOverText - it's not required, but if it's supplied it can't contain < IF CHARINDEX('<', @MouseOverText) != 0 BEGIN RAISERROR('Alt-text cannot contain character "<".', 16, -1) RETURN END -- if any of the parameters are null, convert them to empty strings SET @SearchString = ISNULL(@SearchString, '') SET @Caption = ISNULL(@Caption, '') SET @MouseOverText = ISNULL(@MouseOverText, '') SET @LangCode = ISNULL(@LangCode, '') DECLARE @ControlType INT DECLARE @ControlName VARCHAR(50) -- is the limiter already attached to the database, if so, we're modifying the limiter IF EXISTS (SELECT 1 FROM dbo.DbLimiter WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiter].[LimiterNo] = @LimiterNo) BEGIN -- if LangCode not there, default to English IF LEN(@LangCode) = 0 BEGIN SET @LangCode = 'en' END DECLARE @modifying TABLE (LimiterId VARCHAR(20), Description NVARCHAR(100), Caption NVARCHAR(100), MouseOverText NVARCHAR(255), ControlName VARCHAR(50), SearchString VARCHAR(4000), ControlTag VARCHAR(20), DefValue VARCHAR(255), ControlType SMALLINT, DefaultEditControl VARCHAR(50), DefaultValueTemplate VARCHAR(100), ControlTemplate NVARCHAR(MAX), ControlClass VARCHAR(20), ResFlag INT, EnableQueryMask BIT, QueryMaskId VARCHAR(20), IsListContentsGrouped BIT, ListItemUniqueId VARCHAR(255), HelpUrl VARCHAR(255)) INSERT INTO @modifying (LimiterId, Description, Caption, MouseOverText, ControlName, SearchString, ControlTag, DefValue, ControlType, DefaultEditControl, DefaultValueTemplate, ControlTemplate, ControlClass, ResFlag, EnableQueryMask, QueryMaskId, IsListContentsGrouped, ListItemUniqueId, HelpUrl) select [dbo].[EAIF_GetDbLimiterDetails_132].[LimiterId], [dbo].[EAIF_GetDbLimiterDetails_132].[Description], [dbo].[EAIF_GetDbLimiterDetails_132].[Caption], [dbo].[EAIF_GetDbLimiterDetails_132].[MouseOverText], [dbo].[EAIF_GetDbLimiterDetails_132].[ControlName], [dbo].[EAIF_GetDbLimiterDetails_132].[SearchString], [dbo].[EAIF_GetDbLimiterDetails_132].[ControlTag], [dbo].[EAIF_GetDbLimiterDetails_132].[DefValue], [dbo].[EAIF_GetDbLimiterDetails_132].[ControlType], [dbo].[EAIF_GetDbLimiterDetails_132].[DefaultEditControl], [dbo].[EAIF_GetDbLimiterDetails_132].[DefaultValueTemplate], [dbo].[EAIF_GetDbLimiterDetails_132].[ControlTemplate], [dbo].[EAIF_GetDbLimiterDetails_132].[ControlClass], [dbo].[EAIF_GetDbLimiterDetails_132].[ResFlag], [dbo].[EAIF_GetDbLimiterDetails_132].[EnableQueryMask], [dbo].[EAIF_GetDbLimiterDetails_132].[QueryMaskId], [dbo].[EAIF_GetDbLimiterDetails_132].[IsListContentsGrouped], [dbo].[EAIF_GetDbLimiterDetails_132].[ListItemUniqueId], [dbo].[EAIF_GetDbLimiterDetails_132].[HelpUrl] FROM dbo.EAIF_GetDbLimiterDetails_132(@limiterNo, @DbVerNo, @LangCode) -- check caption (if it was supplied, it can't contain <) -- if it wasn't supplied, get the existing value IF LEN(@Caption) > 0 BEGIN IF (CHARINDEX('<', @Caption) != 0) BEGIN RAISERROR('Caption cannot contain character "<"', 16, -1) RETURN END END ELSE BEGIN SELECT @Caption = Caption FROM @modifying END -- check that the lang code is in the lang list IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode) BEGIN RAISERROR('Invalid LangCode "%s".', 16, -1, @LangCode) RETURN END -- search string is required for every limiter type SELECT @ControlType = ControlType FROM @modifying SELECT @ControlName = ControlName FROM @modifying -- if it's empty, get the existing value IF LEN(@SearchString) = 0 BEGIN SELECT @SearchString = SearchString FROM @modifying END -- if the control is a check box, make sure the default value is something meaningful SELECT @ControlType IF (@ControlType = 0) BEGIN IF @DefValue IS NULL -- if no value passed for DefValue then use existing value SELECT @DefValue=DefValue FROM @modifying ELSE BEGIN IF ((@DefValue = 'true') OR (@DefValue = '1') OR (@DefValue = 'On')) BEGIN SET @DefValue = 'On' END ELSE BEGIN SET @DefValue = 'Off' END End END IF @IncludeAutoAdd IS NULL -- if no value passed for IncludeAutoAdd then use existing value SELECT @IncludeAutoAdd=ResFlag FROM @modifying -- if the template is empty, load the existing value IF (@ControlType IN (4, 5, 6, 7, 13)) -- these need lists, therefore have templates BEGIN IF LEN(@Template) = 0 BEGIN SELECT @Template = ISNULL(ControlTemplate, '') FROM @modifying END ELSE BEGIN -- if Template has been passed in with an empty string for defPosn then retrieve and use esisting defPosn SELECT @xml=@Template SELECT @val=@xml.value('/lbItems[1]/@defPosn', 'varchar(1)') IF @val='' BEGIN SELECT @xml2=ControlTemplate FROM @modifying SELECT @val2=@xml2.value('/lbItems[1]/@defPosn', 'varchar(1)') SET @Template=REPLACE(@Template, 'defPosn=""', 'defPosn="' + @val2 + '"') END END END ELSE BEGIN SET @Template = '' END END ELSE BEGIN DECLARE @adding TABLE (LimiterNo INT, LimiterId VARCHAR(20), Description NVARCHAR(100), ControlName VARCHAR(50), ControlTag VARCHAR(20), ControlType SMALLINT, DefaultEditControl VARCHAR(50), DefaultValueTemplate VARCHAR(100), ControlClass VARCHAR(20), SearchString VARCHAR(4000), EnableQueryMask BIT, QueryMaskId VARCHAR(20), IsListContentsGrouped BIT, ListItemUniqueId VARCHAR(255), HelpUrl VARCHAR(255)) INSERT INTO @adding (LimiterNo, LimiterId, Description, ControlName, ControlTag, ControlType, DefaultEditControl, DefaultValueTemplate, ControlClass, SearchString, EnableQueryMask, QueryMaskId, IsListContentsGrouped, ListItemUniqueId, HelpUrl) select [dbo].[EAIF_GetNewDbLimiterDetails_132].[LimiterNo], [dbo].[EAIF_GetNewDbLimiterDetails_132].[LimiterId], [dbo].[EAIF_GetNewDbLimiterDetails_132].[Description], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlName], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlTag], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlType], [dbo].[EAIF_GetNewDbLimiterDetails_132].[DefaultEditControl], [dbo].[EAIF_GetNewDbLimiterDetails_132].[DefaultValueTemplate], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ControlClass], [dbo].[EAIF_GetNewDbLimiterDetails_132].[SearchString], [dbo].[EAIF_GetNewDbLimiterDetails_132].[EnableQueryMask], [dbo].[EAIF_GetNewDbLimiterDetails_132].[QueryMaskId], [dbo].[EAIF_GetNewDbLimiterDetails_132].[IsListContentsGrouped], [dbo].[EAIF_GetNewDbLimiterDetails_132].[ListItemUniqueId], [dbo].[EAIF_GetNewDbLimiterDetails_132].[HelpUrl] FROM dbo.EAIF_GetNewDbLimiterDetails_132 (@DbVerNo, @LimiterNo ) -- check that caption was supplied IF (LEN(@Caption) = 0) BEGIN RAISERROR('English caption is required when attaching a limiter; it cannot be blank.', 16, -1) RETURN END -- check that caption doesn't contain < IF (CHARINDEX('<', @Caption) != 0) BEGIN RAISERROR('Caption cannot contain character "<"', 16, -1) RETURN END -- if LangCode not there, raise error IF LEN(@LangCode) = 0 OR (@LangCode != 'en') BEGIN RAISERROR('LangCode must be "en" when attaching a limiter.', 16, -1) RETURN END -- search string is required for every limiter type SELECT @ControlType = ControlType FROM @adding SELECT @ControlName = ControlName FROM @adding IF LEN(@SearchString) = 0 BEGIN RAISERROR('Search String cannot be blank.', 16, -1) RETURN END -- if the control is a check box, make sure the default value is something meaningful SELECT @ControlType IF (@ControlType = 0) BEGIN IF @DefValue IS NULL -- if no value passed for DefValue then use "Off" Set @DefValue='Off' ELSE Begin IF ((@DefValue = 'true') OR (@DefValue = '1') OR (@DefValue = 'On')) BEGIN SET @DefValue = 'On' END ELSE BEGIN SET @DefValue = 'Off' End END END IF @IncludeAutoAdd IS NULL -- if no value passed for DefValue then use 1 SET @IncludeAutoAdd=1 IF (@ControlType IN (4, 5, 6, 7, 13)) -- these need lists, therefore have templates BEGIN IF LEN(@Template) = 0 BEGIN RAISERROR('The item list must be supplied for limiters of type %s.', 16, -1, @ControlName) RETURN END ELSE BEGIN -- if Template has been passed in with an empty string for defPosn then use "0" SELECT @xml=@Template SELECT @Val=@xml.value('/lbItems[1]/@defPosn', 'varchar(1)') IF @Val='' BEGIN SET @Template=REPLACE(@Template, 'defPosn=""', 'defPosn="0"') END END END ELSE BEGIN -- clear it out just in case SET @Template = '' END END IF (LEN(@Template) = 0) BEGIN -- call EAUI_UpdateDbLimiter_77 EXEC dbo.EAUI_UpdateDbLimiter_77 @UserId = @UserId, -- nvarchar(20) @UserIp = @UserIp, -- varchar(15) @LimiterNo = @LimiterNo, -- int @DbVerNo = @DbVerNo, -- int @SearchString = @SearchString, -- varchar(4000) @DefValue = @DefValue, -- varchar(255) @Caption = @Caption, -- nvarchar(255) @MouseOverText = @MouseOverText, -- nvarchar(255) @LangCode = @LangCode, -- varchar(10) @IncludeAutoAdd = @IncludeAutoAdd -- bit END ELSE BEGIN -- call EAUI_UpdateDbLimiterWithTemplate_77 EXEC dbo.EAUI_UpdateDbLimiterWithTemplate_77 @UserId = @UserId, -- nvarchar(20) @UserIp = @UserIp, -- varchar(15) @LimiterNo = @LimiterNo, -- int @DbVerNo = @DbVerNo, -- int @SearchString = @SearchString, -- varchar(4000) @DefValue = @DefValue, -- varchar(255) @Caption = @Caption, -- nvarchar(255) @MouseOverText =@MouseOverText, -- nvarchar(255) @LangCode = @LangCode, -- varchar(10) @IncludeAutoAdd = @IncludeAutoAdd, -- bit @Template = @Template -- nvarchar(max) END END
CREATE FUNCTION [dbo].[EAIF_GetLocalLimiterCaption_76](@ProfNo int, @ColNo int, @LangCode varchar(10), @ScreenNo int) RETURNS NVARCHAR(255) AS BEGIN DECLARE @Caption nvarchar(255) SELECT @Caption=[dbo].[ProfLocalLimiterCaption2].[Caption] FROM [dbo].[ProfLocalLimiterCaption2] WHERE [dbo].[ProfLocalLimiterCaption2].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption2].[IntfScreenNo]=@ScreenNo AND [dbo].[ProfLocalLimiterCaption2].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption2].[LangCode] = @LangCode IF @Caption IS NULL OR @Caption='' SELECT @Caption=[dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 RETURN @Caption END
CREATE PROCEDURE [dbo].[EAUI_GetCompatibleControlTypes_76](@ControlType int) AS BEGIN DECLARE @Class varchar(20) SELECT @Class=[dbo].[LimiterControlType].[ControlClass] FROM [dbo].[LimiterControlType] WHERE [dbo].[LimiterControlType].[ControlType] = @ControlType SELECT [dbo].[LimiterControlType].[ControlType], [dbo].[LimiterControlType].[ControlTag], [dbo].[LimiterControlType].[ControlName] FROM [dbo].[LimiterControlType] WHERE [dbo].[LimiterControlType].[ControlClass]=@Class END
CREATE PROCEDURE [dbo].[EAIP_AddLimiter_101] ( @LimiterId varchar(20), @DbLabel varchar(10), @LimiterType char(1), @ControlType smallint, @ControlSize smallint, @LogicalOpCode varchar(3), @Description nvarchar(100), @Notes nvarchar(255), @BitFlag1 bit, @SearchString varchar(4000), @AllowCustom bit =0, @GroupListBoxContentsFlag bit, @GroupListItemUniqueID varchar (255), @enableQueryMask BIT, @queryMaskId varchar(20), @HelpUrl varchar(255), @userId nvarchar(20) = NULL, @userIp varchar(15) = NULL ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterId]=@LimiterId AND [dbo].[LimiterList].[DbLabel]=@DbLabel) BEGIN RAISERROR('The Limiter ID (%s) already exists for this DbLabel (%s) in LimiterList', 16,-1, @LimiterId,@DbLabel) RETURN END IF @userId IS NOT NULL AND @userIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @userId, @userIp, 'Limiter', 'Add Limiter', @LimiterId, @DbLabel END INSERT INTO [dbo].[LimiterList] ( [dbo].[LimiterList].[LimiterId], [dbo].[LimiterList].[DbLabel], [dbo].[LimiterList].[LimiterType], [dbo].[LimiterList].[ControlType], [dbo].[LimiterList].[ControlSize], [dbo].[LimiterList].[LogicalOpCode], [dbo].[LimiterList].[SearchString], [dbo].[LimiterList].[Description], [dbo].[LimiterList].[Notes], [dbo].[LimiterList].[BitFlag1], [dbo].[LimiterList].[BitFlag2], [dbo].[LimiterList].[BitFlag3], [dbo].[LimiterList].[BitFlag4], [dbo].[LimiterList].[BitFlag5], [dbo].[LimiterList].[BitFlag6], [dbo].[LimiterList].[BitFlag7], [dbo].[LimiterList].[BitFlag8],[dbo].[LimiterList].[AllowCustom], [dbo].[LimiterList].[EnableQueryMask], [dbo].[LimiterList].[QueryMaskId], [dbo].[LimiterList].[IsListContentsGrouped] , [dbo].[LimiterList].[ListItemUniqueId], [dbo].[LimiterList].[HelpUrl] ) VALUES ( @LimiterId, @DbLabel, @LimiterType, @ControlType, @ControlSize, @LogicalOpCode, @SearchString, @Description, @Notes, @BitFlag1, 0, 0, 0, 0, 0, 0, 0, @AllowCustom, @enableQueryMask, @queryMaskId,@GroupListBoxContentsFlag, @GroupListItemUniqueID, @HelpUrl ) SELECT SCOPE_IDENTITY() END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamXmlValue_70](@TargetNo int, @ParamLevel char(1),@ParamName varchar(100), @ItemName varchar(255)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName,@ParamLevel) SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName END
-- ALTER PROCEDURE EAUI_GetProfileAddDatabaseList_70 (@ProfNo int) AS -- BEGIN -- DECLARE @CustType char(1) -- DECLARE @DbLabel varchar(10) -- -- SELECT @CustType = CustType, @DbLabel=DbLabel -- FROM Profile a, Customer b -- WHERE a.ProfNo=@ProfNo AND a.CustID = b.CustID -- -- IF( @CustType='I' OR @CustType='P' ) -- SELECT a.DbVerNo, a.DisplayName+ ' ('+a.DbName+')' AS DisplayName, 0 Selected -- FROM DbList a, DbTypeList b -- WHERE a.DbLabel= @DbLabel AND -- a.DbType=b.DbType AND b.Category='R' -- AND a.DbVerNo NOT IN (SELECT DbVerNo FROM ProfDatabase WHERE ProfNo=@ProfNo) -- ORDER BY a.DisplayName -- ELSE -- SELECT a.DbVerNo, b.DisplayName+ ' ('+b.DbName+')' AS DisplayName, 0 Selected -- FROM ProfDatabase a, DbList b -- WHERE a.ProfNo = @ProfNo -- AND a.DbVerNo = b.DbVerNo -- AND a.Enable = 0 -- ORDER BY b.DisplayName -- END -- GO -- -- -- ALTER PROCEDURE EAUI_GetProfileDatabaseList_70(@ProfNo int) AS -- BEGIN -- DECLARE @IndexBrowseParamNo int -- DECLARE @RefSearchParamNo int -- SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') -- SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') -- SELECT ISNULL(a.SeqNo, 1) SeqNo, a.DbVerNo, b.DisplayName+ ' ('+b.DbName+')' AS DisplayName, -- b.DbName, a.SelDefault, a.StartPage, -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) as 'StartPageTemplate', -- CASE a.MODE WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END As Mode -- FROM profDatabase a, dbList b -- WHERE a.ProfNo = @ProfNo -- AND a.DbVerNo = b.DbVerNo -- AND a.Enable = 1 -- ORDER BY a.SeqNo -- END -- GO -- ALTER PROCEDURE EAUI_GetSubtopicsToAttach_77 (@DbVerNo int, @TopicNo int)AS -- BEGIN -- SELECT -- tl.TopicNo , -- tc.Caption+'('+tl.TopicID+')' As Caption -- FROM TopicList tl LEFT OUTER JOIN DbTopic dt ON -- dt.TopicNo = tl.TopicNo AND -- dt.DbVerNo = @DbVerNo, -- TopicCaption tc -- WHERE -- tl.ParentTopicNo = @TopicNo AND -- tl.TopicNo = tc.TopicNo AND -- tc.LangCode = 'en' AND -- dt.TopicNo is null -- ORDER BY tc.Caption -- END -- GO CREATE PROCEDURE [dbo].[EAUI_GetTopicsToAttach_77] AS BEGIN SELECT distinct tl.TopicNo , tc.Caption+N'('+tl.TopicID+N')' As Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo INNER JOIN [dbo].[TopicList] tlc ON tl.TopicNo = tlc.ParentTopicNo WHERE tl.ParentTopicNo is null AND tc.LangCode = 'en' ORDER BY tc.Caption+N'('+tl.TopicID+N')' END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbLimiter_DbInterfaceLimiter(@DbVerNo int, @LimiterNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS IntfScreenNo, 0 AS LimiterNo, [dbo].[DbInterfaceLimiter].[ControlType], [dbo].[DbInterfaceLimiter].[Show], [dbo].[DbInterfaceLimiter].[DefValue], 0 AS GroupNo, [dbo].[DbInterfaceLimiter].[SeqNo], [dbo].[DbInterfaceLimiter].[DefPosn], [dbo].[DbInterfaceLimiter].[ColNum], [dbo].[InterfaceScreen].[InterfaceID] AS InterfaceID, [dbo].[InterfaceScreen].[Version] AS Version, [dbo].[InterfaceScreen].[ScreenID] AS ScreenID, [dbo].[LimiterList].[LimiterId] AS LimiterId, [dbo].[LimiterList].[DbLabel] AS DbLabel FROM [dbo].[DbInterfaceLimiter] LEFT JOIN [dbo].[InterfaceScreen] ON [dbo].[InterfaceScreen].[IntfScreenNo] = [dbo].[DbInterfaceLimiter].[IntfScreenNo] LEFT JOIN [dbo].[LimiterList] ON [dbo].[LimiterList].[LimiterNo] = [dbo].[DbInterfaceLimiter].[LimiterNo] WHERE [dbo].[DbInterfaceLimiter].[DbVerNo] = @DbVerNo AND [dbo].[DbInterfaceLimiter].[LimiterNo] = @LimiterNo ORDER BY DbVerNo, IntfScreenNo, LimiterNo, [dbo].[DbInterfaceLimiter].[ControlType], [dbo].[DbInterfaceLimiter].[Show], [dbo].[DbInterfaceLimiter].[DefValue], GroupNo, [dbo].[DbInterfaceLimiter].[SeqNo], [dbo].[DbInterfaceLimiter].[DefPosn], [dbo].[DbInterfaceLimiter].[ColNum] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CopyUserGroup_70]( @UserID nvarchar(20), @UserIP varchar(15), @SrcCustID varchar(10), @SrcGroupID nvarchar(10), @DstCustID varchar(10), @DstGroupID nvarchar(10)) AS BEGIN BEGIN TRANSACTION IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@DstCustID AND [dbo].[UserGroup].[GroupID]=@DstGroupID) BEGIN EXEC [dbo].[EAIP_CopyUserGroup_70] @SrcCustID, @SrcGroupID, @DstCustID, @DstGroupID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Copy User Group', @SrcCustID, @SrcGroupID, @DstCustID END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[UTIL_DeleteProfileDbsWithWrongInterfaces_99] ( @DbName varchar(10), @debug varchar(5)='', @Log bit =0) AS BEGIN -- stored proc removes specified database from paying customer profiles --which were added to a wrong Interface CREATE TABLE #WRK_ProfDatabase (ProfNo int, DbVerNo int) CREATE INDEX IX_TMP_ProfDbVer ON #WRK_ProfDatabase(ProfNo, DbVerNo) Insert into #WRK_ProfDatabase(#WRK_ProfDatabase.[ProfNo], #WRK_ProfDatabase.[DbVerNo] ) select a.ProfNo, a.DbVerNo from ( select pd.ProfNo, pd.DbVerNo, p.InterfaceID, p.Version from [dbo].[Profile] p with (nolock) INNER JOIN [dbo].[ProfDatabase] pd with (nolock) on p.ProfNo=pd.ProfNo INNER JOIN [dbo].[DbList] d with (nolock) on pd.DbVerNo=d.DbVerNo INNER JOIN [dbo].[Customer] c with (nolock) on p.CustID= c.CustID where d.SourceType='D' and c.CustType<>'I' and d.DbName =@DbName ) a left outer join (select d.DbVerNo, pri.InterfaceID, pri.Version from EASUPPORT.dbo.ProductInterface pri with (nolock) INNER JOIN [dbo].[DbList] d with (nolock) on pri.ProductID=d.DbName where d.DbLabel='live' and d.SourceType='D') b on a.DbVerNo=b.DbVerNo and a.InterfaceID=b.InterfaceID and a.Version=b.Version where b.DbVerNo is null IF @debug='true' Select p.CustID, p.GroupID, p.ProfID, p.InterfaceID, d.DbName from [dbo].[Profile] p with (nolock) INNER JOIN [dbo].[ProfDatabase] pd with (nolock) on p.ProfNo=pd.ProfNo INNER JOIN [dbo].[DbList] d with (nolock) on pd.DbVerNo=d.DbVerNo INNER JOIN #WRK_ProfDatabase a on pd.ProfNo=a.ProfNo and d.DbVerNo=a.DbVerNo ELSE BEGIN TRY BEGIN TRANSACTION IF @Log=1 INSERT INTO EASUPPORT.dbo.ActivityLog SELECT 'sysArchive', '', GETDATE(), 'Profiles', 'Remove Database from Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, 'UTIL_DeleteProfileDbsWithWrongInterfaces', NULL, NULL FROM #WRK_ProfDatabase a INNER JOIN [dbo].[Profile] prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] dbl ON a.DbVerNo=dbl.DbVerNo DELETE [dbo].[ProfDatabase] FROM #WRK_ProfDatabase a INNER JOIN [dbo].[ProfDatabase] pd on a.ProfNo=pd.ProfNo and a.DbVerNo=pd.DbVerNo COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceCluster_102](@ClustId VARCHAR(20), @InterfaceId VARCHAR(10), @Version VARCHAR(50), @Show BIT, @SeqNo INT, @DefaultToOpen BIT) AS BEGIN DECLARE @ClustNo Int IF(@Version NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @Version = 'custom' -- using the ClustId and Version, get the target ClustNo from ClusterList -- if it's not there we aren't going to add it or the InterfaceCluster IF (EXISTS (SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClustId AND [dbo].[ClusterList].[DbLabel] = @Version)) BEGIN SELECT @ClustNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClustId AND [dbo].[ClusterList].[DbLabel] = @Version -- now check to see if the record is already in InterfaceClusters, if it is, update it, if it isn't, insert it IF (EXISTS (SELECT 1 FROM [dbo].[InterfaceClusters] WHERE [dbo].[InterfaceClusters].[InterfaceID] = @InterfaceId AND @Version = @Version AND [dbo].[InterfaceClusters].[ClustNo] = @ClustNo)) BEGIN UPDATE [dbo].[InterfaceClusters] SET [dbo].[InterfaceClusters].[Show] = @Show, [dbo].[InterfaceClusters].[SeqNo] = @SeqNo, [dbo].[InterfaceClusters].[DefaultToOpen] =@DefaultToOpen WHERE [dbo].[InterfaceClusters].[InterfaceID] = @InterfaceId AND [dbo].[InterfaceClusters].[Version] = @Version AND [dbo].[InterfaceClusters].[ClustNo] = @ClustNo END ELSE BEGIN INSERT INTO [dbo].[InterfaceClusters] ([dbo].[InterfaceClusters].[InterfaceID], [dbo].[InterfaceClusters].[Version], [dbo].[InterfaceClusters].[ClustNo], [dbo].[InterfaceClusters].[Show], [dbo].[InterfaceClusters].[SeqNo], [dbo].[InterfaceClusters].[DefaultToOpen]) VALUES (@InterfaceId, @Version, @ClustNo, @Show, @SeqNo, @DefaultToOpen) END END END
CREATE PROCEDURE [dbo].[EAUI_GetParentBrandingList_70](@ChildID varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') SELECT -- b. CustID [a].[ItemName], [a].[ParamValue] FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Customer] b ON a.TargetNo=b.CustNo INNER JOIN [dbo].[CustomerGroup] c ON b.CustID=c.ParentID WHERE [a].[ParamLevel]='C' AND [a].[ParamNo] = @ParamNo AND c.ChildID=@ChildID AND c.ParentID <> c.ChildID END
CREATE PROCEDURE EATL_UpdateSearchCaptions_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo int ,SearchOptionId varchar(20) ,OCaption nvarchar(255) ,RCaption nvarchar(255) ,Description nvarchar(255) ) INSERT INTO #Objects ( DbVerNo ,SearchOptionId ,OCaption ,RCaption ,Description ) SELECT m.c.value('(./DbVerNo)[1]', 'int') ,m.c.value('(./SearchOptionId)[1]', 'varchar(20)') ,m.c.value('(./OCaption)[1]', 'nvarchar(255)') ,m.c.value('(./RCaption)[1]', 'nvarchar(255)') ,m.c.value('(./Description)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo int ,@SearchOptionId varchar(20) ,@OCaption nvarchar(255) ,@RCaption nvarchar(255) ,@Description nvarchar(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@SearchOptionId = SearchOptionId ,@OCaption = OCaption ,@RCaption = RCaption ,@Description = Description FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateSearchCaptions_76] @UserID ,@UserIP ,@DbVerNo ,@SearchOptionId ,@Lang ,@OCaption ,@RCaption ,@Description SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceKnownSearchItems_103] (@InterfaceID varchar(10),@Version varchar(10))AS BEGIN SELECT iks.InterfaceID, iks.Version, iks.SeqNo, iks.IsSelected, iks.SearchString, dbo.EAIF_InterfaceKnownSearchItemLabels_103(iks.KnownSearchItemNo) AS Labels, dbo.EAIF_InterfaceKnownSearchItemGhostText_103(iks.KnownSearchItemNo) AS GhostText FROM [dbo].[InterfaceKnownSearchItems] iks WHERE iks.InterfaceID=@InterfaceID AND iks.Version=@Version ORDER BY iks.SeqNo END
CREATE PROCEDURE [dbo].[AUTH_GetDirectURL_70] (@JournalReq varchar(50) )AS BEGIN SELECT dbo.EAIF_GetDirectURL_70 (@JournalReq) AS SiteURL END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDocTypeListByCaption_77](@InterfaceID varchar(10),@Version varchar(10),@Caption nvarchar(255))AS BEGIN SELECT idt.IntfDocTypeNo, dtl.DocTypeID, IsNULL(idtc.Caption, dtc.Caption) AS Caption, sm.Description AS Category, pdtl.DocTypeID AS ParentID, idt.SeqNo FROM [dbo].[InterfaceDocType] idt LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idt.IntfDocTypeNo = idtc.IntfDocTypeNo AND idtc.LangCode = 'en' INNER JOIN [dbo].[DocTypeList] dtl ON idt.DocTypeNo = dtl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE idt.InterfaceID = @InterfaceID AND idt.Version=@Version AND dtc.LangCode='en' AND IsNULL(idtc.Caption, dtc.Caption)>=@Caption AND sm.FieldName = 'DocTypeCategory' ORDER BY IsNULL(idtc.Caption, dtc.Caption) END
CREATE PROCEDURE [dbo].[EAIPO_PrepareAZCollection_97] ( @RootEPAZCustomerID varchar(10), @ColID varchar(50), @ColName varchar(100), @CollectionType int, @AutoRecreate bit, @AllowColNameChange bit, @ColNo int output, @YesMsgNo int output, @NoMsgNo int output) AS BEGIN SET NOCOUNT ON DECLARE @OldColName varchar(100),@OldAutoRecreate bit -- FYI: these hardcoded strings also appear within the AtoZRepl databases AZCPO_UpdateAtoZCollection_97 routine EXEC [dbo].[EAIPO_AddYesMessage_70] @RootEPAZCustomerID,'This title is available through AtoZ',@YesMsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @RootEPAZCustomerID,'',@NoMsgNo OUTPUT SELECT @ColNo=[dbo].[Collection].[ColNo], @OldColName=[dbo].[Collection].[ColName], @OldAutoRecreate=[dbo].[Collection].[AutoRecreate] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@RootEPAZCustomerID AND [dbo].[Collection].[ColID]=@ColID IF @colno IS NULL BEGIN EXEC [dbo].[EAIPO_AddCollection_70] @RootEPAZCustomerID,@ColID,@ColName,0,null,0,0,@colno OUTPUT UPDATE [dbo].[Collection] SET [dbo].[Collection].[AutoRecreate] = @AutoRecreate WHERE [dbo].[Collection].[ColNo]=@ColNo -- TODO: also set new fields when available (AtoZ, CollectionType) END ELSE IF ((isnull(@OldColName,'') <> isnull(@ColName,'')) or (isnull(@OldAutoRecreate,'') <> isnull(@AutoRecreate,''))) UPDATE [dbo].[Collection] SET [dbo].[Collection].[ColName]=case when @AllowColNameChange=1 then @ColName else [dbo].[Collection].[ColName] end, [dbo].[Collection].[AutoRecreate]=@AutoRecreate WHERE [dbo].[Collection].[ColNo]=@ColNo RETURN END
CREATE PROCEDURE [dbo].[EPC_UpdateSegmentProductionDate_80] (@DbVerNo int, @SegName varchar(10), @ProductionDate varchar(8))AS BEGIN Update [dbo].[DbSegment] SET [dbo].[DbSegment].[ProductionDate] = @ProductionDate where [dbo].[DbSegment].[DbVerNo] = @DbVerNo and [dbo].[DbSegment].[SegName] = @SegName END
CREATE PROCEDURE [dbo].[EAUI_GetDbFeaturesForAttach_80](@Category varchar(10), @DbVerNo int) AS BEGIN SELECT fl.FeatureNo, fl.FeatureName ,[fl].[FeatureType] FROM [dbo].[FeatureList] fl LEFT OUTER JOIN [dbo].[DbFeature] dbf ON fl.FeatureNo=dbf.FeatureNo AND dbf.DbVerNo=@DbVerNo WHERE fl.Category=@Category AND dbf.FeatureNo is null ORDER BY fl.FeatureNo DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' SELECT ff.FieldName,ff.FieldLevel,ff.FieldType, [ff].[IncludeInSummary], ff.EditControl, ff.ValueTemplate FROM [dbo].[FeatureList] fl INNER JOIN [dbo].[FeatureFields] ff ON fl.FeatureNo=ff.FeatureNo WHERE fl.Category =@TemplCategory AND ff.FieldLevel='F'AND [ff].[IncludeInSummary]=1 ORDER BY ff.SeqNo SELECT fl.FeatureNo,fl.FeatureName, fv.FieldValueXml FROM [dbo].[FeatureList] fl LEFT OUTER JOIN [dbo].[DbFeature] dbf ON fl.FeatureNo=dbf.FeatureNo AND dbf.DbVerNo=@DbVerNo INNER JOIN [dbo].[FeatureValues] fv ON fl.FeatureNo=fv.FeatureNo WHERE fl.Category =@Category AND fv.ItemNo = 0 AND dbf.FeatureNo is null ORDER BY fl.FeatureNo END
CREATE PROCEDURE [dbo].[EAUI_GetPassingMode_70] AS BEGIN EXEC [dbo].[EAUI_GetStringValueMap] 'PassingMode' END
CREATE PROCEDURE [dbo].[EAIP_ModifyContentVerticalType_162] (@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @ContentVerticalID VARCHAR(20), @ContentVerticalDesc NVARCHAR(255)) AS IF NOT EXISTS (SELECT 1 FROM [dbo].[ContentVerticalType] WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@ContentVerticalID) BEGIN RAISERROR('The ContentVerticalType (%s) does not exist ', 16, -1, @ContentVerticalID) RETURN END BEGIN TRY BEGIN TRANSACTION UPDATE dbo.ContentVerticalType SET [dbo].[ContentVerticalType].[Description]=@ContentVerticalDesc WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@ContentVerticalID EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Modify ContentVerticalType',@ContentVerticalID, @ContentVerticalDesc COMMIT TRANSACTION END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
--sql content merged from file: \StoredProcedures\EAUI_UpdateDbParamScalarValue_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateDbParamScalarValue_70](@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @ParamNo smallint, @ParamValue nvarchar(2000)) AS BEGIN DECLARE @ParamDesc varchar(255) Declare @SourceType char(1) SELECT @ParamDesc=[dbo].[DbParamEditDetail].[PromptText] FROM [dbo].[DbParamEditDetail] WHERE [dbo].[DbParamEditDetail].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Update Parameter','',@ParamDesc,'Value: ',@ParamValue select @SourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo if (Select [dbo].[DbParamSourceTypeDefaults].[DefValue] from [dbo].[DbParamSourceTypeDefaults] where [dbo].[DbParamSourceTypeDefaults].[ParamNo]=@ParamNo and [dbo].[DbParamSourceTypeDefaults].[SourceType]=@SourceType) = @ParamValue EXEC [dbo].[EAIP_DeleteDbParamScalarValue_70] @DbVerNo, @ParamNo else IF (SELECT [dbo].[DbParamDefaults].[DefValue] FROM [dbo].[DbParamDefaults] WHERE [dbo].[DbParamDefaults].[ParamNo]=@ParamNo) = @ParamValue EXEC [dbo].[EAIP_DeleteDbParamScalarValue_70] @DbVerNo, @ParamNo ELSE EXEC [dbo].[EAIP_UpdateDbParamScalarValue_70] @DbVerNo, @ParamNo, @ParamValue END
CREATE FUNCTION [dbo].[EAIF_GetLocalLimiterCaptions_70](@ProfNo int, @ColNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @Captions = @Captions + N''+IsNull(a.Caption,b.ColName) +N' ' FROM [dbo].[ProfLocalLimiterCaption] AS a INNER JOIN [dbo].[Collection] AS b ON a.ColNo = b.ColNo WHERE (a.ProfNo = @ProfNo) AND (a.ColNo = @ColNo) AND (b.IsDeleted = 0) IF NOT EXISTS (SELECT 1 FROM [dbo].[ProfLocalLimiterCaption] WHERE [dbo].[ProfLocalLimiterCaption].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption].[LangCode]='en') SELECT @Captions= @Captions + N''+[dbo].[Collection].[ColName]+N' ' FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetConfigDbAssignDbList_70](@ApplicationNO smallint, @ServerNo smallint, @ServerDbMode char(1), @DbLabel varchar(10)) AS BEGIN IF( @ServerDbMode='D' ) BEGIN SELECT DISTINCT [dbo].[DbList].[DisplayName], [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbType]=1 AND [dbo].[DbList].[DbName] NOT IN (SELECT [dbo].[ConfigDb].[DbName] FROM [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNO) ORDER BY [dbo].[DbList].[DisplayName] END ELSE BEGIN SELECT [dbo].[DbList].[DisplayName], [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbType]=1 AND [dbo].[DbList].[DbLabel]=@DbLabel AND [dbo].[DbList].[DbName] NOT IN (SELECT [dbo].[ConfigDb].[DbName] FROM [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNO AND [dbo].[ConfigDb].[DbLabel]=@DbLabel) ORDER BY [dbo].[DbList].[DisplayName] END END
CREATE PROCEDURE [dbo].[EAIP_AddLimiter_91] ( @LimiterId varchar(20), @DbLabel varchar(10), @LimiterType char(1), @ControlType smallint, @ControlSize smallint, @LogicalOpCode varchar(3), @Description varchar(100), @Notes varchar(255), @BitFlag1 bit, @SearchString varchar(4000), @AllowCustom bit =0, @GroupListBoxContentsFlag bit, @GroupListItemUniqueID varchar (255), @enableQueryMask BIT, @queryMaskId varchar(20), @userId varchar(20) = NULL, @userIp varchar(15) = NULL ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterId]=@LimiterId AND [dbo].[LimiterList].[DbLabel]=@DbLabel) BEGIN RAISERROR('The Limiter ID (%s) already exists for this DbLabel (%s) in LimiterList', 16,-1, @LimiterId,@DbLabel) RETURN END IF @userId IS NOT NULL AND @userIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @userId, @userIp, 'Limiter', 'Add Limiter', @LimiterId, @DbLabel END INSERT INTO [dbo].[LimiterList] ( [dbo].[LimiterList].[LimiterId], [dbo].[LimiterList].[DbLabel], [dbo].[LimiterList].[LimiterType], [dbo].[LimiterList].[ControlType], [dbo].[LimiterList].[ControlSize], [dbo].[LimiterList].[LogicalOpCode], [dbo].[LimiterList].[SearchString], [dbo].[LimiterList].[Description], [dbo].[LimiterList].[Notes], [dbo].[LimiterList].[BitFlag1], [dbo].[LimiterList].[BitFlag2], [dbo].[LimiterList].[BitFlag3], [dbo].[LimiterList].[BitFlag4], [dbo].[LimiterList].[BitFlag5], [dbo].[LimiterList].[BitFlag6], [dbo].[LimiterList].[BitFlag7], [dbo].[LimiterList].[BitFlag8],[dbo].[LimiterList].[AllowCustom], [dbo].[LimiterList].[EnableQueryMask], [dbo].[LimiterList].[QueryMaskId], [dbo].[LimiterList].[IsListContentsGrouped] , [dbo].[LimiterList].[ListItemUniqueId] ) VALUES ( @LimiterId, @DbLabel, @LimiterType, @ControlType, @ControlSize, @LogicalOpCode, @SearchString, @Description, @Notes, @BitFlag1, 0, 0, 0, 0, 0, 0, 0, @AllowCustom, @enableQueryMask, @queryMaskId,@GroupListBoxContentsFlag, @GroupListItemUniqueID ) SELECT SCOPE_IDENTITY() END
CREATE PROCEDURE [dbo].[EAIP_GetCustomParamXmlValues_154] ( @CustId VARCHAR(10), @GroupId VARCHAR(10), @ProfileId VARCHAR(10), @ParamName VARCHAR(100) ) AS BEGIN DECLARE @ParamLevel CHAR(1), @PLevelTargetNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustId AND [dbo].[Profile].[GroupID] = @GroupId AND [dbo].[Profile].[ProfID] = @ProfileId) BEGIN RAISERROR('The %s.%s.%s Profile does not exist.', 16, -1, @CustId, @GroupId, @ProfileId) RETURN END DECLARE @CurentParamNo INT SELECT @CurentParamNo = (SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName) SELECT @ParamLevel = (SELECT [dbo].[CustomParamList].[ParamLevel] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = @ParamName) SET @PLevelTargetNo = CASE WHEN @ParamLevel='P' THEN (select [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustId AND [dbo].[Profile].[GroupID] = @GroupId AND [dbo].[Profile].[ProfID] = @ProfileId) ELSE (select [dbo].[Customer].[CustNo] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustId) END IF (@ParamName = 'customToolBar') SELECT @ParamName AS ParamName, [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[TargetNo] ,[dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @CurentParamNo AND [dbo].[CustomParamXmlValues].[TargetNo] = @PLevelTargetNo AND [dbo].[CustomParamXmlValues].[ItemName] = '' ELSE SELECT @ParamName AS ParamName, [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[TargetNo] ,[dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @CurentParamNo AND [dbo].[CustomParamXmlValues].[TargetNo] = @PLevelTargetNo AND [dbo].[CustomParamXmlValues].[ItemName] <>'' END
CREATE PROCEDURE [dbo].[EAUI_GetTopicUsage_79] ( @TopicNo int) AS BEGIN DECLARE @IntUsage nvarchar(max) DECLARE @DbUsage Nvarchar(max) DECLARE @TopicDescr nvarchar(255) SET @IntUsage='' SET @DbUsage=N'' SELECT @TopicDescr=N'Topic: '+ptc.Caption+N'('+ptl.TopicID+N')' + N' SubTopic: '+tc.Caption+N'('+tl.TopicID+N')' FROM [dbo].[TopicList] tl LEFT OUTER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo=ptl.TopicNo LEFT OUTER JOIN [dbo].[TopicCaption] ptc ON ptl.TopicNo=ptc.TopicNo AND ptc.LangCode='en' INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo=tc.TopicNo WHERE tc.LangCode='en' AND tl.TopicNo=@TopicNo SELECT @IntUsage=@IntUsage+il.InterfaceName+'('+ it.InterfaceID+'-'+it.Version +')' +'
' FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[InterfaceLanguage] il ON it.InterfaceID=il.InterfaceID AND it.Version=il.Version WHERE it.TopicNo= @TopicNo AND il.LangCode='en' ORDER BY il.InterfaceName SELECT @DbUsage=@DbUsage+d.DisplayName +N'('+d.DbName+N'-'+d.DbLabel+N')' +N'
' FROM [dbo].[DbList] d INNER JOIN [dbo].[DbTopic] t ON d.DbVerNo=t.DbVerNo WHERE [t].[TopicNo] = @TopicNo ORDER By d.DisplayName ,d.DbLabel SELECT @TopicDescr As Description, @IntUsage AS IntUsage, @DbUsage AS DbUsage END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbLimiter_DbLimiterCaption(@DbVerNo int, @LimiterNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS LimiterNo, [dbo].[DbLimiterCaption].[LangCode], [dbo].[DbLimiterCaption].[Caption], [dbo].[DbLimiterCaption].[MouseOverText], [dbo].[LimiterList].[LimiterId] AS LimiterId, [dbo].[LimiterList].[DbLabel] AS DbLabel FROM [dbo].[DbLimiterCaption] LEFT JOIN [dbo].[LimiterList] ON [dbo].[LimiterList].[LimiterNo] = [dbo].[DbLimiterCaption].[LimiterNo] WHERE [dbo].[DbLimiterCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo] = @LimiterNo ORDER BY DbVerNo, LimiterNo, [dbo].[DbLimiterCaption].[LangCode], [dbo].[DbLimiterCaption].[Caption], [dbo].[DbLimiterCaption].[MouseOverText] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CustomizeCustomLink_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @OldName varchar(255), @NewName varchar(255), @ParamValue nvarchar(max) ) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int BEGIN TRANSACTION SET @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SET @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ItemName]=@NewName,[dbo].[CustomParamXmlValues].[ParamValue] = @ParamValue WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@OldName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SET @ParamNo=dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ItemName]=@NewName FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@OldName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Modify Custom Link for a Profile',@CustID, @OldName, @NewName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[UTIL_DeprecateProcedure] @Name VARCHAR(100) AS IF EXISTS (SELECT * FROM dbo.sysobjects WHERE [dbo].[sysobjects].[id] = object_id(@Name) and OBJECTPROPERTY([dbo].[sysobjects].[id], N'IsProcedure') = 1) BEGIN EXEC ('sp_rename ''' + @Name + ''', ''Deprecated_' + @Name + '''') END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceDbAuthorities_85] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceDbAuthorityOrder].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[InterfaceDbAuthority] WHERE [dbo].[InterfaceDbAuthority].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceDbAuthority].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceDbAuthority] ([dbo].[InterfaceDbAuthority].[InterfaceID],[dbo].[InterfaceDbAuthority].[Version],[dbo].[InterfaceDbAuthority].[MainDbVerNo],[dbo].[InterfaceDbAuthority].[AuthDbVerNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceDbAuthority].[MainDbVerNo],[dbo].[InterfaceDbAuthority].[AuthDbVerNo] FROM [dbo].[InterfaceDbAuthority] WHERE [dbo].[InterfaceDbAuthority].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceDbAuthority].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceDbAuthorityOrder] ([dbo].[InterfaceDbAuthorityOrder].[InterfaceID],[dbo].[InterfaceDbAuthorityOrder].[Version],[dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo],[dbo].[InterfaceDbAuthorityOrder].[AuthDbVerNo], [dbo].[InterfaceDbAuthorityOrder].[SeqNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo],[dbo].[InterfaceDbAuthorityOrder].[AuthDbVerNo], [dbo].[InterfaceDbAuthorityOrder].[SeqNo] FROM [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceDbAuthorityOrder].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetParentLinksList_70](@ChildID varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT b.CustID AS CustID, [a].[ItemName], [a].[ParamValue] FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Customer] b ON a.TargetNo=b.CustNo INNER JOIN [dbo].[CustomerGroup] c ON b.CustID=c.ParentID WHERE [a].[ParamLevel]='C' AND [a].[ParamNo] = @ParamNo AND c.ChildID=@ChildID AND c.ParentID <> c.ChildID END
CREATE PROCEDURE [dbo].[EATL_UpdateSearchThemes_83](@UserID nvarchar(20), @UserIP varchar(15), @ThemeID varchar(20), @Caption nvarchar(255), @ImageAltText nvarchar(255), @Lang varchar(10))AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[SearchTheme] WHERE [dbo].[SearchTheme].[ThemeID]= @ThemeID) RETURN DECLARE @LogFlag varchar(100) BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[SearchThemeCaption] WHERE [dbo].[SearchThemeCaption].[ThemeID]= @ThemeID AND [dbo].[SearchThemeCaption].[LangCode]=@Lang ) BEGIN UPDATE [dbo].[SearchThemeCaption] SET [dbo].[SearchThemeCaption].[Caption]=@Caption, [dbo].[SearchThemeCaption].[ImageAltText]=@ImageAltText WHERE [dbo].[SearchThemeCaption].[ThemeID]= @ThemeID AND [dbo].[SearchThemeCaption].[LangCode]=@Lang SET @LogFlag ='Translate(Update) Search Theme Caption & Image Alt Text' END ELSE BEGIN INSERT INTO [dbo].[SearchThemeCaption] ([dbo].[SearchThemeCaption].[ThemeID],[dbo].[SearchThemeCaption].[LangCode],[dbo].[SearchThemeCaption].[Caption],[dbo].[SearchThemeCaption].[ImageAltText] ) VALUES (@ThemeID,@Lang,@Caption,@ImageAltText) SET @LogFlag ='Translate(Insert) Search Theme Caption & Image Alt Text' END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @ThemeID, @LogFlag, 'Lang:', @Lang, 'Caption:', @Caption, 'ImageAltText:', @ImageAltText COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceLanguages_76]( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceUserLangList].[LangCode],[dbo].[InterfaceUserLangList].[LangDisplayName] as Description FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID] =@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version ORDER BY [dbo].[InterfaceUserLangList].[SeqNo] END
--sql content merged from file: \StoredProcedures\AUTH_GetGroupProfiles_99.sql CREATE PROCEDURE [dbo].[AUTH_GetGroupProfiles_99](@CustID varchar(10), @GroupID VARCHAR(10)) AS BEGIN SELECT [a].[ProfID], [a].[ProfPwd], [a].[ProfNo], [a].[SeqNo], [a].[InterfaceID], [a].[Version],[a].[DefLangCode] FROM [dbo].[Profile] a WHERE [a].[CustID]=@CustID AND [a].[GroupID]=@GroupID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDocTypeListByID_77](@InterfaceID varchar(10),@Version varchar(10),@ID varchar(255))AS BEGIN SELECT idt.IntfDocTypeNo, dtl.DocTypeID, IsNULL(idtc.Caption, dtc.Caption) AS Caption, sm.Description AS Category, pdtl.DocTypeID AS ParentID, idt.SeqNo FROM [dbo].[InterfaceDocType] idt LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idt.IntfDocTypeNo = idtc.IntfDocTypeNo AND idtc.LangCode = 'en' INNER JOIN [dbo].[DocTypeList] dtl ON idt.DocTypeNo = dtl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE idt.InterfaceID = @InterfaceID AND idt.Version=@Version AND dtc.LangCode='en' AND dtl.DocTypeID>=@ID AND sm.FieldName = 'DocTypeCategory' ORDER BY dtl.DocTypeID END
CREATE PROCEDURE [dbo].[EAIPO_PrepareHoldingsImportCollection_100] ( @CustID VARCHAR(10), @ColID NVARCHAR(50), @ColName NVARCHAR(100), @ForceRecreate BIT, @ColNo INT OUTPUT, @YesMsgNo INT OUTPUT, @NoMsgNo INT OUTPUT ) AS SET NOCOUNT ON DECLARE @OldForceRecreate BIT, @OldColName NVARCHAR(100) EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID,'',@YesMsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID,'',@NoMsgNo OUTPUT SELECT @ColNo=[dbo].[Collection].[ColNo], @OldForceRecreate=[dbo].[Collection].[ForceRecreate], @OldColName=[dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 IF @@rowcount=0 BEGIN SET @OldForceRecreate=0 SET @OldColName=N'' EXEC [dbo].[EAIPO_AddCollection_70] @CustID, @ColID, @ColName, 0, null, 0, 0, @colno OUTPUT END IF @ForceRecreate IS NOT NULL IF @OldForceRecreate<>@ForceRecreate UPDATE [dbo].[Collection] SET [dbo].[Collection].[ForceRecreate]=@ForceRecreate WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 IF @ColName IS NOT NULL IF @OldColName<>@ColName UPDATE [dbo].[Collection] SET [dbo].[Collection].[ColName]=@ColName WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 RETURN
CREATE PROCEDURE [dbo].[EPCAS_GetBiblioForm](@MasterDbList int, @DBVersion int ) AS BEGIN SELECT [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@MasterDbList AND [dbo].[DbForm].[Category]='B' END
CREATE PROCEDURE [dbo].[EAUI_GetDbFieldGroupElements_70](@DbVerNo int, @FieldGroupNo int) AS BEGIN DECLARE @ElementNoList varchar(1024) SELECT @ElementNoList = COALESCE(@ElementNoList+',','') + CONVERT(varchar, [dbo].[DbFieldElement].[FieldElementNo]) FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldElement].[FieldGroupNo]=@FieldGroupNo SELECT @ElementNoList END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileBrandingParams_70.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileBrandingParams_70](@ProfNo varchar(10),@EditLevel varchar(5)) AS BEGIN EXEC [dbo].[EAUI_GetProfileSubGroupEditParamList_76] @ProfNo, 'Branding', @EditLevel, '' END
CREATE PROCEDURE [dbo].[EAIP_ModifyInterfaceCVType_162] ( @AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ContentVerticalID VARCHAR(20), @DbTarget VARCHAR(80), @SearchServiceAPIConfigXML nvarchar(MAX) ) AS BEGIN DECLARE @ContentVerticalNo INT SELECT @ContentVerticalNo=[dbo].[ContentVerticalType].[ContentVerticalNo] FROM [dbo].[ContentVerticalType] WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@ContentVerticalID IF @ContentVerticalNo IS NULL BEGIN RAISERROR('The ContentVerticalType (%s) does not exist ', 16, -1, @ContentVerticalID) RETURN END IF NOT EXISTS (SELECT 1 FROM dbo.InterfaceVersion WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version) BEGIN RAISERROR('The Interface (%s/%s) does not exist ', 16, -1, @InterfaceID, @Version) RETURN END DECLARE @IntfCVTypeNo INT SELECT @IntfCVTypeNo=[dbo].[InterfaceCVType].[IntfCVTypeNo] FROM dbo.InterfaceCVType WHERE [dbo].[InterfaceCVType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceCVType].[Version]=@Version AND [dbo].[InterfaceCVType].[ContentVerticalNo]=@ContentVerticalNo IF @IntfCVTypeNo IS NULL BEGIN RAISERROR('The ContentVerticalType (%s) is not attached to the Interface (%s/%s)', 16, -1, @ContentVerticalID,@InterfaceID, @Version) RETURN END IF @DbTarget ='' SET @DbTarget = NULL IF @SearchServiceAPIConfigXML = '' SET @SearchServiceAPIConfigXML = NULL IF LEN(@DbTarget)>0 BEGIN SET @DbTarget = REPLACE(@DbTarget,' ','') DECLARE @InvalidList VARCHAR(8000) SET @InvalidList='' SELECT @InvalidList=@InvalidList + a.Item + ', ' FROM dbo.EAIF_GetItemTable_70(@DbTarget, ',') a LEFT OUTER JOIN dbo.DbList b ON a.Item=b.DbName WHERE b.DbName IS NULL IF LEN(@InvalidList) > 0 BEGIN SET @InvalidList = SUBSTRING(@InvalidList, 1, LEN(@InvalidList)-1) RAISERROR('DbNames (%s) do not reference existing database in any label.', 16, -1, @InvalidList) RETURN END END BEGIN TRY BEGIN TRANSACTION IF @DbTarget IS NULL AND @SearchServiceAPIConfigXML IS NULL BEGIN DELETE dbo.InterfaceCVTypeDetails WHERE [dbo].[InterfaceCVTypeDetails].[IntfCVTypeNo]=@IntfCVTypeNo EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Removed Interface customization for ContentVerticalType',@ContentVerticalID, @InterfaceID, @Version END ELSE BEGIN DECLARE @xml XML SET @xml=CONVERT(XML, @SearchServiceAPIConfigXML) IF EXISTS(SELECT 1 FROM dbo.InterfaceCVTypeDetails WHERE [dbo].[InterfaceCVTypeDetails].[IntfCVTypeNo]=@IntfCVTypeNo) UPDATE dbo.InterfaceCVTypeDetails SET [dbo].[InterfaceCVTypeDetails].[DbTarget]=@DbTarget, [dbo].[InterfaceCVTypeDetails].[SearchServiceAPIConfigXML]=@xml WHERE [dbo].[InterfaceCVTypeDetails].[IntfCVTypeNo]=@IntfCVTypeNo ELSE INSERT INTO dbo.InterfaceCVTypeDetails([dbo].[InterfaceCVTypeDetails].[IntfCVTypeNo],[dbo].[InterfaceCVTypeDetails].[DbTarget], [dbo].[InterfaceCVTypeDetails].[SearchServiceAPIConfigXML]) VALUES(@IntfCVTypeNo, @DbTarget, @xml) DECLARE @string VARCHAR(1024) SET @string = CONVERT(VARCHAR(1024), @SearchServiceAPIConfigXML) EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Modified Interface ContentVerticalType',@ContentVerticalID, @InterfaceID, @Version, @DbTarget, @string END COMMIT TRANSACTION END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_UpdateDbParamSourceTypeDefault_99.sql CREATE Procedure [dbo].[EAUI_UpdateDbParamSourceTypeDefault_99] (@UserID nvarchar(20), @UserIP varchar(15), @ParamNo int, @SourceType char(1), @DefValue nvarchar(MAX)) as Begin Declare @ParamDefault nvarchar(2000) select @ParamDefault=[dbo].[DbParamDefaults].[DefValue] from [dbo].[DbParamDefaults] where [dbo].[DbParamDefaults].[ParamNo]=@ParamNo if exists (select 1 from [dbo].[DbParamSourceTypeDefaults] where [dbo].[DbParamSourceTypeDefaults].[ParamNo]=@ParamNo and [dbo].[DbParamSourceTypeDefaults].[SourceType]=@SourceType) begin if @DefValue=@ParamDefault delete [dbo].[DbParamSourceTypeDefaults] where [dbo].[DbParamSourceTypeDefaults].[ParamNo]=@ParamNo and [dbo].[DbParamSourceTypeDefaults].[SourceType]=@SourceType else update [dbo].[DbParamSourceTypeDefaults] set [dbo].[DbParamSourceTypeDefaults].[DefValue]=@DefValue where [dbo].[DbParamSourceTypeDefaults].[ParamNo]=@ParamNo and [dbo].[DbParamSourceTypeDefaults].[SourceType]=@SourceType end else if @DefValue<>@ParamDefault insert [dbo].[DbParamSourceTypeDefaults] ([dbo].[DbParamSourceTypeDefaults].[SourceType], [dbo].[DbParamSourceTypeDefaults].[ParamNo], [dbo].[DbParamSourceTypeDefaults].[DefValue]) Values (@SourceType, @ParamNo, @DefValue) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'AddModifyDbParamSourceType', @ParamNo, @SourceType, @DefValue end
CREATE FUNCTION [dbo].[EAIF_GetLocalLimiterCaptions_76](@ProfNo int, @IntfScreenNo int, @ColNo int) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + N''+a.Caption +N' ' FROM [dbo].[ProfLocalLimiterCaption2] a WHERE a.ProfNo=@ProfNo AND a.ColNo = @ColNo AND a.IntfScreenNo=@IntfScreenNo IF NOT EXISTS (SELECT 1 FROM [dbo].[ProfLocalLimiterCaption2] WHERE [dbo].[ProfLocalLimiterCaption2].[ProfNo]=@ProfNo AND [dbo].[ProfLocalLimiterCaption2].[ColNo] = @ColNo AND [dbo].[ProfLocalLimiterCaption2].[IntfScreenNo]=@IntfScreenNo AND [dbo].[ProfLocalLimiterCaption2].[LangCode]='en') SELECT @Captions= @Captions + N''+[dbo].[Collection].[ColName]+N' ' FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetConfigDbDatabasesBrowse_70](@ServerDbMode char(1), @ApplicationNo int, @DbName varchar(10), @DisplayName nvarchar(100)) AS BEGIN IF @DbName IS NULL SET @DbName='' IF @DisplayName IS NULL SET @DisplayName=N'' IF( @ServerDbMode='D' ) BEGIN IF( @DbName<>'' ) BEGIN SELECT DISTINCT a.DisplayName, a.DbName, b.ServerNo FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[ConfigDb] b ON a.DbName=b.DbName AND b.ApplicationNo=@ApplicationNo WHERE a.DbType=1 AND a.DbName LIKE @DbName + '%' ORDER BY a.DisplayName END ELSE BEGIN SELECT DISTINCT a.DisplayName, a.DbName, b.ServerNo FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[ConfigDb] b ON a.DbName=b.DbName AND b.ApplicationNo=@ApplicationNo WHERE a.DbType=1 AND a.DisplayName LIKE @DisplayName + '%' ORDER BY a.DisplayName END END ELSE BEGIN IF( @DbName<>'' ) BEGIN SELECT DISTINCT a.DisplayName, a.DbName, a.DbLabel, b.ServerNo FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[ConfigDb] b ON a.DbName=b.DbName AND a.DbLabel=b.DbLabel AND b.ApplicationNo=@ApplicationNo WHERE a.DbType=1 AND a.DbName LIKE @DbName + '%' ORDER BY a.DisplayName END ELSE BEGIN SELECT DISTINCT a.DisplayName, a.DbName, a.DbLabel, b.ServerNo FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[ConfigDb] b ON a.DbName=b.DbName AND a.DbLabel=b.DbLabel AND b.ApplicationNo=@ApplicationNo WHERE a.DbType=1 AND a.DisplayName LIKE @DisplayName + '%' ORDER BY a.DisplayName END END END
CREATE PROCEDURE [dbo].[EAIP_AddMDbLimiter_91] ( @LimiterId VARCHAR(20), @DbLabel VARCHAR(10), @ControlType SMALLINT, @LogicalOpCode VARCHAR(3), @SearchString VARCHAR(4000), @AutoAdd BIT, @Description NVARCHAR(100), @EnableQueryMask BIT, @QueryMaskId VARCHAR(20), @ControlTemplate NVARCHAR(MAX), @UserId NVARCHAR(20) = NULL, @UserIp VARCHAR(15) = NULL ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MDbLimiterList] WHERE [dbo].[MDbLimiterList].[LimiterID]=@LimiterId AND [dbo].[MDbLimiterList].[DbLabel]=@DbLabel) BEGIN RAISERROR('The Limiter ID (%s) already exists for this DbLabel (%s) in LimiterList', 16,-1, @LimiterId,@DbLabel) RETURN END IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDBLimiters', 'Add MdLimiter', @LimiterId, @DbLabel END INSERT INTO [dbo].[MDbLimiterList] ( [dbo].[MDbLimiterList].[LimiterID] , [dbo].[MDbLimiterList].[DbLabel] , [dbo].[MDbLimiterList].[ControlType] , [dbo].[MDbLimiterList].[LogicalOpCode] , [dbo].[MDbLimiterList].[SearchString] , [dbo].[MDbLimiterList].[AutoAdd] , [dbo].[MDbLimiterList].[Description] , [dbo].[MDbLimiterList].[EnableQueryMask] , [dbo].[MDbLimiterList].[QueryMaskId], [dbo].[MDbLimiterList].[ControlTemplate] ) VALUES ( @LimiterId , @DbLabel , @ControlType , @LogicalOpCode , @SearchString , @AutoAdd , @Description , @EnableQueryMask , @QueryMaskId, @ControlTemplate ) SELECT SCOPE_IDENTITY() END
/* =========================================================================== Developer: Anne Wan Create date: 3/24/2008 Description: Initialize Access End Date in EAMASTER.dbo.ProfDatabase Update history: 8/13/2008 AW reset Trial subscription to 0(zero) grace period and 0(zero) system admin days exec EAIP_GetCustSubDB_91 '' ============================================================================*/ create procedure [dbo].[EAIP_GetCustSubDB_91] ( @p_CustID varchar(10) = '' --default ) as begin set nocount on if (select count([EASUPPORT].[dbo].[CustSubProfDatabase].[CustID]) from EASUPPORT.dbo.CustSubProfDatabase) > 0 truncate table EASUPPORT.dbo.CustSubProfDatabase if @p_CustID <> '' --for QA function only begin insert into EASUPPORT.dbo.CustSubProfDatabase([EASUPPORT].[dbo].[CustSubProfDatabase].[CustID],[EASUPPORT].[dbo].[CustSubProfDatabase].[DbVerNo],[EASUPPORT].[dbo].[CustSubProfDatabase].[Mode],[EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod],[EASUPPORT].[dbo].[CustSubProfDatabase].[EndDate],[EASUPPORT].[dbo].[CustSubProfDatabase].[UpdatedBy]) select CSUB.CustID, DBLT.DbVerNo, MIN(CSUB.Mode), 0, MAX(CSUB.EndDate), 'dbo' from EASUPPORT.dbo.CustSubscription(nolock) CSUB join EASUPPORT.dbo.ProductPackage(nolock) PRDPACK on PRDPACK.PrdOffNo = CSUB.PrdOffNo join EASUPPORT.dbo.Product(nolock) PRD on PRD.ProductID = PRDPACK.ProductID join dbo.DbList(nolock) DBLT on DBLT.DbName = PRDPACK.ProductID and DBLT.DbLabel = 'live' where CSUB.CustID=@p_CustID and CSUB.Mode in ('s','t') and CSUB.EndDate is not null and year(CSUB.EndDate) between 1900 and 9000 group by CSUB.CustID, DBLT.DbVerNo Update EASUPPORT.dbo.CustSubProfDatabase set [EASUPPORT].[dbo].[CustSubProfDatabase].[AccessEndDate] = [EASUPPORT].[dbo].[CustSubProfDatabase].[EndDate],[EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod]=0 where [EASUPPORT].[dbo].[CustSubProfDatabase].[Mode]='T' UPDATE EASUPPORT.dbo.CustSubProfDatabase SET [GracePeriod] =PRD.GracePeriod FROM EASUPPORT.dbo.CustSubProfDatabase CSUB INNER JOIN [dbo].[DbList] db ON db.DbVerNo=CSUB.DbVerNo INNER JOIN EASUPPORT.dbo.Product(NOLOCK) PRD ON db.DbName=PRD.ProductID INNER JOIN EASUPPORT.dbo.ProductPackage(NOLOCK) PRDPACK ON PRD.ProductID = PRDPACK.ProductID WHERE db.DbLabel ='live' AND PRD.GracePeriod is not null AND CSUB.Mode ='S' Update EASUPPORT.dbo.CustSubProfDatabase set [EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod] =90 where [EASUPPORT].[dbo].[CustSubProfDatabase].[Mode]='S' and [EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod] =0 update EASUPPORT.dbo.CustSubProfDatabase set [EASUPPORT].[dbo].[CustSubProfDatabase].[AccessEndDate] = dbo.fn_GetEPAccessEndDate_90([EASUPPORT].[dbo].[CustSubProfDatabase].[EndDate],[EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod],null,null) where [EASUPPORT].[dbo].[CustSubProfDatabase].[Mode] = 's' end else --SQL job function begin insert into EASUPPORT.dbo.CustSubProfDatabase([EASUPPORT].[dbo].[CustSubProfDatabase].[CustID],[EASUPPORT].[dbo].[CustSubProfDatabase].[DbVerNo],[EASUPPORT].[dbo].[CustSubProfDatabase].[Mode],[EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod],[EASUPPORT].[dbo].[CustSubProfDatabase].[EndDate],[EASUPPORT].[dbo].[CustSubProfDatabase].[UpdatedBy]) select CSUB.CustID, DBLT.DbVerNo, MIN(CSUB.Mode), 0, MAX(CSUB.EndDate), 'dbo' from EASUPPORT.dbo.CustSubscription(nolock) CSUB join EASUPPORT.dbo.ProductPackage(nolock) PRDPACK on PRDPACK.PrdOffNo = CSUB.PrdOffNo join EASUPPORT.dbo.Product(nolock) PRD on PRD.ProductID = PRDPACK.ProductID join dbo.DbList(nolock) DBLT on DBLT.DbName = PRDPACK.ProductID and DBLT.DbLabel = 'live' where CSUB.Mode in ('s','t') and CSUB.EndDate is not null and year(CSUB.EndDate) between 1900 and 9000 group by CSUB.CustID, DBLT.DbVerNo Update EASUPPORT.dbo.CustSubProfDatabase set [EASUPPORT].[dbo].[CustSubProfDatabase].[AccessEndDate] = [EASUPPORT].[dbo].[CustSubProfDatabase].[EndDate],[EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod]=0 where [EASUPPORT].[dbo].[CustSubProfDatabase].[Mode]='T' Update EASUPPORT.dbo.CustSubProfDatabase set [GracePeriod] =PRD.GracePeriod from EASUPPORT.dbo.CustSubProfDatabase CSUB INNER JOIN [dbo].[DbList] db ON db.DbVerNo=CSUB.DbVerNo INNER JOIN EASUPPORT.dbo.Product(nolock) PRD ON db.DbName=PRD.ProductID INNER JOIN EASUPPORT.dbo.ProductPackage(nolock) PRDPACK ON PRD.ProductID = PRDPACK.ProductID where db.DbLabel ='live' and PRD.GracePeriod is not null and CSUB.Mode ='S' Update EASUPPORT.dbo.CustSubProfDatabase set [EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod] =90 where [EASUPPORT].[dbo].[CustSubProfDatabase].[Mode]='S' and [EASUPPORT].[dbo].[CustSubProfDatabase].[GracePeriod] =0 if (select count([EASUPPORT].[dbo].[CustSubProfDatabase].[CustID]) from EASUPPORT.dbo.CustSubProfDatabase) > 0 begin /*Sale subscriptions of which the Grace Period <> 30 days*/ update EASUPPORT.dbo.CustSubProfDatabase set [AccessEndDate] = b.AED_S90 from EASUPPORT.dbo.CustSubProfDatabase a INNER JOIN EASUPPORT.dbo.CustSubEndDates b ON a.EndDate = b.EndDate where a.Mode = 's' and a.GracePeriod <> 30 /*Sale subscriptions of which the Grace Period = 30 days*/ update EASUPPORT.dbo.CustSubProfDatabase set [AccessEndDate] = b.AED_S30 from EASUPPORT.dbo.CustSubProfDatabase a INNER JOIN EASUPPORT.dbo.CustSubEndDates b ON a.EndDate = b.EndDate where a.Mode = 's' and a.GracePeriod = 30 end end declare @RowCnt int set @RowCnt = (select count([EASUPPORT].[dbo].[CustSubProfDatabase].[CustID]) from EASUPPORT.dbo.CustSubProfDatabase) print 'There are ' + cast(@RowCnt as varchar) + ' sets of CustID/DbVerNo to look up at this running' set nocount off end
-- this stored procedure has been engineered to allow searches of either muse or indexData -- connectors even though at this time only unselected indexData connectors may be added -- to the connector list for a particular customer. -- 2012.02.08: jjalbert make display name search only return left justified matches. CREATE procedure dbo.EAUI_GetUnselectedCustomerConnectors_102 @dblabel varchar(50), @custid varchar(10), @provider varchar(1), @browsefield varchar(50), @browseterm nvarchar(50) as begin select d.DbVerNo, [d].[DisplayName], [de].[ConnectorProvider], CASE [de].[ConnectorProvider] WHEN 'I' THEN indexData.ExternalDbID WHEN 'M' THEN muse.ExternalDbID ELSE '' END AS ConnectorSourcecID, ISNULL([de].[Free],0) as Free, ISNULL([de].[ConnectorType],'') as ConnectorType, ISNULL([de].[VendorName],'') as Vendor, ISNULL(d.DbName,'') as DbName FROM [dbo].[DbListExternalSource] de inner join [dbo].[DbList] d ON d.DbVerNo = de.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON indexData.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON muse.DbVerNo = d.DbVerNo WHERE d.DbVerNo not in (select [dbo].[CustExternalDbList].[DbVerNo] from [dbo].[CustExternalDbList] where [dbo].[CustExternalDbList].[CustNo] in(select [dbo].[Customer].[CustNo] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@custid)) and d.DbLabel = @dblabel and ((@provider = 'A') or ([de].[ConnectorProvider] = @provider)) and ( (@browseterm = '') OR ((@browsefield = 'ConnectorSourceID') AND (((muse.ExternalDbID like @browseterm+'%') AND ([de].[ConnectorProvider]='M')) OR ((indexData.ExternalDbID like @browseterm+'%') AND ([de].[ConnectorProvider] ='I')) )) OR ((@browsefield = 'DisplayName')AND(d.DisplayName like @browseterm+'%')) OR ((@browsefield = 'DbName')AND(d.DbName like @browseterm+'%')) OR ((@browsefield = 'Vendor')AND([de].[VendorName] like @browseterm+'%')) ) order by [d].[DisplayName] end; --dbo.EAUI_GetUnselectedCustomerConnectors_102 'live' ,'demo4', 'I', 'DbName',''
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbLimiter_DbLimiterDetail(@DbVerNo int, @LimiterNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS LimiterNo, [dbo].[DbLimiterDetail].[ControlTemplate], [dbo].[LimiterList].[LimiterId] AS LimiterId, [dbo].[LimiterList].[DbLabel] AS DbLabel FROM [dbo].[DbLimiterDetail] LEFT JOIN [dbo].[LimiterList] ON [dbo].[LimiterList].[LimiterNo] = [dbo].[DbLimiterDetail].[LimiterNo] WHERE [dbo].[DbLimiterDetail].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo ORDER BY DbVerNo, LimiterNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CustomParamTblDeleteItem_101] ( @UserID nvarchar(20), @UserIP varchar(30), @ParamNo int, @ItemID varchar(20)) AS BEGIN DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamTblInterfaceSMValues] WHERE [dbo].[CustomParamTblInterfaceSMValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblInterfaceSMValues].[ItemID]=@ItemID DELETE [dbo].[CustomParamTblInterfaceValues] WHERE [dbo].[CustomParamTblInterfaceValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblInterfaceValues].[ItemID]=@ItemID DELETE [dbo].[CustomParamTblItemsInterface] WHERE [dbo].[CustomParamTblItemsInterface].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblItemsInterface].[ItemID]=@ItemID DELETE [dbo].[CustomParamTblGlobalDefaultSMValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID]=@ItemID DELETE [dbo].[CustomParamTblGlobalDefaultSMDValues] WHERE [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID]=@ItemID DELETE [dbo].[CustomParamTblGlobalDefaultValues] WHERE [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblGlobalDefaultValues].[ItemID]=@ItemID DELETE [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblItems].[ItemID]=@ItemID EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Global Parameters', 'Delete Parameter Item',@ParamName, @ItemID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[UTIL_DisableDbCEAnyEnableDbOnCEYes_215] @userStoryId as varchar(10), @enabledDbName as varchar(10), @dbList as varchar(max), @interfaceList as varchar(max) AS BEGIN DECLARE @dbVerNo INT = dbo.EAIF_GetDbVerNo_70(@enabledDbName, 'live') DECLARE @paramNo INT = dbo.EAIF_GetCustomParamNumber_70('newContentAutoAddToProfile','P'); PRINT 'Starting disabling/enabling ' + @enabledDbName; IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name = 'BACK') BEGIN EXEC sp_executesql N'CREATE SCHEMA BACK'; END; IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'USProfNo') BEGIN CREATE TABLE BACK.USProfNo ( [UserStory] VARCHAR(10) NOT NULL, [ProfNo] INT NOT NULL, [Enable] BIT NOT NULL ); CREATE NONCLUSTERED INDEX IX_Back_USProfNo ON BACK.USProfNo (ProfNo); END ELSE IF (EXISTS(SELECT ProfNo FROM BACK.USProfNo WHERE UserStory = @userStoryID)) BEGIN PRINT 'Some backup data already exists.'; PRINT 'Please run the rollback script first.'; RETURN; END BEGIN TRY WITH AllProfNosAndFields AS ( SELECT P.ProfNo, P.MarketID, P.InterfaceID, P.Version, P.STMode, PD.Enable FROM dbo.Profile P WITH(NOLOCK) INNER JOIN [dbo].[ProfDatabase] PD WITH(NOLOCK) ON P.ProfNo = PD.ProfNo INNER JOIN DbList DbL WITH(NOLOCK) ON PD.DbVerNo = DbL.DbVerNo JOIN STRING_SPLIT(@dbList,',') ParDbList ON ParDbList.value = DbL.DbName JOIN STRING_SPLIT(@interfaceList,',') ParIntList ON ParIntList.value = P.InterfaceID WHERE DbL.DbLabel = 'live' ), GroupCTE AS ( SELECT ProfNo, MarketID, InterfaceID, Version, STMode, SUM(CONVERT(INT, Enable)) AS DbEnable FROM AllProfNosAndFields GROUP BY ProfNo,MarketID,InterfaceID,Version,STMode HAVING SUM(CONVERT(INT, Enable)) > 0 ), NewContentParamCTE AS ( SELECT ProfNo FROM ( SELECT ProfNo, case when t.IsDefault = 0 then t.value else (case when (t.InterfaceID = 'eds' OR t.InterfaceID = 'wsapi') AND t.Version = 'live' then 0 else dbo.EAIF_CheckIfItIsDefaultProfile_131(ProfNo) end) end AS ParamValue FROM ( SELECT GroupCTE.ProfNo, GroupCTE.InterfaceID, GroupCTE.Version, coalesce(d.ParamValue,CPD.DefValue,e.DefValue,0) as value, case when d.ParamValue IS NULL then 1 else 0 end as IsDefault FROM GroupCTE LEFT OUTER JOIN CustomParamDefaults CPD WITH(NOLOCK) ON CPD.MarketID = GroupCTE.MarketID AND CPD.InterfaceID = GroupCTE.InterfaceID AND CPD.STMode = GroupCTE.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d WITH(NOLOCK) ON d.TargetNo = GroupCTE.ProfNo AND d.ParamNo = @paramNo INNER JOIN [dbo].[CustomParamList] e WITH(NOLOCK) ON e.ParamNo = @paramNo WHERE CPD.ParamNo = @paramNo AND CPD.Version = 'live') t ) t2 WHERE t2.ParamValue = 1 ) UPDATE PD SET Enable = t.Enable OUTPUT @userStoryId, inserted.ProfNo, ~inserted.Enable INTO BACK.USProfNo FROM ProfDatabase PD INNER JOIN ( SELECT allProf.ProfNo, 0 AS Enable FROM AllProfNosAndFields allProf LEFT JOIN NewContentParamCTE newCeProfs ON allProf.ProfNo = newCeProfs.ProfNo WHERE newCeProfs.ProfNo IS NULL UNION ALL SELECT ProfNo,1 AS Enable FROM NewContentParamCTE ) t ON PD.ProfNo = t.ProfNo WHERE DbVerNo = @dbVerNo AND PD.Enable <> t.Enable END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000) DECLARE @ErrorSeverity INT DECLARE @ErrorState INT SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE() RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState) RETURN END CATCH --Verification part IF (EXISTS(SELECT PD.ProfNo FROM BACK.USProfNo back INNER JOIN ProfDatabase PD ON back.ProfNo = PD.ProfNo WHERE PD.DbVerNo = @dbVerNo AND PD.Enable = back.Enable AND back.UserStory = @userStoryId )) BEGIN RAISERROR('Verification failed. Some %s for profiles with New Content Automatically Enabled have not been enabled.', 16, -1, @enabledDbName) RETURN END PRINT @enabledDbName + ' databases for profiles with New Content Automatically Enabled = No have been disabled successfully.' PRINT @enabledDbName + ' databases for profiles with New Content Automatically Enabled = Yes have been enabled successfully.' END
Create Procedure [dbo].[EAIP_CopyInterfaceDbFeaturesByCategory_103](@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10), @Category varchar(20)='') as begin Begin Try Begin transaction if @Category <> '' Begin Delete [dbo].[InterfaceDbFeatureValues] From [dbo].[InterfaceDbFeatureValues] idbfv join [dbo].[FeatureList] fl on idbfv.FeatureNo=fl.FeatureNo and fl.Category=@Category where [idbfv].[InterfaceID]=@InterfaceIDTo and [idbfv].[Version]=@VersionTo Delete [dbo].[InterfaceDbFeatures] From [dbo].[InterfaceDbFeatures] idbf join [dbo].[FeatureList] fl on idbf.FeatureNo=fl.FeatureNo and fl.Category=@Category where [idbf].[InterfaceID]=@InterfaceIDTo and [idbf].[Version]=@VersionTo Insert [dbo].[InterfaceDbFeatures] Select @InterfaceIDTo, @VersionTo, fl.FeatureNo From [dbo].[InterfaceDbFeatures] idbf join [dbo].[FeatureList] fl on idbf.FeatureNo=fl.FeatureNo and fl.Category=@Category where [idbf].[InterfaceID]=@InterfaceIDFrom and [idbf].[Version]=@VersionFrom Insert [dbo].[InterfaceDbFeatureValues] Select @InterfaceIDTo, @VersionTo, fl.FeatureNo, [idbfv].[ItemNo], [idbfv].[FieldValueXml] From [dbo].[InterfaceDbFeatureValues] idbfv join [dbo].[FeatureList] fl on idbfv.FeatureNo=fl.FeatureNo and fl.Category=@Category where [idbfv].[InterfaceID]=@InterfaceIDFrom and [idbfv].[Version]=@VersionFrom end else begin Delete [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceIDTo and [dbo].[InterfaceDbFeatureValues].[Version]=@VersionTo Delete [dbo].[InterfaceDbFeatures] where [dbo].[InterfaceDbFeatures].[InterfaceID]=@InterfaceIDTo and [dbo].[InterfaceDbFeatures].[Version]=@VersionTo Insert [dbo].[InterfaceDbFeatures] Select @InterfaceIDTo, @VersionTo, [dbo].[InterfaceDbFeatures].[FeatureNo] From [dbo].[InterfaceDbFeatures] where [dbo].[InterfaceDbFeatures].[InterfaceID]=@InterfaceIDFrom and [dbo].[InterfaceDbFeatures].[Version]=@VersionFrom Insert [dbo].[InterfaceDbFeatureValues] Select @InterfaceIDTo, @VersionTo, [dbo].[InterfaceDbFeatureValues].[FeatureNo], [dbo].[InterfaceDbFeatureValues].[ItemNo], [dbo].[InterfaceDbFeatureValues].[FieldValueXml] From [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceIDFrom and [dbo].[InterfaceDbFeatureValues].[Version]=@VersionFrom end Commit transaction end try Begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End catch end
CREATE PROCEDURE [dbo].[EAUI_GetParentsDocTypeList_77] AS BEGIN SELECT dtl.DocTypeNo, dtl.DocTypeID, dtc.Caption FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo WHERE dtc.LangCode = 'en' AND dtl.ParentDocTypeNo is null AND dtl.Category = 'R' Order BY dtc.Caption END
CREATE PROCEDURE EATL_UpdateSearchThemes_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ,@Lang VARCHAR(10) ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,ThemeID VARCHAR(20) ,Caption NVARCHAR(max) ,ImgAltText NVARCHAR(255) ) INSERT INTO #Objects ( ThemeID ,Caption ,ImgAltText ) SELECT m.c.value('(./ThemeId)[1]', 'varchar(20)') ,m.c.value('(./Caption)[1]', 'nvarchar(max)') ,m.c.value('(./ImgAltText)[1]', 'nvarchar(255)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@ThemeID VARCHAR(20) ,@Caption NVARCHAR(255) ,@ImgAltText NVARCHAR(255) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @ThemeID = ThemeID ,@Caption = Caption ,@ImgAltText = ImgAltText FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateSearchThemes_83] @UserID ,@UserIP ,@ThemeID ,@Caption ,@ImgAltText ,@Lang SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceScreens_76]( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[ScreenID],[dbo].[InterfaceScreen].[LibSearchOption],[dbo].[InterfaceScreen].[LibBrowseOption],[dbo].[InterfaceScreen].[LibDbLimiters],[dbo].[InterfaceScreen].[LibLocalLimiters], dbo.EAIF_GetInterfaceLimiterGroups_76([dbo].[InterfaceScreen].[IntfScreenNo]) as LimiterGroups FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version END
--sql content merged from file: \StoredProcedures\AUTH_GetInterfaceCustomParam_99.sql CREATE PROCEDURE [dbo].[AUTH_GetInterfaceCustomParam_99] ( @InterfaceID varchar(10), @Version varchar(10), @ParamName varchar(100) ) AS BEGIN SELECT * FROM [dbo].[CustomParamList] p JOIN [dbo].[InterfaceParamList] ip ON p.ParamNo=ip.ParamNo WHERE ip.InterfaceID=@InterfaceID AND ip.Version=@Version AND p.ParamName=@ParamName END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDocTypeListByOrder_77](@InterfaceID varchar(10),@Version varchar(10),@SeqNo int)AS BEGIN SELECT idt.IntfDocTypeNo, dtl.DocTypeID, IsNULL(idtc.Caption, dtc.Caption) AS Caption, sm.Description AS Category, pdtl.DocTypeID AS ParentID, idt.SeqNo FROM [dbo].[InterfaceDocType] idt LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idt.IntfDocTypeNo = idtc.IntfDocTypeNo AND idtc.LangCode = 'en' INNER JOIN [dbo].[DocTypeList] dtl ON idt.DocTypeNo = dtl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE idt.InterfaceID = @InterfaceID AND idt.Version=@Version AND dtc.LangCode='en' AND idt.SeqNo >=@SeqNo AND sm.FieldName = 'DocTypeCategory' ORDER BY idt.SeqNo END
CREATE PROCEDURE [dbo].[EAIPO_SplitIPRange_70](@IPAddress varchar(40), @IPStem varchar(30) OUT, @BgnNo int OUT, @EndNo int OUT, @ErrMessage varchar(255) OUT) AS BEGIN DECLARE @FirstIP varchar(30) DECLARE @SecondIP varchar(30) DECLARE @DotPos int DECLARE @IPOctet varchar(10) SELECT @ErrMessage='' SELECT @DotPos=CHARINDEX('-',@IPAddress) IF @DotPos <= 0 BEGIN SELECT @ErrMessage='Not an IP Range.' RETURN END SELECT @FirstIP=SUBSTRING(@IPAddress,1,@DotPos-1) SELECT @SecondIP=SUBSTRING(@IPAddress,@DotPos+1,30) SELECT @DotPos=CHARINDEX('.',REVERSE(@FirstIP)) IF @DotPos = 0 BEGIN SELECT @ErrMessage='The IP Address Range is too wide.' RETURN END SELECT @IPOctet=RIGHT(@FirstIP,@DotPos-1) SELECT @BgnNo=ISNUMERIC(@IPOctet) IF @BgnNo = 0 BEGIN SELECT @ErrMessage='All octets in the IP Address must be within the range of 0 to 255.' RETURN END SELECT @BgnNo=CONVERT(int,@IPOctet) SELECT @FirstIP=SUBSTRING(@FirstIP,1,(DATALENGTH(@FirstIP)-@DotPos+1)) SELECT @DotPos=CHARINDEX('.',REVERSE(@SecondIP)) IF @DotPos = 0 BEGIN SELECT @IPOctet=@SecondIP SELECT @SecondIP=@FirstIP END ELSE BEGIN SELECT @IPOctet=RIGHT(@SecondIP,@DotPos-1) SELECT @SecondIP=SUBSTRING(@SecondIP,1,(DATALENGTH(@SecondIP)-@DotPos+1)) END SELECT @EndNo=ISNUMERIC(@IPOctet) IF @EndNo = 0 BEGIN SELECT @ErrMessage='All octets in the IP Address must be within the range of 0 to 255.' RETURN END SELECT @EndNo=CONVERT(int,@IPOctet) IF @FirstIP <> @SecondIP BEGIN SELECT @ErrMessage='The stem of the begin and end addresses should match.' RETURN END IF @EndNo < @BgnNo BEGIN SELECT @ErrMessage='The begin address should be smaller than the end address.' RETURN END SELECT @IPStem=@FirstIP END
CREATE PROCEDURE [dbo].[EPCAS_GetCliDatabase](@ShortDBName varchar(10), @Version int) AS BEGIN /* Second parameter @Version int, comes as DbList.DbVerNo */ --IF @Version=-1 SELECT @Version=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]='live' DECLARE @HasFullText bit, @AllowPrinting bit, @AllowDownloads bit, @ImageLinks bit, @RelevancyRanking bit, @PDFAllowed bit SET @HasFullText = CONVERT(bit, dbo.EAIF_GetDbParamScalarValue_70(@Version, 'fullTextAllowed')) SET @AllowPrinting = CONVERT(bit, dbo.EAIF_GetDbParamScalarValue_70(@Version, 'printingAllowed')) SET @AllowDownloads = CONVERT(bit, dbo.EAIF_GetDbParamScalarValue_70(@Version, 'downloadAllowed')) SET @ImageLinks = CONVERT(bit, dbo.EAIF_GetDbParamScalarValue_70(@Version, 'imageLinksAllowed')) SET @RelevancyRanking = CONVERT(bit, dbo.EAIF_GetDbParamScalarValue_70(@Version, 'relevancyRankAllowed')) SET @PDFAllowed = CONVERT(bit, dbo.EAIF_GetDbParamScalarValue_70(@Version, 'pdfAllowed')) SELECT @Version as 'MasterDBList', @Version as 'DbVersion', a.DisplayName as 'LongDBName', a.DbType as 'DatabaseType', @HasFullText as 'HasFullText', @AllowPrinting as 'AllowPrinting', @AllowDownloads as 'AllowDownloads', @ImageLinks as 'ImageLinks', @RelevancyRanking as 'RelevancyRanking', @PDFAllowed as 'PDFAllowed', b.IconBitmap as 'IconFile' FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[DbIcon] b ON a.DbVerNo=b.DbVerNo WHERE a.DbVerNo=@Version END
CREATE PROCEDURE [dbo].[EAUI_GetDbFieldGroupExclusionList_70](@DbVerNo int) AS BEGIN SELECT a.FieldGroupNo, a.Description + ' (' + a.FieldGroupId + ')' as 'FieldGroupId' FROM [dbo].[FieldGroupList] a LEFT OUTER JOIN [dbo].[DbFieldGroup] b ON a.FieldGroupNo=b.FieldGroupNo AND b.DbVerNo=@DbVerNo WHERE b.FieldGroupNo IS NULL ORDER BY a.Description END
CREATE PROCEDURE [dbo].[EAUI_GetSystemLink_70](@ItemName varchar(255) ) AS BEGIN EXEC [dbo].[EAUI_GetCustomerParamXmlValue_70] 'system','systemCustomLink', @ItemName END
Create Procedure [dbo].[EAIP_NotifyDbPromote_161](@DbName varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10), @UserID varchar(20)) as Begin -- get list of database to be notified Declare @TempDbListTable Table (LowerDbVerNo int, UpperDbVerNo int, MainDb bit, Authority bit, Subset bit, NewDb bit Default(0)) Insert @TempDbListTable Select * from dbo.EAIF_GetPromoteDbList_161(@DbName, @OldDbLabel, @NewDbLabel, 1, 1) -- notify main database DECLARE @Query varchar(250) SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' Declare @MainDbName varchar(10) Declare @MainDbVerNo int select @MainDbName=dbl.DbName, @MainDbVerNo=dbl.DbVerNo From @TempDbListTable t join [dbo].[DbList] dbl on t.UpperDbVerNo=dbl.DbVerNo where t.MainDb=1 IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@MainDbVerNo))>0 ) SET @Query = @Query+'&SegName='+ dbo.EAIF_GetDbPromoteSegmentList_80(@MainDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PromoteDatabase',@Query,@MainDbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'DatabaseInfo', 'item=db&db={param1}&label={param2}',@MainDbName,@NewDbLabel IF EXISTS (SELECT 1 FROM dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@MainDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PickupLoc', 'item=db&db={param1}&label={param2}',@MainDbName,@NewDbLabel -- notify all Authorities Declare @TempAuthDb table (ItemIndex int identity(1,1) PRIMARY KEY, DbName varchar(10)) Insert @TempAuthDb(DbName) Select dbl.DbName From @TempDbListTable t join [dbo].[DbList] dbl on t.UpperDbVerNo=dbl.DbVerNo where t.Authority=1 DECLARE @ItemCount int, @ItemIndex int DECLARE @AuthDbName varchar(10) SELECT @ItemCount = count(*) FROM @TempAuthDb SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @AuthDbName=DbName FROM @TempAuthDb Where ItemIndex=@ItemIndex EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'DatabaseInfo', 'item=db&db={param1}&label={param2}',@AuthDbName,@NewDbLabel END -- notify all Subsets Declare @TempSubsetDb table (ItemIndex int identity(1,1) PRIMARY KEY, DbName varchar(10), DbVerNo int NULL) Insert @TempSubsetDb(DbName, DbVerNo) Select dbl.DbName, dbl.DbVerNo From @TempDbListTable t Join [dbo].[DbList] dbl on t.UpperDbVerNo=dbl.DbVerNo where t.Subset=1 DECLARE @SubsetDbName varchar(10) Declare @SubsetDbVerNo int SELECT @ItemCount = count(*) FROM @TempSubsetDb SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @SubsetDbName=DbName FROM @TempSubsetDb Where ItemIndex=@ItemIndex Select @SubsetDbVerNo=DbVerNo FROM @TempSubsetDb Where ItemIndex=@ItemIndex SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo))>0 ) SET @Query = @Query+'&SegName='+ dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PromoteDatabase',@Query,@SubsetDbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'DatabaseInfo', 'item=db&db={param1}&label={param2}',@SubsetDbName,@NewDbLabel END End
CREATE PROCEDURE [dbo].[EAUI_UpdateDbParamXmlValue_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @ParamName varchar(100), @ItemName varchar(255), @ParamValue nvarchar(max), @Mode varchar(6)='') AS BEGIN DECLARE @ParamNo smallint DECLARE @ActivityDesc varchar(255) IF (@Mode='add') SELECT @ParamNo = a.ParamNo, @ActivityDesc='Add '+b.PromptText FROM [dbo].[DbParamList] a LEFT JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo=b.ParamNo WHERE a.ParamName=@ParamName ELSE SELECT @ParamNo = a.ParamNo, @ActivityDesc='Update '+b.PromptText FROM [dbo].[DbParamList] a LEFT JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo=b.ParamNo WHERE a.ParamName=@ParamName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,@ActivityDesc,'',@ItemName EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, @ItemName,@ParamValue END
CREATE FUNCTION [dbo].[EAIF_GetLocalTitleDates_70]( @ColNo int, @TitleNo int ) RETURNS varchar(2000) AS BEGIN DECLARE @DateString varchar (2000) SET @DateString=null SELECT @DateString=COALESCE(@DateString+'|','')+[dbo].[LocalDate].[FromDate]+'-'+IsNull([dbo].[LocalDate].[ToDate],'99999999') FROM [dbo].[LocalDate] WITH (NOLOCK) WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo ORDER BY [dbo].[LocalDate].[FromDate] RETURN @DateString END
CREATE PROCEDURE [dbo].[EAUI_GetConfigDbList_70](@ServerDbMode char(1), @ApplicationNo int, @ServerNo int) AS BEGIN IF( @ServerDbMode='D' ) BEGIN SELECT DISTINCT b.DisplayName, a.DbName FROM dbo.ConfigDb a INNER JOIN dbo.DbList b ON a.DbName = b.DbName WHERE a.ApplicationNo = @ApplicationNo AND a.ServerNo = @ServerNo ORDER BY b.DisplayName END ELSE BEGIN SELECT DISTINCT b.DisplayName, a.DbName, a.DbLabel FROM dbo.ConfigDb a INNER JOIN dbo.DbList b ON a.DbName = b.DbName AND a.DbLabel = b.DbLabel WHERE a.ApplicationNo = @ApplicationNo AND a.ServerNo = @ServerNo ORDER BY b.DisplayName END END
--sql content merged from file: \StoredProcedures\EAIP_AddMDbLimiterExternalSource_92.sql -- 2011.12.09: jjalbert search strings become nvarchar for multibyte CREATE PROCEDURE [dbo].[EAIP_AddMDbLimiterExternalSource_102] (@UserId NVARCHAR(20), @UserIp VARCHAR(30), @LimiterID VARCHAR(10), @SourceType CHAR(1), @SearchString_M NVARCHAR(100), @SearchString_I NVARCHAR(100), @DbLabel VARCHAR(10), @DefValue VARCHAR(255), @SeqNo INT, @Caption NVARCHAR(100)) AS DECLARE @limiterNo int = -1 IF EXISTS (SELECT 1 FROM [dbo].[MDbLimitersExternalSource] WHERE [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID) BEGIN RAISERROR('The LimiterID (%s) already exists in MDbLimitersExternalSource', 16, -1, @LimiterID) RETURN END BEGIN TRY BEGIN TRANSACTION INSERT [dbo].[MDbLimitersExternalSource] ([dbo].[MDbLimitersExternalSource].[LimiterID], [dbo].[MDbLimitersExternalSource].[ExternalSourceType], [dbo].[MDbLimitersExternalSource].[ExternalSearchString_M],[dbo].[MDbLimitersExternalSource].[ExternalSearchString_I], [dbo].[MDbLimitersExternalSource].[DbLabel], [dbo].[MDbLimitersExternalSource].[DefValue], [dbo].[MDbLimitersExternalSource].[SeqNo]) VALUES (@LimiterID, @SourceType, @SearchString_M, @SearchString_I,@DbLabel, @DefValue, @SeqNo) SELECT @LimiterNo=[dbo].[MDbLimitersExternalSource].[LimiterNo] FROM [dbo].[MDbLimitersExternalSource] WHERE [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID IF (@limiterNo = -1) BEGIN ROLLBACK TRANSACTION RETURN -3 END; INSERT [dbo].[MDbLimitersExternalSourceCaption] ([dbo].[MDbLimitersExternalSourceCaption].[LimiterNo], [dbo].[MDbLimitersExternalSourceCaption].[LangCode], [dbo].[MDbLimitersExternalSourceCaption].[Caption]) VALUES (@LimiterNo, 'en', @Caption) COMMIT TRANSACTIOn EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'MDbLimitersExternalSource', 'Add MDbLimitersExternalSource', @LimiterID, @Caption RETURN 1 END TRY BEGIN CATCH ROLLBACK TRANSACTION RETURN -2 END CATCH
--sql content merged from file: \StoredProcedures\EAIP_GetCustsWithExternalSource_92.sql CREATE Procedure [dbo].[EAIP_GetCustsWithExternalSource_92] @SourceType char(1), @Retry bit as Begin Declare @Threshold int Select @Threshold=[EASUPPORT].[dbo].[AdminSupportState].[ParamNumValue] from EASUPPORT.dbo.AdminSupportState where [EASUPPORT].[dbo].[AdminSupportState].[ParamName]='ExternalSourceResyncThreshold' if @Retry=0 Begin select distinct c.CustID, [c].[CustName], [esrs].[LastResyncDate], [esrs].[LastResyncStatus] from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo left outer join EASUPPORT.dbo.ExternalSourceResyncStatus esrs on c.CustID=esrs.CustID where po.SourceType=@SourceType and DateDiff(d, getdate(), cs.StartDate) <= @Threshold and cs.EndDate>=GETDATE() End Else Begin select distinct c.CustID, [c].[CustName], [esrs].[LastResyncDate], [esrs].[LastResyncStatus] from [dbo].[Customer] c join EASUPPORT.dbo.CustSubscription cs on c.CustID=cs.CustID join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo left outer join EASUPPORT.dbo.ExternalSourceResyncStatus esrs on c.CustID=esrs.CustID where po.SourceType=@SourceType and DateDiff(d, getdate(), cs.StartDate) <= @Threshold and cs.EndDate>=GETDATE() and [esrs].[LastResyncStatus]='F' End End
CREATE PROCEDURE [dbo].[EAUI_GetUserDefinedFields_70](@ConsID varchar(10),@SiteID varchar(10)) AS BEGIN DECLARE @UserDefined1 nvarchar(255) DECLARE @UserDefined2 nvarchar(255) SELECT @UserDefined1=[dbo].[CustDefField].[UserDefined1], @UserDefined2=[dbo].[CustDefField].[UserDefined2] FROM [dbo].[CustDefField] WHERE [dbo].[CustDefField].[CustID]=@SiteID SELECT dbo.EAIF_GetCustomerParamScalarValue_70(@ConsID,'udLabel1') as 'UDLabel1',ISNULL(@UserDefined1,'') AS UserDefined1, dbo.EAIF_GetCustomerParamScalarValue_70(@ConsID,'udLabel2') as 'UDLabel2',ISNULL(@UserDefined2,'') AS UserDefined2 END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbAuthority(@MainDbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS MainDbVerNo, 0 AS AuthDbVerNo, [dbo].[DbAuthority].[OwnedFlag], [dbo].[DbAuthority].[SeqNo], [dbo].[DbList].[DbName] AS AuthDbName, [dbo].[DbList].[DbLabel] AS AuthDbLabel FROM [dbo].[DbAuthority] LEFT JOIN [dbo].[DbList] ON [dbo].[DbList].[DbVerNo] = [dbo].[DbAuthority].[AuthDbVerNo] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @MainDbVerNo ORDER BY MainDbVerNo, AuthDbVerNo, [dbo].[DbAuthority].[OwnedFlag], [dbo].[DbAuthority].[SeqNo] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_CustomParamTblUpdateItemDb_101]( @UserID nvarchar(20), @UserIP varchar(30), @ParamNo int, @ItemID varchar(20), @DbList varchar(8000)) AS BEGIN DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo BEGIN TRY BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Global Parameters', 'Update dblist for parameter Item',@ParamName, @ItemID, @DbList COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[UTIL_DisableDbCEAnyEnableDbOnCEYes_ROLLBACK_215] @userStoryId as varchar(10), @DbName VARCHAR(10) AS BEGIN DECLARE @dbVerNo INT; SELECT @DbVerNo = [dbo].[EAIF_GetDbVerNo_70](@DbName, 'live'); IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'USProfNo') BEGIN PRINT 'BACK.USProfNo does not exist. Unable to rollback.'; RETURN END BEGIN TRY PRINT 'Restoring ' + @DbName + ' databases...'; UPDATE pdb SET [Enable] = back.Enable FROM [dbo].[ProfDatabase] AS pdb INNER JOIN BACK.USProfNo AS back ON pdb.ProfNo = back.ProfNo AND back.UserStory = @userStoryId WHERE pdb.DbVerNo = @dbVerNo PRINT 'Done'; END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE(); DECLARE @ErrorSeverity INT = ERROR_SEVERITY(); DECLARE @ErrorState INT = ERROR_STATE(); PRINT 'FAILURE: ' + @ErrorMessage; RAISERROR ( @ErrorMessage ,@ErrorSeverity ,@ErrorState ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceDocTypeCaptions_77] (@IntfDocTypeNo int, @CaptionLangList nvarchar(max), @MouseOverLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN --Begin of Captions and Mouse over texts init DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(8000) DECLARE @MouseOverList nvarchar(max) DECLARE @MLangList varchar(8000) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim char(3) SET @LangDelim ='|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=Convert(varchar(8000),SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList))) SET @MouseOverList=SUBSTRING(@MouseOverLangList, 1, CHARINDEX(@LangDelim,@MouseOverLangList)-1) SET @MLangList=Convert(varchar(8000),SUBSTRING(@MouseOverLangList, CHARINDEX(@LangDelim,@MouseOverLangList)+3, LEN(@MouseOverLangList))) --End of Captions and Mouse over texts init DELETE FROM [dbo].[InterfaceDocTypeCaption] WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo]=@IntfDocTypeNo IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceDocTypeCaption]([dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo],[dbo].[InterfaceDocTypeCaption].[LangCode],[dbo].[InterfaceDocTypeCaption].[Caption],[dbo].[InterfaceDocTypeCaption].[MouseOverText]) SELECT @IntfDocTypeNo, cp.Value, ISNULL(cp.Item, ''), ISNULL(mo.Item,'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp LEFT OUTER JOIN dbo.EAIF_GetItemValueTable_70( @MouseOverList,@MLangList,@ValDelim) mo ON cp.Value=mo.Value AND cp.Item <>'' WHERE cp.Value<>'' END
CREATE PROCEDURE [dbo].[EAUI_GetParentServiceList_70](@ChildID varchar(10)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') SELECT b.CustID AS CustID, a.ItemName, a.ParamValue FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Customer] b ON a.TargetNo=b.CustNo INNER JOIN [dbo].[CustomerGroup] c ON b.CustID=c.ParentID WHERE [a].[ParamLevel]='C' AND [a].[ParamNo] = @ParamNo AND c.ChildID=@ChildID and b.CustID <> @ChildID END
CREATE PROCEDURE EATL_UpdateShortDescription_Batch ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@Objects XML ) AS BEGIN CREATE TABLE #Objects ( ID INT identity(1, 1) ,DbVerNo INT ,DbLabel VARCHAR(10) ,DbName VARCHAR(10) ,Description XML ,LangCode VARCHAR(10) ) INSERT INTO #Objects ( DbVerNo ,DbLabel ,DbName ,Description ,LangCode ) SELECT m.c.value('(./DbVerNo)[1]', ' int') ,m.c.value('(./DbLabel)[1]', ' varchar(10)') ,m.c.value('(./DbName)[1]', 'varchar(10)') ,m.c.query('(./Description)[1]/text()') ,m.c.value('(./LangCode)[1]', 'varchar(10)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@DbVerNo INT ,@DbLabel VARCHAR(10) ,@DbName VARCHAR(10) ,@LangDescriptionXML XML ,@LangCode VARCHAR(10) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @DbVerNo = DbVerNo ,@DbLabel = DbLabel ,@DbName = DbName ,@LangDescriptionXML = Description ,@LangCode = LangCode FROM #Objects WHERE ID = @i DECLARE @ParamNo SMALLINT ,@ParamName VARCHAR(100) = 'shortDescription' ,@ItemName VARCHAR(255) = '' ,@AllDescriptionsXML XML ,@AllDescriptionsStr NVARCHAR(max) ,@LangDescriptionStr NVARCHAR(1024) ,@shortDescriptionXml AS XML = '' SELECT @ParamNo = dbo.EAIF_GetDbParamNumber_70(@ParamName) IF EXISTS ( SELECT 1 FROM [dbo].[DbParamXmlValues] WHERE [DbVerNo] = @DbVerNo AND [ParamNo] = @ParamNo AND [ItemName] = @ItemName ) BEGIN SELECT @AllDescriptionsXML = cast([ParamValue] AS XML) FROM [dbo].[DbParamXmlValues] WHERE [DbVerNo] = @DbVerNo AND [ParamNo] = @ParamNo AND [ItemName] = @ItemName END ELSE BEGIN SET @AllDescriptionsXML = convert(XML, ' ') END set @shortDescriptionXml.modify('insert sql:variable("@LangDescriptionXML") into (/shortDescription)[1]'); set @shortDescriptionXml.modify('insert attribute lang {sql:variable("@LangCode")} into (/shortDescription)[1]'); SET @AllDescriptionsXML.modify('delete /shortDescriptions/shortDescription[@lang eq sql:variable("@LangCode")]'); SET @AllDescriptionsXML.modify('insert sql:variable("@shortDescriptionXml") into (/shortDescriptions)[1]'); SET @AllDescriptionsStr = cast(@AllDescriptionsXML AS NVARCHAR(max)); SET @LangDescriptionStr = cast(@LangDescriptionXML AS nvarchar(max)) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP ,'Database' ,'Translate Parameter' ,@DbName ,@DbLabel ,@ParamName ,@LangDescriptionStr EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo ,@ParamNo ,@ItemName ,@AllDescriptionsStr SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceSearchThemes_83]( @InterfaceID varchar(10), @Version varchar(10) ) AS BEGIN SET NOCOUNT ON; IF EXISTS (SELECT 1 FROM [dbo].[StagingInterfaceSearchThemes] WHERE [dbo].[StagingInterfaceSearchThemes].[InterfaceID] = @InterfaceID AND [dbo].[StagingInterfaceSearchThemes].[Version] = @Version ) BEGIN IF ( @InterfaceID IN ( 'pov', 'serrc', 'hcrc', 'rrc', 'ell', 'hrc', 'scirc' ) ) --Themes sorted by Caption SELECT [dbo].[StagingInterfaceSearchThemes].[ThemeID] ,[dbo].[StagingInterfaceSearchThemes].[ParentThemeID] ,[dbo].[StagingInterfaceSearchThemes].[Caption] ,[dbo].[StagingInterfaceSearchThemes].[MouseOverText] ,[dbo].[StagingInterfaceSearchThemes].[Description] ,[dbo].[StagingInterfaceSearchThemes].[SearchString] ,[dbo].[StagingInterfaceSearchThemes].[Image] ,[dbo].[StagingInterfaceSearchThemes].[CustomAttributes] ,[dbo].[StagingInterfaceSearchThemes].[Show] ,[dbo].[StagingInterfaceSearchThemes].[SeqNo] ,[dbo].[StagingInterfaceSearchThemes].[FeatureName] ,[dbo].[StagingInterfaceSearchThemes].[Lineage] FROM [dbo].[StagingInterfaceSearchThemes] WHERE [dbo].[StagingInterfaceSearchThemes].[InterfaceID] = @InterfaceID AND [dbo].[StagingInterfaceSearchThemes].[Version] = @Version ORDER BY [dbo].[StagingInterfaceSearchThemes].[Caption] ELSE --Themes sorted by ThemeID SELECT [dbo].[StagingInterfaceSearchThemes].[ThemeID] ,[dbo].[StagingInterfaceSearchThemes].[ParentThemeID] ,[dbo].[StagingInterfaceSearchThemes].[Caption] ,[dbo].[StagingInterfaceSearchThemes].[MouseOverText] ,[dbo].[StagingInterfaceSearchThemes].[Description] ,[dbo].[StagingInterfaceSearchThemes].[SearchString] ,[dbo].[StagingInterfaceSearchThemes].[Image] ,[dbo].[StagingInterfaceSearchThemes].[CustomAttributes] ,[dbo].[StagingInterfaceSearchThemes].[Show] ,[dbo].[StagingInterfaceSearchThemes].[SeqNo] ,[dbo].[StagingInterfaceSearchThemes].[FeatureName] ,[dbo].[StagingInterfaceSearchThemes].[Lineage] FROM [dbo].[StagingInterfaceSearchThemes] WHERE [dbo].[StagingInterfaceSearchThemes].[InterfaceID] = @InterfaceID AND [dbo].[StagingInterfaceSearchThemes].[Version] = @Version ORDER BY [dbo].[StagingInterfaceSearchThemes].[ThemeID] RETURN END; WITH Themes (ThemeID, ParentThemeID, SearchString, CustomAttributes, Image, Lineage, InterfaceThemeNo) AS ( --get parent themes SELECT st.ThemeID, st.ParentThemeID, st.SearchString, st.CustomAttributes, st.Image, st.Lineage, i.InterfaceThemeNo FROM [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) INNER JOIN [dbo].[SearchTheme] st WITH (NOLOCK) ON st.ThemeID = i.ThemeID WHERE i.InterfaceID=@InterfaceID AND i.Version=@Version AND st.ParentThemeID is null UNION ALL --using the parent themes, get all child themes from all levels SELECT st.ThemeID, st.ParentThemeID, st.SearchString, st.CustomAttributes, st.Image, st.Lineage, null FROM Themes t INNER JOIN [dbo].[SearchTheme] st (NOLOCK) ON st.ParentThemeID = t.ThemeID ) SELECT * INTO #ParentChildThemes FROM Themes IF ( @InterfaceID in ('pov','serrc','hcrc','rrc', 'ell','hrc','scirc') ) BEGIN SELECT pct.ThemeID, ISNULL(pct.ParentThemeID, '') ParentThemeID, CAST([CaptionInfo].Caption as XML).value(N'/', 'nvarchar(max)') [Caption], CAST([CaptionInfo].MouseOverText as XML).value(N'/', 'nvarchar(max)') [MouseOverText], CAST([CaptionInfo].[Description] as XML).value(N'/', 'nvarchar(max)') [Description], SearchString = CASE WHEN i.SearchString IS NOT NULL AND i.SearchString <> '' THEN i.SearchString WHEN pct.SearchString IS NOT NULL AND pct.SearchString <> '' THEN pct.SearchString ELSE '' END, Image = CASE WHEN i.Image IS NOT NULL AND i.Image <> '' THEN i.Image WHEN pct.Image IS NOT NULL AND pct.Image <> '' THEN pct.Image ELSE '' END, CustomAttributes = CASE WHEN i.CustomAttributes IS NOT NULL THEN i.CustomAttributes WHEN pct.CustomAttributes IS NOT NULL THEN pct.CustomAttributes ELSE '' END, ISNULL(i.Show,1) AS Show, ISNULL(i.SeqNo, 1) SeqNo, ISNULL(ifl.FeatureName, '') FeatureName, ISNULL(pct.Lineage, '') Lineage FROM #ParentChildThemes pct LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i (NOLOCK) ON i.InterfaceID=@InterfaceID AND i.Version=@Version AND pct.ThemeID = i.ThemeID LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl (NOLOCK) ON i.InterfaceFeatureNo=ifl.InterfaceFeatureNo LEFT OUTER JOIN (SELECT DISTINCT pct1.ThemeID, (SELECT CASE WHEN sc.LangCode IS NULL THEN N'' WHEN ic.Caption IS NOT NULL AND ic.Caption <> '' THEN N'' + ic.Caption + N' ' WHEN sc.Caption IS NOT NULL AND sc.Caption <> '' THEN N'' + sc.Caption + N' ' ELSE N'' END AS Caption FROM [dbo].[SearchThemeCaption] sc (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic (NOLOCK) ON ic.InterfaceThemeNo = pct1.InterfaceThemeNo AND ISNULL(ic.LangCode, '') = ISNULL(sc.LangCode, '') WHERE sc.ThemeID = pct1.ThemeID FOR XML PATH ('')) Caption, (SELECT CASE WHEN sc.LangCode IS NULL THEN N'' WHEN ic.ImageAltText IS NOT NULL AND ic.ImageAltText <> '' THEN N'' + ic.ImageAltText + N' ' WHEN sc.ImageAltText IS NOT NULL AND sc.ImageAltText <> '' THEN N'' + sc.ImageAltText + N' ' ELSE N'' END AS MouseOverText FROM [dbo].[SearchThemeCaption] sc (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic (NOLOCK) ON ic.InterfaceThemeNo = pct1.InterfaceThemeNo AND ISNULL(ic.LangCode, '') = ISNULL(sc.LangCode, '') WHERE sc.ThemeID = pct1.ThemeID FOR XML PATH ('')) MouseOverText, (SELECT CASE WHEN sc.LangCode IS NULL THEN N'' WHEN ic.Description IS NOT NULL AND ic.Description <> '' THEN N'' + ic.Description + N' ' WHEN sc.Description IS NOT NULL AND sc.Description <> '' THEN N'' + sc.Description + N' ' ELSE N'' END AS [Description] FROM [dbo].[SearchThemeCaption] sc (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic (NOLOCK) ON ic.InterfaceThemeNo = pct1.InterfaceThemeNo AND ISNULL(ic.LangCode, '') = ISNULL(sc.LangCode, '') WHERE sc.ThemeID = pct1.ThemeID FOR XML PATH ('')) [Description] FROM #ParentChildThemes pct1) CaptionInfo on CaptionInfo.ThemeID = pct.ThemeID ORDER BY Caption END ELSE BEGIN SELECT pct.ThemeID, ISNULL(pct.ParentThemeID, '') ParentThemeID, CAST([CaptionInfo].Caption as XML).value(N'/', 'nvarchar(max)') [Caption], CAST([CaptionInfo].MouseOverText as XML).value(N'/', 'nvarchar(max)') [MouseOverText], CAST([CaptionInfo].[Description] as XML).value(N'/', 'nvarchar(max)') [Description], SearchString = CASE WHEN i.SearchString IS NOT NULL AND i.SearchString <> '' THEN i.SearchString WHEN pct.SearchString IS NOT NULL AND pct.SearchString <> '' THEN pct.SearchString ELSE '' END, Image = CASE WHEN i.Image IS NOT NULL AND i.Image <> '' THEN i.Image WHEN pct.Image IS NOT NULL AND pct.Image <> '' THEN pct.Image ELSE '' END, CustomAttributes = CASE WHEN i.CustomAttributes IS NOT NULL THEN i.CustomAttributes WHEN pct.CustomAttributes IS NOT NULL THEN pct.CustomAttributes ELSE '' END, ISNULL(i.Show,1) AS Show, ISNULL(i.SeqNo, 1) SeqNo, ISNULL(ifl.FeatureName, '') FeatureName, ISNULL(pct.Lineage, '') Lineage FROM #ParentChildThemes pct LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i (NOLOCK) ON i.InterfaceID=@InterfaceID AND i.Version=@Version AND pct.ThemeID = i.ThemeID LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl (NOLOCK) ON i.InterfaceFeatureNo=ifl.InterfaceFeatureNo LEFT OUTER JOIN (SELECT DISTINCT pct1.ThemeID, (SELECT CASE WHEN sc.LangCode IS NULL THEN N'' WHEN ic.Caption IS NOT NULL AND ic.Caption <> '' THEN N'' + ic.Caption + N' ' WHEN sc.Caption IS NOT NULL AND sc.Caption <> '' THEN N'' + sc.Caption + N' ' ELSE N'' END AS Caption FROM [dbo].[SearchThemeCaption] sc (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic (NOLOCK) ON ic.InterfaceThemeNo = pct1.InterfaceThemeNo AND ISNULL(ic.LangCode, '') = ISNULL(sc.LangCode, '') WHERE sc.ThemeID = pct1.ThemeID FOR XML PATH ('')) Caption, (SELECT CASE WHEN sc.LangCode IS NULL THEN N'' WHEN ic.ImageAltText IS NOT NULL AND ic.ImageAltText <> '' THEN N'' + ic.ImageAltText + N' ' WHEN sc.ImageAltText IS NOT NULL AND sc.ImageAltText <> '' THEN N'' + sc.ImageAltText + N' ' ELSE N'' END AS MouseOverText FROM [dbo].[SearchThemeCaption] sc (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic (NOLOCK) ON ic.InterfaceThemeNo = pct1.InterfaceThemeNo AND ISNULL(ic.LangCode, '') = ISNULL(sc.LangCode, '') WHERE sc.ThemeID = pct1.ThemeID FOR XML PATH ('')) MouseOverText, (SELECT CASE WHEN sc.LangCode IS NULL THEN N'' WHEN ic.Description IS NOT NULL AND ic.Description <> '' THEN N'' + ic.Description + N' ' WHEN sc.Description IS NOT NULL AND sc.Description <> '' THEN N'' + sc.Description + N' ' ELSE N'' END AS [Description] FROM [dbo].[SearchThemeCaption] sc (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic (NOLOCK) ON ic.InterfaceThemeNo = pct1.InterfaceThemeNo AND ISNULL(ic.LangCode, '') = ISNULL(sc.LangCode, '') WHERE sc.ThemeID = pct1.ThemeID FOR XML PATH ('')) [Description] FROM #ParentChildThemes pct1) CaptionInfo on CaptionInfo.ThemeID = pct.ThemeID ORDER BY pct.ThemeID END END
CREATE PROCEDURE [dbo].[AUTH_GetLoginPageInfo_70](@CustID varchar(10), @AuthType varchar(10)) AS BEGIN DECLARE @ParamNo int DECLARE @CustNo int SET @ParamNo=dbo.EAIF_GetCustomParamNumber_70('loginText','C') SET @CustNo =dbo.EAIF_GetCustNo_70(@CustID) SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = @AuthType END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceDocTypeListForAttach_77](@InterfaceID varchar(10),@Version varchar(10))AS BEGIN --all unattached parents SELECT distinct dtl.ParentDocTypeNo AS DocTypeNo, pdtl.DocTypeID+'('+dtc.Caption+')' AS Caption FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo LEFT OUTER JOIN [dbo].[InterfaceDocType] idt ON dtl.ParentDocTypeNo=idt.DocTypeNo AND idt.InterfaceID=@InterfaceID AND idt.Version=@Version INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.ParentDocTypeNo=dtc.DocTypeNo WHERE dtc.LangCode='en'AND idt.DocTypeNo is null UNION --all unattached children of attached parents SELECT dtl.DocTypeNo, dtl.DocTypeID+'('+dtc.Caption+')' AS Caption FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo=idt.DocTypeNo AND idt.InterfaceID=@InterfaceID AND idt.Version=@Version INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo WHERE dtc.LangCode='en'AND dtl.ParentDocTypeNo IS NOT NULL AND dtl.ParentDocTypeNo IN (SELECT [dbo].[InterfaceDocType].[DocTypeNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version) AND idt.DocTypeNo IS NULL UNION -- all unattached others (not children) SELECT dtl.DocTypeNo, dtl.DocTypeID+'('+dtc.Caption+')' AS Caption FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo=idt.DocTypeNo AND idt.InterfaceID=@InterfaceID AND idt.Version=@Version INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo WHERE dtc.LangCode='en'AND dtl.ParentDocTypeNo is null AND idt.DocTypeNo is null ORDER BY Caption END
CREATE PROCEDURE [dbo].[EAIPO_XmlPrepareDocument_70](@hdoc int OUTPUT, @XmlText1 varchar(8000), @XmlText2 varchar(8000)=null, @XmlText3 varchar(8000)=null, @XmlText4 varchar(8000)=null, @XmlText5 varchar(8000)=null, @XmlText6 varchar(8000)=null, @XmlText7 varchar(8000)=null, @XmlText8 varchar(8000)=null, @XmlText9 varchar(8000)=null, @XmlText10 varchar(8000)=null, @XmlText11 varchar(8000)=null, @XmlText12 varchar(8000)=null, @XmlText13 varchar(8000)=null, @XmlText14 varchar(8000)=null, @XmlText15 varchar(8000)=null, @XmlText16 varchar(8000)=null, @XmlText17 varchar(8000)=null, @XmlText18 varchar(8000)=null, @XmlText19 varchar(8000)=null, @XmlText20 varchar(8000)=null) AS BEGIN SET @XmlText1 = ISNULL( REPLACE( @XmlText1, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText2 = ISNULL( REPLACE( @XmlText2, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText3 = ISNULL( REPLACE( @XmlText3, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText4 = ISNULL( REPLACE( @XmlText4, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText5 = ISNULL( REPLACE( @XmlText5, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText6 = ISNULL( REPLACE( @XmlText6, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText7 = ISNULL( REPLACE( @XmlText7, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText8 = ISNULL( REPLACE( @XmlText8, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText9 = ISNULL( REPLACE( @XmlText9, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText10 = ISNULL( REPLACE( @XmlText10, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText11 = ISNULL( REPLACE( @XmlText11, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText12 = ISNULL( REPLACE( @XmlText12, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText13 = ISNULL( REPLACE( @XmlText13, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText14 = ISNULL( REPLACE( @XmlText14, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText15 = ISNULL( REPLACE( @XmlText15, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText16 = ISNULL( REPLACE( @XmlText16, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText17 = ISNULL( REPLACE( @XmlText17, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText18 = ISNULL( REPLACE( @XmlText18, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText19 = ISNULL( REPLACE( @XmlText19, CHAR(39), CHAR(39)+CHAR(39) ), '') SET @XmlText20 = ISNULL( REPLACE( @XmlText20, CHAR(39), CHAR(39)+CHAR(39) ), '') EXEC( 'DECLARE @Handle int EXEC sp_xml_preparedocument @Handle OUT, ''' + @XmlText1 + @XmlText2 + @XmlText3 + @XmlText4 + @XmlText5 + @XmlText6 + @XmlText7 + @XmlText8 + @XmlText9 + @XmlText10 + @XmlText11 + @XmlText12 + @XmlText13 + @XmlText14 + @XmlText15 + @XmlText16 + @XmlText17 + @XmlText18 + @XmlText19 + @XmlText20 + ''' DECLARE he_cur CURSOR FOR SELECT @Handle' ) OPEN he_cur FETCH he_cur INTO @hdoc DEALLOCATE he_cur END
CREATE PROCEDURE [dbo].[EPCAS_GetCliField](@MasterDbList int, @DBVersion int ) AS BEGIN SELECT [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[Description], MIN([dbo].[DbFieldTag].[SeqNo]) as 'SeqNo' FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@MasterDbList AND ([dbo].[DbFieldTag].[Category]=1 OR [dbo].[DbFieldTag].[Category]=4 OR [dbo].[DbFieldTag].[Category]=5) GROUP BY [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[Description] ORDER BY MIN(SeqNo) END
CREATE PROCEDURE [dbo].[EAUI_GetDbFieldGroupLangCaption_70](@DbVerNo int, @FieldGroupNo int, @LangCode varchar(10)) AS BEGIN EXEC [dbo].[EAIP_GetDbFieldGroupLangCaption_70] @DbVerNo, @FieldGroupNo, @LangCode END
CREATE PROCEDURE [dbo].[EAUI_MoveCollection_70] ( @UserID nvarchar(20), @UserIP varchar(15), @SrcColNo int, @DstCustID nvarchar(50), @DstColID nvarchar(50), @ColName nvarchar(50) ) AS BEGIN DECLARE @SrcCustID varchar(10), @SrcColID varchar(10), @IsDeleted bit SELECT @SrcCustID = [dbo].[Collection].[CustID], @SrcColID = [dbo].[Collection].[ColID], @IsDeleted = [dbo].[Collection].[IsDeleted] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo] = @SrcColNo IF (@IsDeleted = 1) BEGIN RAISERROR ('The collection "%s.%s" currently is deleting',16,-1,@SrcCustID,@SrcColID) RETURN END EXEC [dbo].[EAIP_MoveCollection_70] @SrcCustID, @SrcColID,@DstCustID,@DstColID,@ColName DECLARE @Source nvarchar(255), @Target nvarchar(255) SET @Source = N'Source CustID/CollectionID: ' + @SrcCustID + N'/' + @SrcColID SET @Target = N'Target CustID/CollectionID: ' + @DstCustID + N'/' + @DstColID EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Move Collection', @SrcCustID, @Source, @Target END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseAuthorities_161](@NewDbLabel varchar(10), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try Begin Transaction DELETE dba FROM [dbo].[DbList] dbl join [dbo].[DbAuthority] dba on dbl.DbVerNo=dba.MainDbVerNo JOIN #TempDbListTable t on dba.MainDbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) where dbl.DbType=1 Insert [dbo].[DbAuthority] select t.UpperDbVerNo, dbl2.DbVerNo, OwnedFlag, SeqNo from [dbo].[DbList] dbl join [dbo].[DbAuthority] dba on dbl.DbVerNo=dba.MainDbVerNo Join #TempDbListTable t on dba.MainDbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) join [dbo].[DbList] dbl1 on dba.AuthDbVerNo=dbl1.DbVerNo join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel where dbl.DbType=1 Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbParamXmlValueItemOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @ParamName varchar(100), @ItemNameList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN UPDATE [dbo].[DbParamXmlValues] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[DbParamXmlValues] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@ItemNameList, @SeqNoList,'+') b ON a.ItemName=b.Item WHERE a.DbVerNo = @DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName,@DbLabel,'Reorder DocTypes' END
CREATE FUNCTION [dbo].[EAIF_GetLocalTitleDatesXml_70]( @ColNo int, @TitleNo int ) RETURNS varchar(2000) AS BEGIN DECLARE @DateString varchar (2000) SET @DateString='' SELECT @DateString=@DateString+'' FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo ORDER BY [dbo].[LocalDate].[FromDate] return @DateString END
CREATE PROCEDURE [dbo].[EAUI_GetConfigDbServersList_70](@ApplicationNo int) AS BEGIN SELECT [b].[ServerNo], [b].[ServerURI] FROM dbo.ConfigApplication a INNER JOIN dbo.ConfigServer b ON a.ApplicationNo=b.ApplicationNo WHERE a.ApplicationNo=@ApplicationNo AND a.ServerDbMode<>'N' AND b.ServerStatus='A' ORDER BY [b].[ServerURI] END
CREATE PROCEDURE [dbo].[EAIP_AddModGlobalInterfaceLanguage_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @LangCode VARCHAR(10), @Description NVARCHAR(50), @AddEdit VARCHAR(10), @UpdateInterfaces INT = 0 ) AS BEGIN DECLARE @UpdateInt VARCHAR(100) SET @UpdateInt = '' DECLARE @SeqNo INT IF (@UpdateInterfaces = 1) BEGIN SET @UpdateInt = 'All Interface languages Updated' END IF @AddEdit = 'Add' BEGIN IF EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode) BEGIN RAISERROR('Language Code: %s, already exists.',16, -1, @LangCode) RETURN END BEGIN TRANSACTION IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SELECT @SeqNo = MAX([dbo].[LangList].[SeqNo])+1 FROM [dbo].[LangList] INSERT INTO [dbo].[LangList]([dbo].[LangList].[LangCode], [dbo].[LangList].[Description], [dbo].[LangList].[SeqNo]) VALUES(@LangCode, @Description, @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF (@UpdateInterfaces = 1) BEGIN INSERT INTO [dbo].[InterfaceUserLangList]([dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName], [dbo].[InterfaceUserLangList].[SeqNo]) SELECT DISTINCT [dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], @LangCode, @Description, @SeqNo FROM [dbo].[InterfaceUserLangList] END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Languages', 'Add LangCode', @LangCode, @UpdateInt COMMIT TRANSACTION END ELSE BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode) BEGIN RAISERROR('Language Code: %s, does not exist.',16, -1, @LangCode) RETURN END BEGIN TRANSACTION UPDATE [dbo].[LangList] SET [dbo].[LangList].[Description] = @Description WHERE [dbo].[LangList].[LangCode] = @LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF (@UpdateInterfaces = 1) BEGIN -- update linked interfaces UPDATE [dbo].[InterfaceUserLangList] SET [dbo].[InterfaceUserLangList].[LangDisplayName] = @Description WHERE [dbo].[InterfaceUserLangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- retrieve the existing SeqNo SELECT @SeqNo = [dbo].[LangList].[SeqNo] FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode -- stuff in the missing records INSERT INTO [dbo].[InterfaceUserLangList]([dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName], [dbo].[InterfaceUserLangList].[SeqNo]) SELECT DISTINCT [dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], @LangCode, @Description, @SeqNo FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID] NOT IN (SELECT [dbo].[InterfaceUserLangList].[InterfaceID] FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[LangCode] = @LangCode) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Languages', 'Edit Language description', @LangCode, @Description, @UpdateInt COMMIT TRANSACTION END END
CREATE PROCEDURE [dbo].[EAIP_GetCVFilterList_163] ( @CVID VARCHAR(20) , @startRowIndex INT=1, -- = 1+pagesize*n (n = 0, 1, 2,...) @endRowIndex INT=11 -- Request 1 page plus one row of data, assuming pagesize is 10 ) AS BEGIN SELECT * FROM( SELECT TOP(@endRowIndex) ROW_NUMBER() OVER(ORDER BY cvf.Description) AS RowNumber, cvt.ContentVerticalID, cvf.Description AS ContentVerticalFilterDescription, cvf.SelectionQuery, cvf.ContentVerticalFilterID, MAX((CASE WHEN dbcvf.DbCVFilterNo IS NULL THEN 0 ELSE 1 END)) AS 'IntFlag' FROM dbo.ContentVerticalFilter cvf INNER JOIN dbo.ContentVerticalType cvt ON cvf.ContentVerticalNo = cvt.ContentVerticalNo LEFT OUTER JOIN dbo.DbCVFilter dbcvf ON cvf.ContentVerticalFilterNo = dbcvf.ContentVerticalFilterNo WHERE [cvt].[ContentVerticalID] = @CVID GROUP BY cvt.ContentVerticalID, cvf.Description, cvf.SelectionQuery, cvf.ContentVerticalFilterID) a WHERE [a].[RowNumber] >= @startRowIndex ORDER BY a.ContentVerticalFilterDescription END
CREATE PROCEDURE [dbo].[EAUI_GetUserDefinedLabels_70](@ConsID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetCustomerParamScalarValue_70(@ConsID,'udLabel1') as 'UDLabel1', dbo.EAIF_GetCustomerParamScalarValue_70(@ConsID,'udLabel2') as 'UDLabel2' END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbBrowseOption(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS BrowseOptionNo, [dbo].[DbBrowseOption].[OptionType], [dbo].[DbBrowseOption].[SearchString], [dbo].[DbBrowseOption].[TargetDb], [dbo].[DbBrowseOption].[SourceType], [dbo].[DbBrowseOption].[TabImage], [dbo].[DbBrowseOption].[AuthoritySubset], [dbo].[DbBrowseOption].[AuthorityView], [dbo].[DbBrowseOption].[IsHeading], [dbo].[BrowseOptionList].[BrowseOptionId] AS BrowseOptionId , dbo.EACOPY_AUTO_GetXmlDbBrowseOption_DbBrowseOptionCaption([dbo].[DbBrowseOption].[DbVerNo], [dbo].[DbBrowseOption].[BrowseOptionNo]) DbBrowseOptionCaption , dbo.EACOPY_AUTO_GetXmlDbBrowseOption_DbInterfaceBrowseOption([dbo].[DbBrowseOption].[DbVerNo], [dbo].[DbBrowseOption].[BrowseOptionNo]) DbInterfaceBrowseOption FROM [dbo].[DbBrowseOption] LEFT JOIN [dbo].[BrowseOptionList] ON [dbo].[BrowseOptionList].[BrowseOptionNo] = [dbo].[DbBrowseOption].[BrowseOptionNo] WHERE [dbo].[DbBrowseOption].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, BrowseOptionNo, [dbo].[DbBrowseOption].[OptionType], [dbo].[DbBrowseOption].[SearchString], [dbo].[DbBrowseOption].[TargetDb], [dbo].[DbBrowseOption].[SourceType], [dbo].[DbBrowseOption].[TabImage], [dbo].[DbBrowseOption].[AuthoritySubset], [dbo].[DbBrowseOption].[AuthorityView], [dbo].[DbBrowseOption].[IsHeading] FOR XML RAW('r') ) END
--sql content merged from file: \StoredProcedures\EAUI_DeleteAllInterfaceSearchThemes_99.sql CREATE procedure [dbo].[EAUI_DeleteAllInterfaceSearchThemes_99] (@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10)) as begin Declare @ThemeIDs table (ThemeID varchar (20)) begin try Insert @ThemeIDs Select a.ThemeID from (select * from [dbo].[InterfaceSearchTheme] where [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID and [dbo].[InterfaceSearchTheme].[Version]=@Version) a left outer join (select * from [dbo].[InterfaceSearchTheme] where [dbo].[InterfaceSearchTheme].[InterfaceID]<>@InterfaceID or ([dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID and [dbo].[InterfaceSearchTheme].[Version]<>@Version)) b on a.ThemeID=b.ThemeID where b.InterfaceID is null Begin Transaction Delete [dbo].[InterfaceSearchTheme] where [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID and [dbo].[InterfaceSearchTheme].[Version]=@Version Delete [dbo].[SearchTheme] from [dbo].[SearchTheme] st join @ThemeIDs tid on st.ThemeID=tid.ThemeID exec [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceSearchTheme','Delete all Interface Search Themes', @InterfaceID, @Version Commit Transaction end try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch end
CREATE PROCEDURE [dbo].[UTIL_GetListButtonBoxValueText_PROC](@xmlText varchar(8000), @SortValue bit, @DefPosn int OUTPUT, @ValueText varchar(8000) OUTPUT) AS BEGIN SET NOCOUNT ON DECLARE @xmlDocHandle int --Create an internal representation of the XML document. SELECT '@xmlText',@xmlText EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText /* List Box, List Button */ /**/ /* */ IF @SortValue=0 BEGIN SELECT @DefPosn=defPosn, @ValueText=ISNULL(@ValueText+','+lbItem+'('+value+')', lbItem+'('+value+')') FROM OPENXML (@xmlDocHandle, '/lbItems/lbItem',2) WITH (defPosn int '../@defPosn', value varchar(8000) '@value', lbItem varchar(8000) 'text()') END ELSE BEGIN DECLARE @SortedValues table(ItemName varchar(255), ItemValue varchar(255), DefPosn int) INSERT INTO @SortedValues SELECT lbItem, value, defPosn FROM OPENXML (@xmlDocHandle, '/lbItems/lbItem',2) WITH (defPosn int '../@defPosn', value varchar(8000) '@value', lbItem varchar(8000) 'text()') SELECT @DefPosn=DefPosn, @ValueText=ISNULL(@ValueText+','+ItemName+'('+ItemValue+')', ItemName+'('+ItemValue+')') FROM @SortedValues ORDER BY ItemName END EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle ENDCaption goes here */ /*
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceDocTypes_77](@DocTypeID varchar(10),@InterfaceID varchar(10),@Version varchar(10), @SortOption varchar(50),@SearchImage varchar(255),@ResultImage varchar(255),@DefValue int,@SeqNo int, @CaptionLangList nvarchar(max), @MouseOverLangList nvarchar(max))AS /** procedure is used by EPCopy **/ BEGIN DECLARE @DocTypeNo int DECLARE @IntfDocTypeNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID) RETURN ELSE SELECT @DocTypeNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version) RETURN IF @SortOption ='' SET @SortOption= null IF @SearchImage ='' SET @SearchImage= null IF @ResultImage ='' SET @ResultImage= null IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version AND [dbo].[InterfaceDocType].[DocTypeNo]=@DocTypeNo ) BEGIN INSERT INTO [dbo].[InterfaceDocType]([dbo].[InterfaceDocType].[InterfaceID],[dbo].[InterfaceDocType].[Version],[dbo].[InterfaceDocType].[DocTypeNo],[dbo].[InterfaceDocType].[SortOption],[dbo].[InterfaceDocType].[SearchImage],[dbo].[InterfaceDocType].[ResultImage],[dbo].[InterfaceDocType].[DefValue],[dbo].[InterfaceDocType].[SeqNo]) VALUES (@InterfaceID,@Version,@DocTypeNo,@SortOption,@SearchImage,@ResultImage,@DefValue,@SeqNo) IF @@ERROR <> 0 RETURN SELECT @IntfDocTypeNo = [dbo].[InterfaceDocType].[IntfDocTypeNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version AND [dbo].[InterfaceDocType].[DocTypeNo]=@DocTypeNo exec [dbo].[EAIP_CopyInterfaceDocTypeCaptions_77] @IntfDocTypeNo,@CaptionLangList, @MouseOverLangList --captions END ELSE BEGIN SELECT @IntfDocTypeNo = [dbo].[InterfaceDocType].[IntfDocTypeNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version AND [dbo].[InterfaceDocType].[DocTypeNo]=@DocTypeNo UPDATE [dbo].[InterfaceDocType] SET [dbo].[InterfaceDocType].[SortOption]=@SortOption, [dbo].[InterfaceDocType].[SearchImage]=@SearchImage, [dbo].[InterfaceDocType].[ResultImage]=@ResultImage, [dbo].[InterfaceDocType].[DefValue]=@DefValue, [dbo].[InterfaceDocType].[SeqNo]=@SeqNo WHERE [dbo].[InterfaceDocType].[IntfDocTypeNo] = @IntfDocTypeNo AND (ISNULL([dbo].[InterfaceDocType].[SortOption],'')<>ISNULL(@SortOption,'') OR ISNULL([dbo].[InterfaceDocType].[SearchImage],'')<>ISNULL(@SearchImage,'') OR ISNULL([dbo].[InterfaceDocType].[ResultImage],'')<>ISNULL(@ResultImage,'') OR [dbo].[InterfaceDocType].[DefValue]<>@DefValue OR [dbo].[InterfaceDocType].[SeqNo]<>@SeqNo) IF @@ERROR <> 0 RETURN IF @CaptionLangList<> dbo.EAIF_InterfaceDocTypeLangAndCaptions_77(@IntfDocTypeNo)OR @MouseOverLangList<>dbo.EAIF_InterfaceDocTypeLangAndMouseOverTexts_77(@IntfDocTypeNo) exec [dbo].[EAIP_CopyInterfaceDocTypeCaptions_77] @IntfDocTypeNo,@CaptionLangList, @MouseOverLangList END END
Create Procedure [dbo].[EAUI_GetPersonalizationEnabledGroupList_100](@CustID varchar(10)) AS Begin DECLARE @ParamNo int declare @DefValue varchar(4000) declare @Val varchar(4000) declare @tempTable table (CustID varchar(10), GroupID varchar(10), PersonalizationEnabledProfileCount int) Insert @tempTable select ug.CustID, ug.GroupID, SUM(convert(int, isnull(iv.AllowPersonalization, 0))) from [dbo].[UserGroup] ug left outer join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 where ug.CustID=@CustID Group by ug.CustID, ug.GroupID SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' SELECT ug.GroupID, GroupName, isnull(isnull(ParamValue, DefValue),@DefValue) AllowPersonalization from [dbo].[Customer] c join [dbo].[UserGroup] ug on c.CustID=ug.CustID join @tempTable t on ug.CustID=t.CustID and ug.GroupID=t.GroupID left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70(CustType) WHERE c.CustID = @CustID and isnull(isnull(ParamValue, DefValue),@DefValue)=1 and t.PersonalizationEnabledProfileCount>0 ORDER BY GroupName End
CREATE PROCEDURE [dbo].[EATL_UpdateToolbarItemRegDB_100](@UserID nvarchar(20),@UserIP varchar(15), @FeatureID varchar(100), @ItemNo int, @FieldsXML nvarchar(max)) AS BEGIN BEGIN TRANSACTION --Category : lpt: landing page toolbaritem -- Note: We cannot have duplicate featureId (featurename) for a category; -- it is an application restriction. UPDATE [dbo].[FeatureValues] SET [FieldValueXml] =@FieldsXML From [dbo].[FeatureValues] fv inner join [dbo].[FeatureList] fl on fl.FeatureNo=fv.FeatureNo WHERE fl.FeatureName=@FeatureID AND fl.Category = 'lpt' AND fv.ItemNo=@ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Category varchar(20) DECLARE @Name varchar(50) SELECT @Category=[dbo].[FeatureList].[Category], @Name=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureName]=@FeatureID AND [dbo].[FeatureList].[Category] = 'lpt' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Update Feature Values', @Category, @Name, @ItemNo COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceToolbar_77] (@InterfaceID varchar(10),@Version varchar(10))AS BEGIN SELECT it.ItemName, sc.Description AS Category, it.Alignment, it.Image, dbo.EAIF_InterfaceToolbarItemCaptions_77(it.IntfToolbarItem) AS Captions, dbo.EAIF_InterfaceToolbarItemDatabases_77(it.IntfToolbarItem) AS Databases FROM [dbo].[InterfaceToolbar] it INNER JOIN [dbo].[StringValueMap] sc ON it.Category=sc.FieldCode WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version AND sc.FieldName='ToolbarCategory' ORDER BY it.SeqNo END
CREATE Procedure dbo.AUTH_GetPersistentLinkProfile_152 (@CustID varchar(10), @GroupID varchar(10), @UseSsl bit, @ShortDbsList varchar(8000), @InterfaceID varchar(25), @IsMobileRequest bit, @IsGuestRequest bit, @ProfID varchar(10), @OnlySpecifiedSite bit=0, @CheckProfileDbs bit=0) as begin Declare @ProfDetailsTable table (ProfNo int, ProfID varchar(10), ProfPwd varchar(20), SiteURL varchar(255), InterfaceID varchar(10), Version varchar(10), MarketID varchar(20), STMode char(1), SiteID varchar(10), SeqNo int, Priority smallint, ProfName nvarchar(255), PassingMode varchar(10), DefLangCode varchar(10), DefView nvarchar(4000), NewWin bit, IsMobile bit) Declare @ProfNoTable table (ProfNo int) /* Parse Interface and Version */ DECLARE @Version varchar(10) set @Version='' IF CHARINDEX( '-',@InterfaceID )>0 BEGIN SET @Version =SUBSTRING(@InterfaceID, CHARINDEX( '-',@InterfaceID )+1, LEN(@InterfaceID)) SET @InterfaceID = SUBSTRING(@InterfaceID, 1, CHARINDEX( '-',@InterfaceID )-1) END IF LEN(@Version)=0 SET @Version='live' -- default Version to 'live' if none given /* Get ClientType for given Interface */ DECLARE @ClientType varchar (10) set @ClientType='' SELECT @ClientType= [dbo].[Interface].[ClientType] From [dbo].[Interface] Where [dbo].[Interface].[InterfaceID]=@InterfaceID if len(@ClientType)=0 set @ClientType='web' -- default ClientType to 'web' if no InterfaceID given or InterfaceID does not exist Declare @PersLinkParamNo int select @PersLinkParamNo = dbo.EAIF_GetCustomParamNumber_70 ('persistentLinkProfile', 'P') /* Get all profiles for given CustID/GroupID that are configured for PLinks - and are associated with an Interface of the matching ClientType and Version or the ProfID matches the requested ProfID and that Profile is associated with an Interface of the correct ClientType. Note: this is the most inclusive result set.*/ /* Profile with ProfID matching given ProfID is given first priority */ insert @ProfDetailsTable SELECT distinct p.ProfNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL AS SiteURL, iv.InterfaceID, iv.Version, p.MarketID, p.STMode, iv.SiteID, p.SeqNo, CASE when p.ProfID=@ProfID Then 1 WHEN iv.IsMobile=@IsMobileRequest and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 2 WHEN iv.IsMobile=@IsMobileRequest and iv.SiteID=@InterfaceID THEN 3 WHEN iv.IsMobile<>@IsMobileRequest and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 4 WHEN iv.IsMobile<>@IsMobileRequest and iv.SiteID=@InterfaceID THEN 5 WHEN iv.IsMobile=@IsMobileRequest THEN 6 WHEN iv.IsMobile<>@IsMobileRequest THEN 7 Else 8 End as Priority, p.ProfName, iv.PassingMode, p.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(p.ProfNo, 'defaultView') as DefView, iv.NewWin, iv.IsMobile FROM dbo.Profile AS p join dbo.CustomParamDefaults AS cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@PersLinkParamNo AND p.InterfaceID = cpd.InterfaceID AND p.Version = cpd.Version AND p.MarketID = cpd.MarketID AND p.STMode = cpd.STMode LEFT OUTER JOIN dbo.CustomParamScalarValues AS cpsv ON cpsv.TargetNo = p.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @PersLinkParamNo Join dbo.Interface AS i on p.InterfaceID=i.InterfaceID join dbo.InterfaceVersion AS iv on p.InterfaceID=iv.InterfaceID Where p.CustID = @CustID AND p.GroupID= @GroupID AND ISNULL(cpsv.ParamValue,cpd.DefValue) = '1' AND ((i.ClientType = @ClientType AND iv.Version=@Version) or (p.ProfID=@ProfID and i.ClientType=@ClientType)) /* If @OnlySpecifiedSite=1, Then delete the profile(s) from profDetails that do not match the @InterfaceID */ if @OnlySpecifiedSite = 1 and @InterfaceID <> '' Delete @ProfDetailsTable where SiteID <> @InterfaceID AND InterfaceID <> @InterfaceID AND SiteID != '' /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile from @ProfDetailsTable return END /* If guest access is requested then filter result set to include only Profiles configured for Guest Access. */ if @IsGuestRequest=1 Begin Declare @GuestAccessParamNo int select @GuestAccessParamNo = dbo.EAIF_GetCustomParamNumber_70 ('guestAccessAuthType', 'P') Delete @ProfNoTable Insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable AS t join dbo.CustomParamDefaults AS cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@GuestAccessParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN dbo.CustomParamScalarValues AS cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @GuestAccessParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) <> '' and (t.ProfID=@ProfID or @ProfID='') Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile from @ProfDetailsTable return End End /* Filter result set based on given DbList - do not remove Profile where the ProfID matches the requested ProfID even if that Profile does not have access to given DbList. */ if @ShortDbsList<>'' Begin SELECT Item INTO #DbNameTable FROM dbo.EAIF_GetItemTable_70(@ShortDbsList, ',') CREATE CLUSTERED INDEX IDX_T_DbNameTable_DbName ON #DbNameTable(Item ASC); if dbo.EAIF_IsAnyAuthorityDatabase_86(@ShortDbsList, 'live')=1 Begin Delete @ProfNoTable insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable AS t INNER JOIN dbo.ProfDatabase AS pdb ON t.ProfNo = pdb.ProfNo INNER JOIN dbo.DbAuthority AS dba ON pdb.DbVerNo=dba.MainDbVerNo INNER JOIN dbo.DbList AS dbl ON dbl.DbVerNo=dba.AuthDbVerNo INNER JOIN #DbNameTable AS dblt ON dbl.DbName=dblt.Item where pdb.Enable = 1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) End else Begin Delete @ProfNoTable insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable AS t INNER JOIN dbo.ProfDatabase AS pdb ON t.ProfNo = pdb.ProfNo INNER JOIN dbo.DbList AS dbl ON pdb.DbVerNo=dbl.DbVerNo INNER JOIN #DbNameTable AS dblt ON dbl.DbName=dblt.Item where pdb.Enable = 1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) End DROP TABLE #DbNameTable end else if @CheckProfileDbs = 1 begin Delete @ProfNoTable INSERT @ProfNoTable SELECT t.ProfNo FROM @ProfDetailsTable t INNER JOIN dbo.ProfDatabase AS pdb ON t.ProfNo = pdb.ProfNo WHERE pdb.Enable = 1 AND ( pdb.Mode IS NULL OR pdb.Mode <> 'X' ) AND ( pdb.AccessEndDate IS NULL OR DATEDIFF(hh, pdb.AccessEndDate, GETDATE()) < 0) Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) end /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile from @ProfDetailsTable return End /* If SSL is required then filter result set to include only Profiles that are configured for HTTPS - do not remove Profile where the ProfID matches the requested ProfID. If no Profiles would remain then do not do this filter. */ Declare @HttpsParamNo int select @HttpsParamNo = dbo.EAIF_GetCustomParamNumber_70 ('useHttpsAuthentication', 'P') if @UseSsl=1 Begin Delete @ProfNoTable Insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable AS t join dbo.CustomParamDefaults AS cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@HttpsParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode JOIN dbo.CustomParamScalarValues AS cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @HttpsParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) = '1' union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID if exists (Select 1 from @ProfNoTable) Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_MakeUrlSecure_86(dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) ,'1') AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile from @ProfDetailsTable order by Priority, SeqNo End ELSE BEGIN if (Select TOP 1 ISNULL(cpsv.ParamValue,cpd.DefValue) from @ProfDetailsTable AS t join dbo.CustomParamDefaults AS cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@HttpsParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN dbo.CustomParamScalarValues AS cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @HttpsParamNo ORDER BY [t].[Priority], [t].[SeqNo]) = 1 select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_MakeUrlSecure_86(dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1), '1') AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile from @ProfDetailsTable order by Priority, SeqNo ELSE select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile from @ProfDetailsTable order by Priority, SeqNo END end
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceExpanders_79] (@InterfaceID varchar(10), @Version varchar(10))AS BEGIN DECLARE @AutoAddExp bit SELECT @AutoAddExp= [dbo].[InterfaceVersion].[AutoAddExpanders] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @AutoAddExp=1 SELECT ge.ControlName, ISNULL(ie.ControlShow, ge.ControlShow) AS ControlShow, ISNULL(ie.ControlDefault, ge.ControlDefault) AS ControlDefault, ge.Description, 1 AS AutoAdd FROM [dbo].[GlobalExpander] ge LEFT OUTER JOIN [dbo].[InterfaceExpander] ie ON ge.ControlName = ie.ControlName AND ie.InterfaceID=@InterfaceID AND ie.Version=@Version ELSE SELECT ge.ControlName, ISNULL(ie.ControlShow, ge.ControlShow) AS ControlShow, ISNULL(ie.ControlDefault, ge.ControlDefault) AS ControlDefault, ge.Description, 0 AS AutoAdd FROM [dbo].[GlobalExpander] ge INNER JOIN [dbo].[InterfaceExpander] ie ON ge.ControlName = ie.ControlName WHERE ie.InterfaceID=@InterfaceID AND ie.Version=@Version END
CREATE PROCEDURE [dbo].[EAIS_AddDbTopic_70](@DbName varchar(10),@DbLabel varchar(10),@TopicID varchar(10)) AS BEGIN DECLARE @TopicNo int IF NOT EXISTS (Select 1 From [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID ) BEGIN RAISERROR ('Topic %s does not exist',16,-1,@TopicID) RETURN END ELSE SELECT @TopicNo=[dbo].[TopicList].[TopicNo] From [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID IF @DbLabel='' INSERT INTO [dbo].[DbTopic] ([dt].[DbVerNo], [dt].[TopicNo]) SELECT dl.DbVerNo, @TopicNo FROM [dbo].[DbList] dl LEFT OUTER JOIN [dbo].[DbTopic] dt ON dl.DbVerNo=dt.DbVerNo AND dt.TopicNo=@TopicNo WHERE dl.DbName =@DbName AND dt.DbVerNo is null ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[DbList] dl INNER JOIN [dbo].[DbTopic] dt ON dl.DbVerNo = dt.DbVerNo WHERE dl.DbName = @DbName AND dl.DbLabel = @DbLabel AND dt.TopicNo = @TopicNo) INSERT INTO [dbo].[DbTopic] ([dbo].[DbTopic].[DbVerNo], [dbo].[DbTopic].[TopicNo]) SELECT [dbo].[DbList].[DbVerNo], @TopicNo FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] =@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel END
CREATE PROCEDURE [dbo].[EPCAS_GetColNo](@CustID varchar(10), @ColID varchar(50)) AS BEGIN SELECT [dbo].[Collection].[ColNo] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID and [dbo].[Collection].[ColID]=@ColID and [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAUI_GetDbFieldGroupList_70](@DbVerNo int) AS BEGIN SELECT a.FieldGroupNo, b.FieldGroupId, dbo.EAIF_GetDbFieldElements_70(@DbVerNo, a.FieldGroupNo, ', ') AS 'Elements', dbo.EAIF_GetDbFieldGroupCaption_70(@DbVerNo, a.FieldGroupNo, 'en') AS 'Captions', b.Description + ' (' + b.FieldGroupId + ')' as 'DescFieldGroupId' FROM [dbo].[DbFieldGroup] a INNER JOIN [dbo].[FieldGroupList] b ON a.FieldGroupNo=b.FieldGroupNo AND a.DbVerNo=@DbVerNo WHERE [a].[DbVerNo]=@DbVerNo ORDER BY b.Description END
CREATE Procedure [dbo].[EAUI_ResetProfFeatureFieldValuesToDefaults_102] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @ItemNo int, @ItemType Char(1) ) AS Begin Try Begin Transaction EXEC [dbo].[EAIP_DeleteProfFeatureValues_102] @UserID, @UserIP, @ProfNo,@InterfaceFeatureNo,@ItemNo,@ItemType EXEC [dbo].[EAIP_DeleteProfFeatureSelMode_102] @UserID, @UserIP, @ProfNo,@InterfaceFeatureNo Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch
Create PROCEDURE [dbo].[EAIP_PromoteDatabaseBrowseOptions_161] ( @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit ) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE dbbo FROM [dbo].[DbBrowseOption] dbbo INNER JOIN #TempDbListTable t on dbbo.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); INSERT INTO [dbo].[DbBrowseOption] SELECT t.UpperDbVerNo AS DbVerNo,BrowseOptionNo,OptionType,SearchString,TargetDb,SourceType,TabImage,AuthoritySubset,AuthorityView,IsHeading FROM [dbo].[DbBrowseOption] dbbo JOIN #TempDbListTable t ON dbbo.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); DELETE dbboc FROM [dbo].[DbBrowseOptionCaption] dbboc INNER JOIN #TempDbListTable t on dbboc.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); INSERT INTO [dbo].[DbBrowseOptionCaption] SELECT t.UpperDbVerNo AS DbVerNo,BrowseOptionNo,LangCode,OptionCaption,ResultCaption,Description FROM [dbo].[DbBrowseOptionCaption] dbboc JOIN #TempDbListTable t ON dbboc.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); DELETE dbibo FROM [dbo].[DbInterfaceBrowseOption] dbibo INNER JOIN #TempDbListTable t on dbibo.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); INSERT INTO [dbo].[DbInterfaceBrowseOption] SELECT t.UpperDbVerNo AS DbVerNo,IntfScreenNo,BrowseOptionNo,Show,SeqNo FROM [dbo].[DbInterfaceBrowseOption] dbibo JOIN #TempDbListTable t ON dbibo.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); -- Remove Customized Profile Browse Options that are not found in DbBrowseOptions DELETE [dbo].[ProfDbBrowseOption] FROM [dbo].[ProfDbBrowseOption] pdbbo join #TempDbListTable t on pdbbo.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) left outer join [dbo].[DbBrowseOption] dbbo on t.UpperDbVerNo=dbbo.DbVerNo and pdbbo.BrowseOptionNo=dbbo.BrowseOptionNo where dbbo.DbVerNo is null COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
-- UPDATE the Enable, Config and Translation data for the given database CREATE PROCEDURE [dbo].[EAUI_UpdateDbRTACInfo_101] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @Enable bit, @Config nvarchar(max), @Translation nvarchar(max)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- get the database info for logging DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo -- log the activity EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DbRTACInfo', 'Update RTACInfo', @DbName,@Dblabel -- call the stored procedure to do the update EXEC [dbo].[EAIP_UpdateDbRTACInfo_101] @DbVerNo, @Enable, @Config, @Translation END
CREATE FUNCTION [dbo].[EAIF_GetLogColName_70](@ColNo int) RETURNS nvarchar(61) AS BEGIN RETURN (SELECT [dbo].[Collection].[CustID] + N'.' + [dbo].[Collection].[ColID] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo]=@ColNo and [dbo].[Collection].[IsDeleted] = 0) END
CREATE PROCEDURE [dbo].[EAUI_GetConsortiaCustomLinkCollections_70](@CustID varchar(10), @Category varchar(50)) AS BEGIN SELECT [dbo].[Collection].[CustID], [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID] = @CustID AND [dbo].[Collection].[Hidden]=0 AND [dbo].[Collection].[IsDeleted] = 0 ORDER BY [dbo].[Collection].[ColName] END
--sql content merged from file: \StoredProcedures\EAIP_AddModifyDbDescriptions_92.sql CREATE PROCEDURE [dbo].[EAIP_AddModifyDbDescriptions_92] ( @DbVerNo int, @DbResourceType nvarchar (100), @DbShortDescription nvarchar(max), @DbLongDescription nvarchar(max), @Lang varchar(10) ) AS Declare @ParamNo int -- Update Resource Type on DbParamScalarValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='ResourceType') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamScalarValue_70] @DbVerNo,@ParamNo,@DbResourceType END -- Update Short Description on DbParamXmlValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo,@ParamNo,'',@DbShortDescription END -- Update Long Description on DbParamXmlValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='longDescription') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo,@ParamNo,@Lang,@DbLongDescription END
CREATE PROCEDURE [dbo].[EAIP_GetCVTypeQueryList_163](@ContentVerticalID VARCHAR(20)) AS BEGIN SELECT cvf.ContentVerticalFilterID, cvf.Description + ' - '+cvf.SelectionQuery AS Caption FROM [dbo].[ContentVerticalType] cvt JOIN [dbo].[ContentVerticalFilter] cvf ON cvt.ContentVerticalNo=cvf.ContentVerticalNo WHERE cvt.ContentVerticalID = @ContentVerticalID ORDER BY cvf.Description END
CREATE PROCEDURE [dbo].[EAUI_GetUserGroup_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SELECT [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail] FROM [dbo].[UserGroup] Where [dbo].[UserGroup].[CustID]=@CustID AND [dbo].[UserGroup].[GroupID] = @GroupID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbCluster(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS ClustNo, [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag], [dbo].[ClusterList].[ClustId] AS ClustId, [dbo].[ClusterList].[DbLabel] AS DbLabel FROM [dbo].[DbCluster] LEFT JOIN [dbo].[ClusterList] ON [dbo].[ClusterList].[ClustNo] = [dbo].[DbCluster].[ClustNo] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, ClustNo, [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCfgApplication_70]( @UserID nvarchar(20), @UserIP varchar(15), @ApplicationNo int) AS BEGIN DECLARE @AppID varchar(20) SET @AppID = dbo.EAIF_GetConfigApplicationID_70(@ApplicationNo) DELETE FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ApplicationNo] = @ApplicationNo DELETE FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationNo] = @ApplicationNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Delete Application', @AppID END
CREATE PROCEDURE [dbo].[UTIL_GetProcNames](@SrchStr varchar(255)) AS BEGIN IF @SrchStr = '*' SELECT [dbo].[sysobjects].[name] , Sort=CASE WHEN [dbo].[sysobjects].[type]='P' THEN 'B' ELSE 'A' END FROM [dbo].[sysobjects] WHERE [dbo].[sysobjects].[type] in ('P','FN','IF','TF') AND substring([dbo].[sysobjects].[name],1,3)<>'dt_' ORDER BY SORT,[dbo].[sysobjects].[name] ELSE SELECT [dbo].[sysobjects].[name] , Sort=CASE WHEN [dbo].[sysobjects].[type]='P' THEN 'B' ELSE 'A' END FROM [dbo].[sysobjects] WHERE [dbo].[sysobjects].[type] in ('P','FN','IF','TF') AND [dbo].[sysobjects].[name] LIKE '%' + @SrchStr + '%' AND substring([dbo].[sysobjects].[name],1,3)<>'dt_' ORDER BY SORT,[dbo].[sysobjects].[name] END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceDocTypes_81] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceDocType].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceDocType] ([dbo].[InterfaceDocType].[InterfaceID],[dbo].[InterfaceDocType].[Version],[dbo].[InterfaceDocType].[DocTypeNo],[dbo].[InterfaceDocType].[SortOption],[dbo].[InterfaceDocType].[SearchImage],[dbo].[InterfaceDocType].[ResultImage],[dbo].[InterfaceDocType].[DefValue],[dbo].[InterfaceDocType].[SeqNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceDocType].[DocTypeNo],[dbo].[InterfaceDocType].[SortOption],[dbo].[InterfaceDocType].[SearchImage],[dbo].[InterfaceDocType].[ResultImage],[dbo].[InterfaceDocType].[DefValue],[dbo].[InterfaceDocType].[SeqNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceDocType].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceDocTypeCaption] ([idtc].[IntfDocTypeNo],[idtc].[LangCode],[idtc].[Caption],[idtc].[MouseOverText]) SELECT idt2.IntfDocTypeNo,idtc.LangCode,idtc.Caption,idtc.MouseOverText FROM [dbo].[InterfaceDocType] AS idt INNER JOIN [dbo].[InterfaceDocTypeCaption] AS idtc ON idt.IntfDocTypeNo = idtc.IntfDocTypeNo INNER JOIN [dbo].[InterfaceDocType] AS idt2 ON idt.DocTypeNo = idt2.DocTypeNo WHERE idt.InterfaceID=@InterfaceIDFrom AND idt.Version=@VersionFrom AND idt2.InterfaceID=@InterfaceIDTo AND idt2.Version=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
Create PROCEDURE [dbo].[EAUI_GetPersonalizationEnabledProfileList_100](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SELECT [p].[ProfNo], [p].[ProfName], [p].[ProfID], p.InterfaceID+CASE WHEN p.Version='live' THEN ''ELSE '/'+p.Version END AS InterfaceID FROM [dbo].[Profile] p left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version WHERE [p].[CustID]=@CustID AND [p].[GroupID]=@GroupID and iv.AllowPersonalization=1 ORDER BY [p].[ProfName] END
CREATE PROCEDURE [dbo].[EATL_UpdateToolbarItemRegDB_Batch] @UserID nvarchar(20) ,@UserIP varchar(15) ,@Objects XML AS BEGIN CREATE TABLE #Objects( ID INT identity(1, 1) ,FeatureID varchar(100) ,ItemNo int ,FieldsXML nvarchar(max) ) INSERT INTO #Objects ( FeatureID ,ItemNo ,FieldsXML ) SELECT m.c.value('(./FeatureId)[1]', 'varchar(100)') ,m.c.value('(./ItemNo)[1]', 'int') ,m.c.value('(./FieldsXML)[1]', 'nvarchar(max)') FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) DECLARE @i INT ,@Count INT ,@FeatureID varchar(100) ,@ItemNo int ,@FieldsXML nvarchar(max) SET @i = 1 SET @Count = ( SELECT COUNT(*) FROM #Objects ) WHILE @i <= @Count BEGIN SELECT @FeatureID = FeatureID ,@ItemNo = ItemNo ,@FieldsXML = FieldsXML FROM #Objects WHERE ID = @i EXECUTE [dbo].[EATL_UpdateToolbarItemRegDB_100] @UserID ,@UserIP ,@FeatureID ,@ItemNo ,@FieldsXML SET @i = @i + 1 END DROP TABLE #Objects END
CREATE PROCEDURE [dbo].[EPCS_GetInterfaceTopics_77] (@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT tl.TopicID, ISNULL(ptl.TopicID, '') AS ParentTopicID, ISNULL(it.Image,'') AS Image, ISNULL(it.Photo1,'') As Photo1, ISNULL(it.Photo2,'') As Photo2, ISNULL(it.Photo3,'') As Photo3, tl.SearchString, dbo.EAIF_GetInterfaceTopicCaptions_77(it.IntfTopicNo) AS Captions, dbo.EAIF_GetInterfaceTopicMouseOverTexts_77(it.IntfTopicNo) AS MouseOverTexts FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo LEFT OUTER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo = ptl.TopicNo WHERE it.InterfaceID=@InterfaceID AND it.Version = @Version ORDER BY it.SeqNo END
CREATE Procedure [dbo].[AUTH_GetPersistentLinkProfile_910] (@CustID varchar(10), @GroupID varchar(10), @UseSsl bit, @ShortDbsList varchar(8000), @InterfaceID varchar(25), @IsMobileRequest bit, @IsGuestRequest bit, @ProfID varchar(10), @OnlySpecifiedSite bit=0) as begin Declare @ProfDetailsTable table (ProfNo int, ProfID varchar(10), ProfPwd varchar(20), SiteURL varchar(255), InterfaceID varchar(10), Version varchar(10), MarketID varchar(20), STMode char(1), SiteID varchar(10), SeqNo int, Priority smallint, ProfName nvarchar(255), PassingMode varchar(10), DefLangCode varchar(10), DefView nvarchar(4000), NewWin bit, IsMobile BIT, MD5TokenSalt VARCHAR(255), HideInterface BIT) Declare @ProfNoTable table (ProfNo int) Declare @DbNameTable Table (DbName varchar(10)) /* Parse Interface and Version */ DECLARE @Version varchar(10) set @Version='' IF CHARINDEX( '-',@InterfaceID )>0 BEGIN SET @Version =SUBSTRING(@InterfaceID, CHARINDEX( '-',@InterfaceID )+1, LEN(@InterfaceID)) SET @InterfaceID = SUBSTRING(@InterfaceID, 1, CHARINDEX( '-',@InterfaceID )-1) END IF LEN(@Version)=0 SET @Version='live' -- default Version to 'live' if none given /* Get ClientType for given Interface */ DECLARE @ClientType varchar (10) set @ClientType='' SELECT @ClientType= [dbo].[Interface].[ClientType] From [dbo].[Interface] Where [dbo].[Interface].[InterfaceID]=@InterfaceID if len(@ClientType)=0 set @ClientType='web' -- default ClientType to 'web' if no InterfaceID given or InterfaceID does not exist Declare @PersLinkParamNo int select @PersLinkParamNo = dbo.EAIF_GetCustomParamNumber_70 ('persistentLinkProfile', 'P') /* Get all profiles for given CustID/GroupID that are configured for PLinks - and are associated with an Interface of the matching ClientType and Version or the ProfID matches the requested ProfID and that Profile is associated with an Interface of the correct ClientType. Note: this is the most inclusive result set.*/ /* Profile with ProfID matching given ProfID is given first priority */ insert @ProfDetailsTable SELECT distinct p.ProfNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL AS SiteURL, iv.InterfaceID, iv.Version, p.MarketID, p.STMode, iv.SiteID, p.SeqNo, CASE when p.ProfID=@ProfID Then 1 WHEN iv.IsMobile=@IsMobileRequest and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 2 WHEN iv.IsMobile=@IsMobileRequest and iv.SiteID=@InterfaceID THEN 3 WHEN iv.IsMobile<>@IsMobileRequest and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 4 WHEN iv.IsMobile<>@IsMobileRequest and iv.SiteID=@InterfaceID THEN 5 WHEN iv.IsMobile=@IsMobileRequest THEN 6 WHEN iv.IsMobile<>@IsMobileRequest THEN 7 Else 8 End as Priority, [p].[ProfName], [iv].[PassingMode], p.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(p.ProfNo, 'defaultView') as DefView, [iv].[NewWin], [iv].[IsMobile], iv.MD5TokenSalt, iv.HideInterface FROM [dbo].[Profile] p INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@PersLinkParamNo AND p.InterfaceID = cpd.InterfaceID AND p.Version = cpd.Version AND p.MarketID = cpd.MarketID AND p.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = p.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @PersLinkParamNo INNER JOIN [dbo].[Interface] i on p.InterfaceID=i.InterfaceID INNER JOIN [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID Where p.CustID = @CustID AND p.GroupID= @GroupID AND ISNULL(cpsv.ParamValue,cpd.DefValue) = '1' AND ((i.ClientType = @ClientType AND iv.Version=@Version) or (p.ProfID=@ProfID and i.ClientType=@ClientType)) /* If @OnlySpecifiedSite=1, Then delete the profile(s) from profDetails that do not match the @InterfaceID */ if @OnlySpecifiedSite = 1 and @InterfaceID <> '' Delete @ProfDetailsTable where SiteID <> @InterfaceID AND InterfaceID <> @InterfaceID AND SiteID != '' /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, HideInterface from @ProfDetailsTable return END /* If guest access is requested then filter result set to include only Profiles configured for Guest Access. */ if @IsGuestRequest=1 Begin Declare @GuestAccessParamNo int select @GuestAccessParamNo = dbo.EAIF_GetCustomParamNumber_70 ('guestAccessAuthType', 'P') Delete @ProfNoTable Insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@GuestAccessParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @GuestAccessParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) <> '' and (t.ProfID=@ProfID or @ProfID='') Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, HideInterface from @ProfDetailsTable return End End /* Filter result set based on given DbList - do not remove Profile where the ProfID matches the requested ProfID even if that Profile does not have access to given DbList. */ if @ShortDbsList<>'' Begin Insert @DbNameTable select * from dbo.EAIF_GetItemTable_70(@ShortDbsList, ',') if dbo.EAIF_IsAnyAuthorityDatabase_86(@ShortDbsList, 'live')=1 Begin Delete @ProfNoTable insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable AS t INNER JOIN [dbo].[ProfDatabase] AS pdb ON t.ProfNo = pdb.ProfNo INNER JOIN [dbo].[DbAuthority] AS dba ON pdb.DbVerNo=dba.MainDbVerNo INNER JOIN [dbo].[DbList] AS dbl ON dbl.DbVerNo=dba.AuthDbVerNo INNER JOIN @DbNameTable AS dblt ON dbl.DbName=dblt.DbName where pdb.Enable = 1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) End else Begin Delete @ProfNoTable insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable AS t INNER JOIN [dbo].[ProfDatabase] AS pdb ON t.ProfNo = pdb.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON pdb.DbVerNo=dbl.DbVerNo INNER JOIN @DbNameTable AS dblt ON dbl.DbName=dblt.DbName where pdb.Enable = 1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) End end /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) Begin select ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, HideInterface from @ProfDetailsTable return End /* If SSL is required then filter result set to include only Profiles that are configured for HTTPS - do not remove Profile where the ProfID matches the requested ProfID. If no Profiles would remain then do not do this filter. */ Declare @HttpsParamNo int select @HttpsParamNo = dbo.EAIF_GetCustomParamNumber_70 ('useHttpsAuthentication', 'P') if @UseSsl=1 Begin Delete @ProfNoTable Insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@HttpsParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode INNER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @HttpsParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) = '1' union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID if exists (Select 1 from @ProfNoTable) Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_MakeUrlSecure_86(dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) ,'1') AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, HideInterface from @ProfDetailsTable order by Priority, SeqNo End ELSE BEGIN if (Select TOP 1 ISNULL(cpsv.ParamValue,cpd.DefValue) from @ProfDetailsTable t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@HttpsParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @HttpsParamNo ORDER BY [t].[Priority], [t].[SeqNo]) = 1 select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_MakeUrlSecure_86(dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1), '1') AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, HideInterface from @ProfDetailsTable order by Priority, SeqNo ELSE select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, HideInterface from @ProfDetailsTable order by Priority, SeqNo END end
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceExpandersToAttach_90] ( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN DECLARE @AuitoAdd bit SELECT @AuitoAdd=[dbo].[InterfaceVersion].[AutoAddExpanders] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @AuitoAdd=0 SELECT g.ControlName, g.ControlName+' ('+ gc.DefCaption+')' AS Caption FROM [dbo].[GlobalExpander] g LEFT OUTER JOIN [dbo].[InterfaceExpander] i ON g.ControlName = i.ControlName AND i.InterfaceID=@InterfaceID AND i.Version=@Version INNER JOIN [dbo].[GlobalExpanderCaption] gc ON g.ControlName = gc.ControlName WHERE i.ControlName is null AND gc.LangCode ='en' END
CREATE PROCEDURE [dbo].[EAIS_AddEOColTitle_70]( @ColNo int,@ISSN varchar(20), @JournalTitle nvarchar(200), @EJSJournalID int, @FromDate char(8),@ToDate char(8)) AS BEGIN DECLARE @TitleNo int DECLARE @YesMsgNo int DECLARE @NoMsgNo int EXEC [dbo].[EAIPO_AddYesMessage_70] 'eonline','This title is available through EJS',@YesMsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] 'eonline','',@NoMsgNo OUTPUT --1st Try using ISSN SET @TitleNo=dbo.EAIF_GetTitleNo_70(@ISSN) /*In EJS data, where we have Journal titles which has neither pISSN nor eISSN but some Titles have valid ISSNs in EAMASTER.MasterTitle list. So to better handle these Titles look up using Journal Titles apart from standard ISSN.*/ --2nd Try using Journal title IF (@TitleNo is null) BEGIN SET @TitleNo=dbo.EAIF_GetTitleNoByTitle_79(@JournalTitle) END --If the Title was not already exists in MasterTitle talbe add it. IF (@TitleNo is null) BEGIN IF @ISSN = '' SET @ISSN = null SET @ISSN = replace(@ISSN,'-','') --If the ISSN is available add to the Master Titles IF (@ISSN != null) BEGIN EXEC [dbo].[EAIPO_AddMasterTitle_70] @JournalTitle, @ISSN, null, null, @EJSJournalID, null, null, null,'eonline', @TitleNo OUTPUT END --if the ISSN is NOT available, try look up for the Title itslef, if this also does NOT exists then add the Title with ISSN=Null ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[MatchTitle] WHERE [dbo].[MatchTitle].[MatchTitle]=dbo.EAIF_GetMatchTitle_70(@JournalTitle,@ISSN)) BEGIN EXEC [dbo].[EAIPO_AddMasterTitle_70] @JournalTitle, @ISSN, null, null, @EJSJournalID, null, null, null,'eonline', @TitleNo OUTPUT END END IF (@TitleNo is not null) BEGIN EXEC [dbo].[EAIP_AddModLocalTitle_70] @ColNo,@TitleNo,1,@YesMsgNo,@NoMsgNo,NULL,NULL,NULL EXEC [dbo].[EAIP_AddModLocalDate_70] @ColNo,@TitleNo,@FromDate, @ToDate END END
CREATE PROCEDURE [dbo].[EPCAS_GetCustLocalCollectionList]( @ShortDbName varchar(10), @DbLabel varchar(10)='live' ) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDbName AND [dbo].[DbList].[DbLabel]=@DbLabel SELECT cus.CustID, col.ColID, col.Exclude FROM ( SELECT DISTINCT prf.CustID FROM [dbo].[ProfDatabase] pdb INNER JOIN [dbo].[Profile] prf ON prf.ProfNo=pdb.ProfNo WHERE pdb.DbVerNo=@DbVerNo AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) ) cus INNER JOIN [dbo].[Collection] col ON cus.CustID=col.CustID WHERE (col.AutoRecreate=1 OR col.ForceRecreate=1) AND col.IsDeleted = 0 ORDER BY cus.CustID, col.ColID END
CREATE PROCEDURE [dbo].[EAUI_GetDbFieldGroupMktDefaults_70](@DbVerNo int, @FieldGroupNo int, @OutputMode varchar(10)) AS BEGIN SELECT mkt.MarketID, mkt.Description as 'Market', ISNULL(fgd.DefValue, 0) AS 'Defaults' FROM EASUPPORT.dbo.MarketList mkt LEFT OUTER JOIN [dbo].[DbFieldGroupDefaults] fgd ON mkt.MarketID=fgd.MarketID AND fgd.DbVerNo=@DbVerNo AND fgd.FieldGroupNo=@FieldGroupNo AND fgd.OutputMode=@OutputMode ORDER BY mkt.Description END
/*Automated Subscription Deletion - Close access to db*/ CREATE PROCEDURE [dbo].[EAUI_SortProfileDB_70] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int) AS BEGIN DECLARE @DbVerNoList varchar(8000) SELECT @DbVerNoList = '' DECLARE @DbOrderList varchar(8000) SELECT @DbOrderList = '' DECLARE @TempInt int SELECT @TempInt = 0 SELECT @DbVerNoList = @DbVerNoList + '+' + convert(varchar,a.DbVerNo), @TempInt = @TempInt +1, @DbOrderList = @DbOrderList + '+' + convert(varchar,@TempInt) FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo WHERE a.ProfNo =@ProfNo -- AND a.Enable = 1 AND (a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) ORDER BY b.DisplayName ASC SELECT @DbVerNoList = substring(@DbVerNoList, charindex('+',@DbVerNoList)+1, 2048) SELECT @DbOrderList = substring(@DbOrderList, charindex('+',@DbOrderList)+1, 2048) EXEC [dbo].[EAUI_UpdateProfileDBOrder_70] @UserID, @UserIP, @ProfNo, @DbVerNoList, @DbOrderList END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseBrowseOptions_70]( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRANSACTION /****** DbBrowseOption ******/ DELETE FROM [dbo].[DbBrowseOption] WHERE [dbo].[DbBrowseOption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbBrowseOption] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbBrowseOption].[BrowseOptionNo],[dbo].[DbBrowseOption].[OptionType],[dbo].[DbBrowseOption].[SearchString],[dbo].[DbBrowseOption].[TargetDb],[dbo].[DbBrowseOption].[SourceType],[dbo].[DbBrowseOption].[TabImage],[dbo].[DbBrowseOption].[AuthoritySubset],[dbo].[DbBrowseOption].[AuthorityView],[dbo].[DbBrowseOption].[IsHeading] FROM [dbo].[DbBrowseOption] WHERE [dbo].[DbBrowseOption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /****** DbBrowseOptionCaption ******/ DELETE FROM [dbo].[DbBrowseOptionCaption] WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbBrowseOptionCaption] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbBrowseOptionCaption].[BrowseOptionNo],[dbo].[DbBrowseOptionCaption].[LangCode],[dbo].[DbBrowseOptionCaption].[OptionCaption],[dbo].[DbBrowseOptionCaption].[ResultCaption],[dbo].[DbBrowseOptionCaption].[Description] FROM [dbo].[DbBrowseOptionCaption] WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /** DbInterfaceBrowseOption*/ DELETE FROM [dbo].[DbInterfaceBrowseOption] WHERE [dbo].[DbInterfaceBrowseOption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbInterfaceBrowseOption] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbInterfaceBrowseOption].[IntfScreenNo],[dbo].[DbInterfaceBrowseOption].[BrowseOptionNo],[dbo].[DbInterfaceBrowseOption].[Show],[dbo].[DbInterfaceBrowseOption].[SeqNo] FROM [dbo].[DbInterfaceBrowseOption] WHERE [dbo].[DbInterfaceBrowseOption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* Remove Customized Profile Browse Options that are not found in DbBrowseOptions */ DELETE [dbo].[ProfDbBrowseOption] FROM [dbo].[ProfDbBrowseOption] WHERE [dbo].[ProfDbBrowseOption].[DbVerNo] = @NewDbVerNo AND [dbo].[ProfDbBrowseOption].[BrowseOptionNo] NOT IN (SELECT [dbo].[DbBrowseOption].[BrowseOptionNo] FROM [dbo].[DbBrowseOption] WHERE [dbo].[DbBrowseOption].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
-- UPDATE the Enable, Config and Translation data for the given database CREATE PROCEDURE [dbo].[EAUI_UpdateDbRTACInfo_141] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @ILSIntegration NVARCHAR(255), @Enable bit, @Config nvarchar(max), @Translation nvarchar(max)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- get the database info for logging DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo -- log the activity EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DbRTACInfo', 'Update RTACInfo', @DbName,@Dblabel -- call the stored procedure to do the update EXEC [dbo].[EAIP_UpdateDbRTACInfo_141] @DbVerNo, @ILSIntegration, @Enable, @Config, @Translation END
CREATE FUNCTION [dbo].[EAIF_GetLogTitleName_70](@TitleNo int) RETURNS nvarchar(30) AS BEGIN RETURN (SELECT IsNull([dbo].[MasterTitle].[ISSN],[dbo].[MasterTitle].[Title]) FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo]=@TitleNo) END
CREATE PROCEDURE [dbo].[EAUI_GetConsortiumListBrowseByCustID_70](@CustID varchar(10)) AS BEGIN SELECT DISTINCT b.ParentID as 'CustID', a.CustName FROM dbo.Customer A INNER JOIN dbo.CustomerGroup B ON a.CustID = b.ParentID WHERE b.ParentID LIKE @CustID + '%' ORDER BY a.CustName END
CREATE PROCEDURE [dbo].[EAIP_AddModifyInterfaceScreenDetails_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ScreenID VARCHAR(10), @Description NVARCHAR(255), @AutoAddLimiter BIT, @LimiterSHow BIT, @LibSearchOption BIT, @LibBrowseOption BIT, @LibDBLimiters BIT, @LibLocalLimiters BIT, @SearchOptionNote NVARCHAR(255), @BrowseOptionNote NVARCHAR(255), @AutoAddMDbLimiter BIT, @Action VARCHAR(4) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID and [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @AddMod VARCHAR(25),@IntfScreenNo INT IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID and [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:''%s'' already exists for InterfaceID: ''%s'' and version: ''%s''.', 16,-1, @ScreenID, @InterfaceID, @Version) RETURN END DECLARE @NextSeqNo INT BEGIN TRANSACTION SELECT @NextSeqNo = MAX([dbo].[InterfaceScreen].[SeqNo])+1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version IF @NextSeqNo is NULL BEGIN SET @NextSeqNo = 0 END INSERT INTO [dbo].[InterfaceScreen]([dbo].[InterfaceScreen].[InterfaceID], [dbo].[InterfaceScreen].[Version], [dbo].[InterfaceScreen].[ScreenID], [dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[SeqNo], [dbo].[InterfaceScreen].[AutoAddLimiter], [dbo].[InterfaceScreen].[LimiterShow], [dbo].[InterfaceScreen].[LibSearchOption], [dbo].[InterfaceScreen].[LibBrowseOption], [dbo].[InterfaceScreen].[LibDbLimiters], [dbo].[InterfaceScreen].[LibLocalLimiters], [dbo].[InterfaceScreen].[SearchOptionNote], [dbo].[InterfaceScreen].[BrowseOptionNote], [dbo].[InterfaceScreen].[AutoAddMDbLimiter]) VALUES (@InterfaceID, @Version, @ScreenID, @Description, @NextSeqNo, @AutoAddLimiter, @LimiterSHow, @LibSearchOption, @LibBrowseOption, @LibDBLimiters, @LibLocalLimiters, @SearchOptionNote, @BrowseOptionNote, @AutoAddMDbLimiter) SET @AddMod = 'Add Version' IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END ELSE BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID and [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:''%s'' does not exist for InterfaceID: ''%s'' and version: ''%s''.', 16,-1, @ScreenID, @InterfaceID, @Version) RETURN END BEGIN TRY SET @IntfScreenNo= (select [dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID and [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version) BEGIN TRANSACTION UPDATE [dbo].[InterfaceScreen] SET [dbo].[InterfaceScreen].[Description] = @Description, [dbo].[InterfaceScreen].[AutoAddLimiter] = @AutoAddLimiter, [dbo].[InterfaceScreen].[LimiterShow] = @LimiterShow, [dbo].[InterfaceScreen].[LibSearchOption] = @LibSearchOption, [dbo].[InterfaceScreen].[LibBrowseOption] = @LibBrowseOption, [dbo].[InterfaceScreen].[LibDbLimiters] = @LibDBLimiters, [dbo].[InterfaceScreen].[LibLocalLimiters] = @LibLocalLimiters, [dbo].[InterfaceScreen].[SearchOptionNote] = @SearchOptionNote, [dbo].[InterfaceScreen].[BrowseOptionNote] = @BrowseOptionNote, [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=@AutoAddMDbLimiter WHERE [dbo].[InterfaceScreen].[IntfScreenNo] = @IntfScreenNo IF (@AutoAddMDbLimiter=1) BEGIN DELETE [dbo].[InterfaceMDbLimiterList] WHERE [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@IntfScreenNo AND [dbo].[InterfaceMDbLimiterList].[LimiterNo] in (SELECT [dbo].[MDbLimiterList].[LimiterNo] FROM [dbo].[MDbLimiterList] WHERE [dbo].[MDbLimiterList].[AutoAdd]=1) END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH SET @AddMod = 'Edit Version' END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface Screens',@AddMod, @InterfaceID,@Version,@ScreenID, @Description, @SearchOptionNote END
CREATE PROCEDURE [dbo].[EAIP_GetDatabaseConfiguration_243] @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10) AS BEGIN DECLARE @ProfNo INT, @InterfaceID VARCHAR(10), @Version VARCHAR(10), @MarketID VARCHAR(20), @STMode CHAR(1), @DbLabel VARCHAR(10) SELECT @ProfNo = p.ProfNo, @InterfaceID = p.InterfaceID, @Version = p.Version, @MarketID = p.MarketID, @STMode = p.STMode, @DbLabel = p.DbLabel FROM dbo.Profile p WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.ProfID = @ProfID SELECT @DbLabel AS [DbLabel], [dbo].[EAIF_GetCustomParamScalarValue_70] ('displayDbsAtoZNavigation', @InterfaceID, @Version, @MarketID, @STMode, @ProfNo, 'P') AS [DisplayAZNavigation] SELECT dbl.DbName AS [ShortName], pdb.SeqNo AS [DbOrder], pdb.SelDefault AS [DefaultToSelected] FROM dbo.ProfDatabase pdb INNER JOIN dbo.DbList dbl ON dbl.DbVerNo = pdb.DbVerNo WHERE pdb.ProfNo = @ProfNo AND pdb.[Enable] = 1 AND (pdb.AccessEndDate IS NULL OR pdb.AccessEndDate >= GETDATE()) ORDER BY [DbOrder] END
/**********************************************************************/ CREATE PROCEDURE [dbo].[EAUI_GetVersionsList_70](@InterfaceID varchar(10), @NotIncludeVersion varchar(10)) AS BEGIN SELECT a.InterfaceID, a.Version, b.InterfaceName FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version WHERE b.LangCode = 'en' AND (a.InterfaceID <> @InterfaceID OR a.Version<>@NotIncludeVersion) ORDER BY [b].[InterfaceName] END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbDiscipline(@DbName varchar(10)) RETURNS XML BEGIN RETURN( SELECT [dbo].[DbDiscipline].[DisciplineNo], [dbo].[DbDiscipline].[DbName] FROM [dbo].[DbDiscipline] WHERE [dbo].[DbDiscipline].[DbName] = @DbName ORDER BY [dbo].[DbDiscipline].[DisciplineNo], [dbo].[DbDiscipline].[DbName] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCfgAppParam_70]( @UserID nvarchar(20), @UserIP varchar(15), @AppID varchar(20), @ParamNo int) AS BEGIN DECLARE @ParamID varchar(100) SET @ParamID = dbo.EAIF_GetConfigParamName_70(@ParamNo) DELETE FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ParamNo] = @ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Delete Application Parameter', @AppID, @ParamID END
CREATE PROCEDURE [dbo].[UTIL_GetProcText](@ProcName varchar(100), @ProcUsers varchar(255)='eadmin') AS BEGIN -- P = Stored procedure -- FN = Scalar function -- IF = Inlined table-function -- TF = Table function -- TR = Trigger -- V = View -- X = Extended stored procedure SET NOCOUNT ON DECLARE @Name varchar(100) DECLARE @Text varchar(8000) DECLARE @DropText varchar(8000) DECLARE @ProcType char(2) DECLARE @Posn int DECLARE @CrLf varchar(50) DECLARE @GO varchar(50) SET @CrLf = CHAR(13)+CHAR(10) SET @GO = 'GO' + @CrLf CREATE TABLE #TempSPText (ProcText text) DECLARE @ptrval binary(16) SET @Text = 'PRINT ''-- DROPPING & CREATING -- ' + @ProcName + '''' SET @Text = @Text + @CrLf + @GO INSERT INTO #TempSPText VALUES(@Text) SET @Text = '' SELECT @ptrval = TEXTPTR(#TempSPText.[ProcText]) FROM #TempSPText DECLARE @CurrRow int, @TotalRows int SET @CurrRow=1 SELECT @TotalRows=MAX(a.colid), @ProcType=MAX(b.type) FROM [dbo].[syscomments] a INNER JOIN [dbo].[sysobjects] b ON a.id=b.id WHERE b.type in ('P','FN','IF','TF','TR','V','X') AND b.id=OBJECT_ID(@ProcName) SET @DropText = dbo.UTIL_GetDropStmt(@ProcName, @ProcType) UPDATETEXT #TempSPText.ProcText @ptrval NULL 0 @DropText WHILE (@CurrRow <= @TotalRows) BEGIN SELECT @Text=a.text FROM [dbo].[syscomments] a INNER JOIN [dbo].[sysobjects] b ON a.id=b.id WHERE b.type in ('P','FN','IF','TF','TR','V','X') AND b.id=OBJECT_ID(@ProcName) AND a.colid=@CurrRow -- Left Trim is to be done once. IF @CurrRow=1 SET @Text = dbo.UTIL_LeftTrimProcText(@Text) -- Last piece of data --IF @CurrRow=@TotalRows -- SET @Text = dbo.UTIL_RightTrimProcText(@Text) UPDATETEXT #TempSPText.ProcText @ptrval NULL 0 @Text SET @CurrRow = @CurrRow+1 END SET @Text = @CrLf UPDATETEXT #TempSPText.ProcText @ptrval NULL 0 @Text SET @Text = @GO UPDATETEXT #TempSPText.ProcText @ptrval NULL 0 @Text SET @Text = dbo.UTIL_GetGrantToNames(@ProcName, @ProcType, @ProcUsers) UPDATETEXT #TempSPText.ProcText @ptrval NULL 0 @Text SELECT * FROM #TempSPText DROP TABLE #TempSPText END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceExpanders_81] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceExpander] WHERE [dbo].[InterfaceExpander].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceExpander].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceExpander] ([dbo].[InterfaceExpander].[InterfaceID], [dbo].[InterfaceExpander].[Version], [dbo].[InterfaceExpander].[ControlName], [dbo].[InterfaceExpander].[ControlShow], [dbo].[InterfaceExpander].[ControlDefault]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceExpander].[ControlName], [dbo].[InterfaceExpander].[ControlShow], [dbo].[InterfaceExpander].[ControlDefault] FROM [dbo].[InterfaceExpander] WHERE [dbo].[InterfaceExpander].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceExpander].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[AutoAddExpanders]= (SELECT [dbo].[InterfaceVersion].[AutoAddExpanders] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceVersion].[Version] = @VersionFrom ) WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceVersion].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
Create PROCEDURE [dbo].[EAUI_GetPersonalizationEnabledSiteList_100] (@ParentID varchar(10)) AS BEGIN DECLARE @ParamNo int declare @DefValue varchar(4000) declare @tempTable table (CustID varchar(10), GroupID varchar(10), PersonalizationEnabledProfileCount int) Insert @tempTable select ug.CustID, ug.GroupID, SUM(convert(int, isnull(iv.AllowPersonalization, 0))) from [dbo].[CustomerGroup] cg join [dbo].[UserGroup] ug on cg.ChildID=ug.CustID left outer join [dbo].[Profile] p on ug.CustID=p.CustID and ug.GroupID=p.GroupID left outer join [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID and p.Version=iv.Version and iv.AllowPersonalization=1 where cg.ParentID=@ParentID Group by ug.CustID, ug.GroupID SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('personalization', 'G') SELECT @DefValue=[dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo AND [dbo].[CustomParamList].[ParamLevel]='G' SELECT distinct c.CustID, c.CustName,CASE WHEN LEN(c.CustName)>30 THEN substring( c.CustName, 1, 30)+'...' ELSE substring( c.CustName, 1, 30) END as FormattedName FROM [dbo].[CustomerGroup] cg join [dbo].[Customer] c on cg.ChildID=c.CustID join [dbo].[UserGroup] ug on c.CustID=ug.CustID join @tempTable t on ug.CustID=t.CustID and ug.GroupID=t.GroupID left outer join [dbo].[CustomParamScalarValues] val on ug.GroupNo=val.TargetNo AND val.ParamNo=@ParamNo and val.ParamLevel='G' left outer join [dbo].[CustomParamDefaults] dval on val.ParamNo=dval.ParamNo AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=c.MarketID AND dval.STMode=dbo.EAIF_CustTypeToSTMode_70(CustType) WHERE cg.ParentID=@ParentID and isnull(isnull(ParamValue, DefValue),@DefValue)=1 and t.PersonalizationEnabledProfileCount>0 ORDER BY c.CustName END
CREATE PROCEDURE [dbo].[EAUI_AddCfgApplication_70]( @UserID nvarchar(20), @UserIP varchar(15), @ApplicationID varchar(20), @Description varchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID) BEGIN RAISERROR('The Application ID (%s) already exists', 16,-1, @ApplicationID ) RETURN END INSERT INTO [dbo].[ConfigApplication] ( [dbo].[ConfigApplication].[ApplicationID], [dbo].[ConfigApplication].[Description], [dbo].[ConfigApplication].[ApplicationType]) VALUES ( @ApplicationID, @Description, 'N') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Add Application', @ApplicationID, @Description END
CREATE PROCEDURE [dbo].[EPCS_GetLimiterControlTypes_76] AS BEGIN SELECT [dbo].[LimiterControlType].[ControlType], [dbo].[LimiterControlType].[ControlTag] FROM [dbo].[LimiterControlType] ORDER BY [dbo].[LimiterControlType].[ControlType] END
CREATE PROCEDURE [dbo].[AUTH_GetPersistentLinkProfile_MultiAffiliation] (@CustIdList VARCHAR(MAX), @GroupIdList VARCHAR(MAX), @UseSsl BIT, @ShortDbsList VARCHAR(8000), @InterfaceID VARCHAR(25), @IsMobileRequest BIT, @IsGuestRequest BIT, @ProfID VARCHAR(10), @OnlySpecifiedSite bit=0) AS BEGIN DECLARE @ItemValueTable TABLE (CustId nvarchar(255), GroupId nvarchar(255), RowNumber int) DECLARE @MaxRow int, @curRow INT, @curCustId VARCHAR(20), @curGroupId VARCHAR(20) INSERT INTO @ItemValueTable(CustId, GroupId, RowNumber) SELECT * FROM [dbo].[EAIF_GetItemValueTable_WithRowNumber](@CustIdList,@GroupIdList, ',') SELECT @MaxRow= MAX(RowNumber) FROM @ItemValueTable SELECT @CurRow = 1 --ProfNo, ProfId, ProfName, SiteId, MarketId, StMode, SiteUrl, PassingMode, ProfPwd, DefLangCode, DefView,InterfaceId,Verision,NewWin,SeqNo,IsMobile DECLARE @ProfileRet AS TABLE(ProfNo VARCHAR(50), ProfId VARCHAR(200), ProfName NVARCHAR(500),siteId NVARCHAR(50), MarketId NVARCHAR(50), StMode VARCHAR(5), SiteUrl NVARCHAR(1000), PassingMode VARCHAR(100), profPwd nvarchar(500), defLangCode NVARCHAR(10), DefView VARCHAR(100), interfaceId VARCHAR(100), version VARCHAR(10), Newwin BIT, seqNo VARCHAR(50), IsMobile BIT, MD5TokenSalt VARCHAR(255), HideInterface BIT) --need to loop through the list of customer groups in the correct order and get the profiles --done in a loop because we dont have time to create a complex getProfiles method that would work with multiple cust/groups WHILE @CurRow <= @maxRow BEGIN SELECT @curCustId = CustId, @curGroupId = groupId FROM @ItemValueTable WHERE RowNumber = @CurRow INSERT INTO @ProfileRet EXEC [dbo].[AUTH_GetPersistentLinkProfile_910] @curCustId, @curGroupId, @UseSsl, @ShortDbsList, @InterfaceID, @IsMobileRequest, @IsGuestRequest, @ProfID, @OnlySpecifiedSite --if we found one then we are done IF @@ROWCOUNT >0 BEGIN SELECT p.*, @curCustId AS [CustId], @curGroupId AS [GroupId] FROM @ProfileRet p RETURN END SELECT @CurRow = @CurRow + 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceFeatureDbList_77] (@InterfaceID varchar(10), @Version varchar(10)='live')AS BEGIN SELECT db.DbName, db.DisplayName+N'('+db.DbName+N')'AS DisplName FROM EASUPPORT.dbo.ProductInterface pri INNER JOIN [dbo].[DbList] db ON pri.ProductID = db.DbName WHERE pri.InterfaceID = @InterfaceID AND pri.Version=@Version AND db.DbLabel='live' UNION ALL SELECT distinct db.DbName, db.DisplayName+N'('+db.DbName+N')' AS DisplName FROM [dbo].[DbList] db INNER JOIN [dbo].[DbAuthority] dba ON db.DbVerNo = dba.AuthDbVerNo INNER JOIN [dbo].[DbList] dbp ON dba.MainDbVerNo = dbp.DbVerNo INNER JOIN EASUPPORT.dbo.ProductInterface pri ON pri.ProductID = dbp.DbName WHERE pri.InterfaceID = @InterfaceID AND pri.Version=@Version AND dbp.DbLabel='live' Order By DisplName END
CREATE PROCEDURE [dbo].[EAIS_AddSearchThemes_84](@Mode varchar(10), @ThemeID varchar(20), @Caption nvarchar(255), @Description nvarchar(1500)=null, @SearchString varchar(1500)=null, @ParentThemeID varchar(20), @Image varchar(255)=null, @AltText nvarchar(255)=null, @CustomAttributes xml=null, @Show varchar(1), @InterfaceID varchar(20), @InterfaceVersion varchar(20)) AS BEGIN IF ISNULL(@ThemeID, '') = '' RETURN IF EXISTS (Select 1 From [dbo].[SearchTheme] WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID) BEGIN --Replace/Update mode IF (CharIndex('r',@Mode) > 0) BEGIN BEGIN TRANSACTION UPDATE [dbo].[SearchTheme] SET [dbo].[SearchTheme].[SearchString]=@SearchString, [dbo].[SearchTheme].[Image]=@Image, [dbo].[SearchTheme].[ParentThemeID]=@ParentThemeID, [dbo].[SearchTheme].[CustomAttributes]=@CustomAttributes WHERE [dbo].[SearchTheme].[ThemeID] = @ThemeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[SearchThemeCaption] SET [dbo].[SearchThemeCaption].[Caption]=@Caption, [dbo].[SearchThemeCaption].[ImageAltText]=@AltText, [dbo].[SearchThemeCaption].[Description]=@Description WHERE [dbo].[SearchThemeCaption].[ThemeID] = @ThemeID AND [dbo].[SearchThemeCaption].[LangCode]='en' IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END ELSE BEGIN RAISERROR ('Search Theme %s already exists.',16,-1,@ThemeID) RETURN END END ELSE BEGIN --Append mode BEGIN TRANSACTION INSERT INTO [dbo].[SearchTheme] ([dbo].[SearchTheme].[ThemeID], [dbo].[SearchTheme].[SearchString], [dbo].[SearchTheme].[Image], [dbo].[SearchTheme].[ParentThemeID], [dbo].[SearchTheme].[CustomAttributes]) VALUES ( RTrim(LTrim(@ThemeID)), @SearchString, @image, RTrim(LTrim(@ParentThemeID)), @CustomAttributes ) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[SearchThemeCaption] ([dbo].[SearchThemeCaption].[ThemeID], [dbo].[SearchThemeCaption].[LangCode], [dbo].[SearchThemeCaption].[Caption], [dbo].[SearchThemeCaption].[ImageAltText], [dbo].[SearchThemeCaption].[Description]) VALUES ( @ThemeID, 'en', @Caption, @AltText, @Description ) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END BEGIN TRANSACTION UPDATE [dbo].[SearchTheme] SET [dbo].[SearchTheme].[Lineage]='/', [dbo].[SearchTheme].[Depth]=0 WHERE ISNULL([dbo].[SearchTheme].[ParentThemeID], '') = '' AND [dbo].[SearchTheme].[ThemeID]=@ThemeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE T SET T.Depth = P.Depth + 1, T.Lineage = P.Lineage + Ltrim(ISNULL(T.ParentThemeID,'')) + '/' FROM [dbo].[SearchTheme] AS T INNER JOIN [dbo].[SearchTheme] AS P ON (ISNULL(T.ParentThemeID,'')=P.ThemeID) WHERE P.Depth>=0 AND Len(ISNULL(P.Lineage, '')) > 0 AND ISNULL(T.Depth, '') = '' AND T.ThemeID=@ThemeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION IF ISNULL(@InterfaceID, '') = '' RETURN DECLARE @ShowItem bit SET @ShowItem = (CASE WHEN @Show='Y' THEN 1 ELSE 0 END) IF (@ParentThemeID IS NULL OR @ParentThemeID='') BEGIN IF NOT EXISTS (Select 1 From [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[ThemeID]=@ThemeID AND [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID) BEGIN INSERT INTO [dbo].[InterfaceSearchTheme] ([dbo].[InterfaceSearchTheme].[InterfaceID], [dbo].[InterfaceSearchTheme].[Version], [dbo].[InterfaceSearchTheme].[ThemeID], [dbo].[InterfaceSearchTheme].[Show]) SELECT @InterfaceID, [dbo].[EAIF_GetItemTable_70].[Item], @ThemeID, @ShowItem FROM dbo.EAIF_GetItemTable_70(ISNULL(@InterfaceVersion,'live'), ',') WHERE [dbo].[EAIF_GetItemTable_70].[Item] NOT IN (SELECT ist.Version FROM [dbo].[InterfaceSearchTheme] ist WHERE ist.ThemeID=@ThemeID AND ist.InterfaceID=@InterfaceID) END ELSE BEGIN UPDATE [dbo].[InterfaceSearchTheme] SET [dbo].[InterfaceSearchTheme].[Show]=@ShowItem WHERE [dbo].[InterfaceSearchTheme].[ThemeID]=@ThemeID AND [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID END END END
CREATE PROCEDURE [dbo].[EPCAS_GetDbLimitersByName](@ShortDBName varchar(10), @LiveRebuild varchar(10) ) AS BEGIN SET NOCOUNT ON SELECT lst.ControlType as 'CtrlType', ltyp.ControlTag as 'CtrlTag', cpt.Caption, CtrlDefault=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5 OR dbl.DefValue='On') THEN 1 ELSE 0 END, Tag=CASE WHEN lst.ControlType=17 THEN lst.LimiterId ELSE SUBSTRING(dbl.SearchString,1,2) END, ltyp.ControlFormat as 'Format', lst.ControlSize as 'CtrlSize', '' as 'ColId', 0 as 'Category', --skipValueText=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,31,8000), ' ', ''),'', '_'), '_All', ' (None)')) WHEN (lst.ControlType=15) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=16) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=17) THEN dbl.SearchString ELSE NULLIF(REPLACE(SUBSTRING(dbl.SearchString, 4, 4000), '{val}', ''), 'y') END, '' as 'ValueText' FROM [dbo].[DbList] AS mdb INNER JOIN [dbo].[DbLimiter] AS dbl ON mdb.DbVerNo = dbl.DbVerNo LEFT OUTER JOIN [dbo].[DbLimiterDetail] AS txt ON dbl.LimiterNo = txt.LimiterNo AND dbl.DbVerNo = txt.DbVerNo INNER JOIN [dbo].[LimiterList] AS lst ON dbl.LimiterNo = lst.LimiterNo INNER JOIN [dbo].[LimiterControlType] AS ltyp ON lst.ControlType = ltyp.ControlType INNER JOIN [dbo].[DbLimiterCaption] AS cpt ON dbl.DbVerNo = cpt.DbVerNo AND dbl.LimiterNo = cpt.LimiterNo WHERE mdb.DbName = @ShortDBName AND mdb.DbLabel = @LiveRebuild AND cpt.LangCode = 'en' ORDER BY dbl.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetDbInterfaceBrowseOptions_76] (@DbVerNo int, @ScreenNo int ) AS BEGIN SELECT iso.BrowseOptionNo, iso.SeqNo, sol.BrowseOptionId, dsc.OptionCaption, iso.Show FROM [dbo].[DbInterfaceBrowseOption] iso INNER JOIN [dbo].[DbBrowseOptionCaption] dsc ON iso.DbVerNo = dsc.DbVerNo AND iso.BrowseOptionNo = dsc.BrowseOptionNo INNER JOIN [dbo].[BrowseOptionList] sol ON iso.BrowseOptionNo=sol.BrowseOptionNo WHERE iso.DbVerNo = @DbVerNo AND iso.IntfScreenNo = @ScreenNo AND dsc.LangCode='en' ORDER BY iso.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateCollectionsUsedByCustomLink_912](@UserID nvarchar(20), @UserIP varchar(15), @LinkID varchar(255)) AS BEGIN exec [dbo].[UTIL_UpdateCollectionsUsedByCustomLinks_912] '', 1, @LinkID,@UserID,@UserIP END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseClusters_161](@OldDbLabel varchar(10), @NewDbLabel varchar(10), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION IF (@OldDbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @OldDbLabel = 'custom' IF (@NewDbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @NewDbLabel = 'custom' DECLARE @SourceClusters TABLE (DbVerNo int, ClustId varchar(20), SeqNo smallint, AutoAdd2Db bit, DbSearchTag nvarchar(5), Enable bit) --retrieve assigned clusters from source label INSERT INTO @SourceClusters (DbVerNo, ClustId, SeqNo, AutoAdd2Db, DbSearchTag, Enable) SELECT dc.DbVerNo, cl.ClustId, cl.SeqNo, cl.AutoAdd2Db, dc.DbSearchTag, dc.Enable FROM [dbo].[ClusterList] cl Left Outer JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo join #TempDbListTable t on dc.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE cl.DbLabel = @OldDbLabel AND ((cl.AutoAdd2Db = 1 AND (dc.Enable Is Null OR dc.DbSearchTag IS NOT NULL)) OR dc.Enable = 1) --update existing clusters if necessary UPDATE [dbo].[ClusterList] SET [SeqNo] = sc.SeqNo, [AutoAdd2Db] = sc.AutoAdd2Db FROM [dbo].[ClusterList] cl JOIN @SourceClusters sc ON cl.DbLabel = @NewDbLabel AND cl.ClustId = sc.ClustId WHERE cl.SeqNo != sc.SeqNo OR cl.AutoAdd2Db != sc.AutoAdd2Db --insert new clusters INSERT INTO [dbo].[ClusterList]([gcNew].[ClustId], [gcNew].[DbLabel], [gcNew].[SeqNo], [gcNew].[AutoAdd2Db]) SELECT gc.ClustId, @NewDbLabel, gc.SeqNo, gc.AutoAdd2Db FROM @SourceClusters gc Left Outer JOIN [dbo].[ClusterList] gcNew ON gc.ClustId = gcNew.ClustId AND gcNew.DbLabel = @NewDbLabel WHERE gcNew.ClustId Is Null --make sure all necessary clusters are assigned DELETE dbc FROM [dbo].[DbCluster] dbc JOIN #TempDbListTable t on dbc.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) ----no autoadd Insert [dbo].[DbCluster] select t.UpperDbVerNo, ClustNo, 1, sc.DbSearchTag from @SourceClusters sc join [dbo].[ClusterList] cl on sc.ClustId =cl.ClustId AND cl.AutoAdd2Db = 0 AND cl.DbLabel = @NewDbLabel Join #TempDbListTable t on sc.DbVerNo=t.LowerDbVerNo ----autoadd -- sc.ClustId is null if the cluster is in ClusterList but not in @SourceClusters (it won't be null for AutoAdd -- databases that have an overridden DbSearchTag value -- sc.DbSearchTag is not null if the database search tag has been overridden (for AutoAdd or non AutoAdd dbs) Insert [dbo].[DbCluster] Select t.UpperDbVerNo, cl.ClustNo, ISNULL(sc.Enable, 0), sc.DbSearchTag From [dbo].[ClusterList] cl Left Outer Join @SourceClusters sc ON cl.ClustId = sc.ClustId AND cl.DbLabel = @NewDbLabel join #TempDbListTable t on sc.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE (sc.ClustId Is Null OR sc.DbSearchTag IS NOT NULL) AND cl.AutoAdd2Db = 1 AND cl.DbLabel = @NewDbLabel COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbSearchOption_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @OptionNo int, @OptionType varchar(1), @SearchString varchar(255), @TargetDb varchar(10), @SourceType varchar(100), @TabImage varchar (255), @SubsetID varchar(20), @ViewID varchar(20), @OptionCaption nvarchar(255), @ResultCaption nvarchar(255), @Description nvarchar(max), @Lang varchar(10)) AS BEGIN DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[SearchOptionList].[SearchOptionId] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionNo]=@OptionNo IF @SearchString='' SELECT @SearchString =null IF @TargetDb='' SELECT @TargetDb=null IF @SourceType='' SELECT @SourceType=null IF @TabImage='' SELECT @TabImage=null IF @SubsetID='' SELECT @SubsetID=null IF @ViewID='' SELECT @ViewID=null IF @ResultCaption=N'' SELECT @ResultCaption=null IF @Description=N'' SELECT @Description=null IF @SourceType IS NOT NULL AND NOT EXISTS( SELECT 1 FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[DbDocType] ddt ON dtl.DocTypeNo =ddt.DocTypeNo WHERE ddt.DbVerNo = @DbVerNo AND dtl.DocTypeID = @SourceType ) BEGIN RAISERROR ('Document Type ID "%s" passed as a Source Type does not exist or is not attached to the database.',16,1, @SourceType) RETURN END BEGIN TRANSACTION Update [dbo].[DbSearchOption] Set [dbo].[DbSearchOption].[OptionType]=@OptionType,[dbo].[DbSearchOption].[SearchString]=@SearchString, [dbo].[DbSearchOption].[TargetDb]=@TargetDb,[dbo].[DbSearchOption].[SourceType]=@SourceType,[dbo].[DbSearchOption].[TabImage]=@TabImage, [dbo].[DbSearchOption].[AuthoritySubset]=@SubsetID,[dbo].[DbSearchOption].[AuthorityView]=@ViewID WHERE [dbo].[DbSearchOption].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchOption].[SearchOptionNo]=@OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[DbSearchOptionCaption] WHERE [dbo].[DbSearchOptionCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchOptionCaption].[SearchOptionNo]=@OptionNo AND [dbo].[DbSearchOptionCaption].[LangCode]=@Lang) UPDATE [dbo].[DbSearchOptionCaption] SET [dbo].[DbSearchOptionCaption].[OptionCaption]=@OptionCaption,[dbo].[DbSearchOptionCaption].[ResultCaption]=@ResultCaption,[dbo].[DbSearchOptionCaption].[Description]=@Description WHERE [dbo].[DbSearchOptionCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchOptionCaption].[SearchOptionNo]=@OptionNo AND [dbo].[DbSearchOptionCaption].[LangCode]=@Lang ELSE INSERT INTO [dbo].[DbSearchOptionCaption] ([dbo].[DbSearchOptionCaption].[DbVerNo],[dbo].[DbSearchOptionCaption].[SearchOptionNo],[dbo].[DbSearchOptionCaption].[LangCode],[dbo].[DbSearchOptionCaption].[OptionCaption],[dbo].[DbSearchOptionCaption].[ResultCaption],[dbo].[DbSearchOptionCaption].[Description] ) VALUES (@DbVerNo,@OptionNo,@Lang,@OptionCaption,@ResultCaption,@Description) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'SearchOptions', 'Update DbSearch Option', @DbName, @DbLabel, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetMatchTitle_70(@Title nvarchar(430), @ISSN varchar(20)) RETURNS nvarchar(430) AS BEGIN DECLARE @OutTitle nvarchar(430) SET @OutTitle = Lower(@Title) IF @ISSN IS NULL SET @ISSN ='' IF @ISSN <> '' BEGIN DECLARE @Pos int SET @Pos = CharIndex('(',@OutTitle) IF @Pos > 1 SET @OutTitle = SubString(@OutTitle,1, @Pos-1) END SET @OutTitle = replace(@OutTitle,'&','and') SET @OutTitle = replace(@OutTitle,'&','and') SET @OutTitle = replace(@OutTitle,'(online)','') SET @OutTitle = replace(@OutTitle,'.','') SET @OutTitle = replace(@OutTitle,',','') SET @OutTitle = replace(@OutTitle,'"','') SET @OutTitle = replace(@OutTitle,'''','') SET @OutTitle = replace(@OutTitle,'-','') SET @OutTitle = replace(@OutTitle,':','') SET @OutTitle = replace(@OutTitle,';','') SET @OutTitle = replace(@OutTitle,')','') SET @OutTitle = replace(@OutTitle,'(','') SET @OutTitle = replace(@OutTitle,'[','') SET @OutTitle = replace(@OutTitle,']','') SET @OutTitle = replace(' '+@OutTitle+' ',' The ','') SET @OutTitle = replace(' '+@OutTitle+' ',' a ','') SET @OutTitle = replace(' '+@OutTitle+' ',' an ','') SET @OutTitle = replace(@OutTitle,' ','') SET @OutTitle = @ISSN+@OutTitle return @OutTitle END
CREATE PROCEDURE [dbo].[EAUI_GetConsortiumListBrowseByCustName_70](@CustName nvarchar(100)) AS BEGIN SELECT DISTINCT b.ParentID as 'CustID', a.CustName FROM dbo.Customer A INNER JOIN dbo.CustomerGroup B ON a.CustID = b.ParentID WHERE a.CustName LIKE @CustName + '%' ORDER BY a.CustName END
CREATE PROCEDURE dbo.EAIP_AddModifyInterfaceScreenLimiterGroupDetails_161( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ScreenID VARCHAR(10), @GroupNo int, @Description nvarchar(255), @Action varchar(10)) AS BEGIN DECLARE @IntfScreenNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16, -1, @InterfaceID, @Version) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID AND [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16, -1, @ScreenID, @InterfaceID, @Version) RETURN END SELECT @IntfScreenNo = [dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID AND [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version] = @Version IF @Action='Update' BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo] = @GroupNo) BEGIN RAISERROR('The Limiter Group "%i" does not exist.', 16, -1, @GroupNo) RETURN END SET @Action='Edit' END EXEC [dbo].[EAUI_AddModifyInterfaceScreenLimiterGroupDetails_76] @UserID, @UserIP, @IntfScreenNo, @GroupNo, @Description,@Action END
CREATE PROCEDURE [dbo].[EAIP_GetDatabaseCVFilterList_163] (@DbName varchar(10), @DbLabel varchar(10), @startRowIndex INT=1, -- = 1+pagesize*n (n = 0, 1, 2,...) @endRowIndex INT=11 -- Request 1 page plus one row of data, assuming pagesize is 10 ) AS BEGIN Declare @DbVerNo int Select @DbVerNo = [dbo].[DbList].[DbVerNo] from [dbo].[DbList] WITH (NOLOCK) where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@DbLabel SELECT * FROM ( SELECT TOP(@endRowIndex) ROW_NUMBER() OVER(ORDER BY [cvt].[ContentVerticalID]) AS RowNumber, cvf.ContentVerticalFilterID, [cvt].[ContentVerticalID], [cvt].[ContentVerticalName], cvt.Description CVTypeDescription, [cvt].[ExternalIndexName], cvf.Description CVFilterDescription FROM [dbo].[DbCVFilter] dcvf JOIN dbo.ContentVerticalFilter cvf ON dcvf.ContentVerticalFilterNo=cvf.ContentVerticalFilterNo JOIN dbo.ContentVerticalType cvt ON cvf.ContentVerticalNo=cvt.ContentVerticalNo WHERE dcvf.DbVerNo=@DbVerNo) a WHERE [a].[RowNumber] >= @startRowIndex ORDER BY [a].[ContentVerticalID] END
CREATE PROCEDURE [dbo].[EAUI_GetXMLSchemaDefinition_101] @SchemaID VARCHAR(20) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- get the schema SELECT [dbo].[XmlSchema].[SchemaXML] from [dbo].[XmlSchema] WHERE [dbo].[XmlSchema].[SchemaID] = @SchemaID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbDocType(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS DocTypeNo, [dbo].[DbDocType].[TargetDb], [dbo].[DbDocType].[SearchString], [dbo].[DocTypeList].[DocTypeID] AS DocTypeID FROM [dbo].[DbDocType] LEFT JOIN [dbo].[DocTypeList] ON [dbo].[DocTypeList].[DocTypeNo] = [dbo].[DbDocType].[DocTypeNo] WHERE [dbo].[DbDocType].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, DocTypeNo, [dbo].[DbDocType].[TargetDb], [dbo].[DbDocType].[SearchString] FOR XML RAW('r') ) END
/****************************************************************/ /*** Added delete from ConfigDB ******************/ CREATE PROCEDURE [dbo].[EAUI_DeleteCfgAppServer_70]( @UserID nvarchar(20), @UserIP varchar(20), @AppID varchar(20), @ServerNo int ) AS BEGIN DECLARE @srvID varchar(255) SET @srvID = dbo.EAIF_GetConfigServerURI_70(@ServerNo) BEGIN TRANSACTION DELETE [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ServerNo]=@ServerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerNo] = @ServerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Delete Application Server', @AppID, @srvID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[UTIL_GetRandomString](@rnd_chars varchar(100), @str_len int, @out_str varchar(100) output) AS BEGIN DECLARE @counter smallint DECLARE @nchars int IF (@str_len > 100) SELECT @str_len = 100 SELECT @out_str = '' IF LEN(@rnd_chars) = 0 SET @rnd_chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' SELECT @nchars = LEN(@rnd_chars) SET @counter = 1 WHILE @counter <= @str_len BEGIN SELECT @out_str = @out_str + SUBSTRING(@rnd_chars, CONVERT(int, FLOOR(1+ RAND() * @nchars)), 1) SET @counter = @counter + 1 END END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceFeature_77](@InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(100),@ScreenID varchar(10), @FeatureType char,@DbDependant int, @VisibleItemCount varchar(10),@SelectionMode char,@AllowProfAccess int,@AllowProfEdit int,@AllowProfItemAdd int) AS /** procedure is used by EPCopy **/ BEGIN DECLARE @IntfScreenID varchar(10) DECLARE @ItemCount int SET @IntfScreenID = '' IF EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID]=@ScreenID) SET @IntfScreenID = @ScreenID IF LEN(@VisibleItemCount)>0 SET @ItemCount = CONVERT(int, @VisibleItemCount) INSERT INTO [dbo].[InterfaceFeatureList]([dbo].[InterfaceFeatureList].[InterfaceID],[dbo].[InterfaceFeatureList].[Version],[dbo].[InterfaceFeatureList].[FeatureName],[dbo].[InterfaceFeatureList].[ScreenID],[dbo].[InterfaceFeatureList].[FeatureType],[dbo].[InterfaceFeatureList].[DbDependant],[dbo].[InterfaceFeatureList].[VisibleItemCount],[dbo].[InterfaceFeatureList].[SelectionMode],[dbo].[InterfaceFeatureList].[AllowProfAccess],[dbo].[InterfaceFeatureList].[AllowProfEdit],[dbo].[InterfaceFeatureList].[AllowProfItemAdd]) VALUES (@InterfaceID,@Version,@FeatureName,@IntfScreenID,@FeatureType,@DbDependant,@ItemCount,@SelectionMode,@AllowProfAccess,@AllowProfEdit,@AllowProfItemAdd) END
CREATE PROCEDURE [dbo].[EAUI_GetProductOfferingLimiters_79] (@PrdOffID varchar(20), @ProductID varchar(10))AS BEGIN DECLARE @LimiterList varchar(255) SELECT @LimiterList = pp.Limiters FROM EASUPPORT.dbo.ProductPackage pp INNER JOIN EASUPPORT.dbo.ProductOffering po ON pp.PrdOffNo = po.PrdOffNo WHERE pp.ProductID= @ProductID AND po.PrdOffID = @PrdOffID SELECT [ll].[LimiterNo], [ll].[LimiterId], [ll].[Description], 0 As DetachFlag FROM [dbo].[LimiterList] ll INNER JOIN dbo.EAIF_GetItemTable_70(@LimiterList, ',') pl ON ll.LimiterId = pl.Item WHERE ll.DbLabel = 'live' Order By ll.LimiterId END
CREATE PROCEDURE [dbo].[EAUI_AddCfgApplication_74]( @UserID nvarchar(20), @UserIP varchar(15), @ApplicationID varchar(20), @Description varchar(255), @ApplicationType char(1), @NotifyProtocol varchar(10), @NotifyPage varchar(255) ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID) BEGIN RAISERROR('The Application ID (%s) already exists.', 16,-1, @ApplicationID ) RETURN END INSERT INTO [dbo].[ConfigApplication]([dbo].[ConfigApplication].[ApplicationID], [dbo].[ConfigApplication].[Description], [dbo].[ConfigApplication].[ApplicationType], [dbo].[ConfigApplication].[NotifyProtocol], [dbo].[ConfigApplication].[NotifyPage]) VALUES (@ApplicationID, @Description, @ApplicationType, @NotifyProtocol, @NotifyPage) DECLARE @AppTypeDesc varchar(25) SELECT @AppTypeDesc=[dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName]='ApplicationType' AND [dbo].[CharValueMap].[FieldCode]=@ApplicationType EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Add Application', @ApplicationID, @Description, @AppTypeDesc END
CREATE PROCEDURE [dbo].[EPCS_GetLocalMessage_70](@CustID varchar(10),@ColID varchar(50), @ISSN varchar(20))AS BEGIN DECLARE @ColNo int SELECT @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID,@ColID) SELECT lt.Subscribe As 'IsSubscribed', ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage', lt.Notes, dbo.EAIF_GetLocalTitleDates_70( @ColNo, mt.TitleNo ) as Dates FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo WHERE lt.ColNo=@ColNo AND mt.ISSN=@ISSN END
CREATE PROCEDURE [dbo].[AUTH_GetPersistentLinkProfileWithDbs_80](@CustID varchar(10), @GroupID varchar(10), @ShortDbsList varchar(8000), @InterfaceID varchar(10)='') AS BEGIN DECLARE @ParamNo int SET @ParamNo = dbo.EAIF_GetCustomParamNumber_70 ('persistentLinkProfile', 'P') DECLARE @ProfNo int SET @ProfNo=0 SELECT TOP 1 @ProfNo=ISNULL(p.ProfNo,0) FROM [dbo].[Profile] AS p INNER JOIN [dbo].[CustomParamDefaults] AS c WITH (INDEX(PK_CustomParamDefaults)) ON c.ParamNo=@ParamNo AND p.InterfaceID = c.InterfaceID AND p.Version = c.Version AND p.MarketID = c.MarketID AND p.STMode = c.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] AS d ON d.TargetNo = p.ProfNo AND d.ParamLevel='P' AND d.ParamNo = @ParamNo INNER JOIN [dbo].[ProfDatabase] AS e ON p.ProfNo = e.ProfNo INNER JOIN [dbo].[DbList] AS g ON e.DbVerNo=g.DbVerNo INNER JOIN dbo.EAIF_GetItemTable_70(@ShortDbsList, ',') AS a ON g.DbName=a.Item WHERE p.CustID = @CustID AND p.GroupID= @GroupID AND (@InterfaceID = '' OR p.InterfaceID=@InterfaceID) AND ISNULL(d.ParamValue,c.DefValue) = '1' AND e.Enable = 1 AND (e.AccessEndDate is null or datediff(hh, e.AccessEndDate, getdate())<0 ) ORDER by p.SeqNo ASC DECLARE @MatchingDbList varchar(8000) SET @MatchingDbList ='' SELECT @MatchingDbList= @MatchingDbList+db.DbName +',' FROM [dbo].[DbList] AS db INNER JOIN [dbo].[Profile] AS p ON p.DbLabel=db.DbLabel INNER JOIN [dbo].[ProfDatabase] AS pdb ON p.ProfNo=pdb.ProfNo AND pdb.DbVerNo=db.DbVerNo INNER JOIN dbo.EAIF_GetItemTable_70(@ShortDbsList, ',') AS a ON DB.DbName=a.Item WHERE p.ProfNo=@ProfNo IF LEN(@MatchingDbList)>0 SET @MatchingDbList=SUBSTRING(@MatchingDbList,1,LEN(@MatchingDbList)-1) SELECT [dbo].[Profile].[CustID], [dbo].[Profile].[GroupID], [dbo].[Profile].[ProfID], @MatchingDbList AS DBList FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceFeatureDetails_77] (@InterfaceFeatureNo int)AS BEGIN SELECT ifl.FeatureName, ifl.ScreenID, ifl.FeatureType, st.Description AS FeatureTypeDescr, ifl.VisibleItemCount, ifl.SelectionMode, ifl.DbDependant, ifl.AllowProfAccess, ifl.AllowProfEdit, ifl.AllowProfItemAdd, ISNULL(ifv.FieldValueXml,N'') AS FieldValueXml FROM [dbo].[InterfaceFeatureList] ifl LEFT OUTER JOIN [dbo].[InterfaceFeatureValues] ifv ON ifl.InterfaceFeatureNo=ifv.InterfaceFeatureNo AND ifv.ItemNo=0 INNER JOIN [dbo].[StringValueMap] st ON ifl.FeatureType =st.FieldCode WHERE ifl.InterfaceFeatureNo=@InterfaceFeatureNo AND st.FieldName='FeatureType' END
CREATE PROCEDURE [dbo].[EAIS_CleanTOC_80](@TocID varchar(50), @Mode char) AS BEGIN IF (lower(@Mode)='r') BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[FeatureList] where [dbo].[FeatureList].[Category]='toc' AND [dbo].[FeatureList].[FeatureName]=@TocID) BEGIN RAISERROR ('TOC %s does not exist',16,-1,@TocID) RETURN END DECLARE @FeatureNo int SELECT @FeatureNo=[dbo].[FeatureList].[FeatureNo] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]='toc' AND [dbo].[FeatureList].[FeatureName]=@TocID DELETE [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo AND [dbo].[FeatureValues].[ItemNo]>0 END END
CREATE PROCEDURE [dbo].[EPCAS_GetDbLimitersByVersion](@MasterDBList int, @DBVersion int ) AS BEGIN SET NOCOUNT ON SELECT lst.ControlType as 'CtrlType', ltyp.ControlTag as 'CtrlTag', cpt.Caption, CtrlDefault=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5 OR dbl.DefValue='On') THEN 1 ELSE 0 END, Tag=CASE WHEN lst.ControlType=17 THEN lst.LimiterId ELSE SUBSTRING(dbl.SearchString,1,2) END, ltyp.ControlFormat as 'Format', lst.ControlSize as 'CtrlSize', '' as 'ColId', 0 as 'Category', --skipValueText=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,31,8000), ' ', ''),'', '_'), '_All', ' (None)')) WHEN (lst.ControlType=15) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=16) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=17) THEN dbl.SearchString ELSE NULLIF(REPLACE(SUBSTRING(dbl.SearchString, 4, 4000), '{val}', ''), 'y') END, '' as 'ValueText' FROM [dbo].[DbList] AS mdb INNER JOIN [dbo].[DbLimiter] AS dbl ON mdb.DbVerNo = dbl.DbVerNo LEFT OUTER JOIN [dbo].[DbLimiterDetail] AS txt ON dbl.LimiterNo = txt.LimiterNo AND dbl.DbVerNo = txt.DbVerNo INNER JOIN [dbo].[LimiterList] AS lst ON dbl.LimiterNo = lst.LimiterNo INNER JOIN [dbo].[LimiterControlType] AS ltyp ON lst.ControlType = ltyp.ControlType INNER JOIN [dbo].[DbLimiterCaption] AS cpt ON dbl.DbVerNo = cpt.DbVerNo AND dbl.LimiterNo = cpt.LimiterNo WHERE mdb.DbVerNo = @MasterDBList AND cpt.LangCode = 'en' ORDER BY dbl.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetDbInterfaceLimiter_76] (@DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterNo int) AS BEGIN DECLARE @AutoAddLmiter bit SELECT @AutoAddLmiter=[dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo IF @AutoAddLmiter=1 exec [dbo].[EAIP_GetDbInterfaceLimiterAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo, @LimiterNo ELSE exec [dbo].[EAIP_GetDbInterfaceLimiterNoAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo, @LimiterNo END
-- ============================================= -- Author: Joe Jalbert -- Create date: October, 2011 -- Description: Updates records in CustExternalDbList -- 2011.11.30: JJalbert makes UserID nvarchar -- 2011.12.16: JJalbert makes ProxyForSearch, ProxyForResult go null if same as global values -- 2011.12.22: JJalbert allows for @notes is null to be properly handled. -- 2012.02.07: jjalbert refines checking for changes in ProxyForSearch and ProxyForResult to abide nulls in the cust level fields, -- which we have gone to great effort to preserve if they match the global setting. -- 2012.03.01: jjalbert Proxyhost is 45 characters -- 2012.03.01: Store ProxyForHost and ProxyForSearch even if they match global -- ============================================= CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerConnector_102] ( @UserID NVARCHAR(20), @UserIP varchar(15), @custid varchar(10), @dbverno int, @connectorProvider varchar(1), @notes nvarchar(1000), @resultByProxy bit, @searchByProxy bit, @status varchar(1), @keyValuePairs nvarchar(355), @connectorURL nvarchar(255), @connectorPassword nvarchar(50), @connectorID nvarchar(50), @proxyhost varchar(45), @Z3950HostUrl varchar(100) ) AS BEGIN declare @custno int DECLARE @i int = -1 select @custno = c.CustNo from [dbo].[Customer] c where c.CustID = @custid -- for logging DECLARE @dbname VARCHAR(10) = '' SELECT @dbname=[dbo].[DbList].[DbName] from [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @dbverno; DECLARE @logstring VARCHAR(950) = ''; DECLARE @OriginalconnectorProvider varchar(1) DECLARE @Originalproxyhost varchar(45) DECLARE @currentStatus varchar(1); DECLARE @originalNotes nvarchar(1000); DECLARE @originalZ3950HostUrl varchar(100) DECLARE @originalconnectorURL nvarchar(255) DECLARE @originalconnectorPassword nvarchar(50) DECLARE @originalconnectorID nvarchar(50) DECLARE @originalresultByProxy bit DECLARE @originalsearchByProxy bit DECLARE @originalkeyValuePairs nvarchar(355) DECLARE @globalResultByProxy bit DECLARE @globalSearchByProxy bit DECLARE @globalNotes nvarchar(1000) DECLARE @HoldResultByProxy bit DECLARE @HoldSearchByProxy bit set @HoldSearchByProxy = @searchByProxy; set @HoldResultByProxy = @resultByProxy; -- retrieve the global settings SELECT @globalResultByProxy=[dbo].[DbListExternalSourceIndexData].[ProxyForResult], @globalSearchByProxy=[dbo].[DbListExternalSourceIndexData].[ProxyForSearch] from [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @dbverno SELECT @globalNotes = [dbo].[DbListExternalSource].[Notes] FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @dbverno SELECT @originalZ3950HostUrl=[dbo].[CustExternalDbListIndexData].[Z3950URLPort], @originalconnectorURL=[dbo].[CustExternalDbListIndexData].[ConnectorURL], @originalconnectorPassword = [dbo].[CustExternalDbListIndexData].[ConnectorPassword], @originalresultByProxy= IsNull([dbo].[CustExternalDbListIndexData].[ProxyForResult],0), @originalsearchByProxy=IsNull([dbo].[CustExternalDbListIndexData].[ProxyForSearch],0), @originalkeyValuePairs=ISNULL([dbo].[CustExternalDbListIndexData].[KeyValuePairs],''), @originalconnectorID = [dbo].[CustExternalDbListIndexData].[ConnectorID] FROM [dbo].[CustExternalDbListIndexData] WHERE [dbo].[CustExternalDbListIndexData].[CustNo] = @custno and [dbo].[CustExternalDbListIndexData].[DbVerNo] = @dbverno SELECT @OriginalconnectorProvider=[dbo].[CustExternalDbList].[ConnectorProvider], @Originalproxyhost=[dbo].[CustExternalDbList].[PrimaryProxyHostIp], @originalNotes = IsNull([dbo].[CustExternalDbList].[CustomerNotes],''), @currentStatus=[dbo].[CustExternalDbList].[Status] FROM [dbo].[CustExternalDbList] WHERE [dbo].[CustExternalDbList].[CustNo] = @custno and [dbo].[CustExternalDbList].[DbVerNo] = @dbverno -- -- nullify fields which would be equal to the global values. We will save the nulls instead. --if (@globalResultByProxy = @resultByProxy) -- SET @resultByProxy = null; --if (@globalSearchByProxy = @searchByProxy) -- SET @searchByProxy = null; if (@originalresultByProxy <> @HoldResultByProxy) SET @logstring += 'ProxyForResult='+CAST(@HoldResultByProxy as varchar(1))+',' if (@originalsearchByProxy <> @HoldSearchByProxy) SET @logstring += 'ProxyForSearch='+CAST(@HoldSearchByProxy as varchar(1))+',' IF ( @OriginalconnectorProvider <> @connectorProvider) SET @logstring += 'ConnectorProvider='+@connectorProvider+',' IF (@Originalproxyhost <> @proxyhost) SET @logstring += 'PrimaryProxyHostIp='+@proxyhost+',' IF (@currentStatus <> @status) SET @logstring += 'status='+@status+',' IF (ltrim(rtrim(@originalNotes)) <> ltrim(rtrim(IsNULL(@notes,'')))) BEGIN IF (@notes is not null and @notes = @globalNotes) BEGIN SET @notes = NULL END ELSE BEGIN SET @logstring+='Notes have changed' END update [dbo].[CustExternalDbList] set [dbo].[CustExternalDbList].[CustomerNotes] = @notes WHERE [dbo].[CustExternalDbList].[CustNo] = @custno and [dbo].[CustExternalDbList].[DbVerNo] = @dbverno END IF (@originalZ3950HostUrl <> @Z3950HostUrl) SET @logstring += 'Z3950URLPort='+@Z3950HostUrl+',' IF (@originalconnectorID <> @connectorID) SET @logstring += 'ConnectorID='+@connectorID+',' IF (@originalconnectorPassword <> @connectorPassword) SET @logstring += 'ConnectorPassword='+@connectorPassword+',' IF (@originalconnectorURL <> @connectorURL) SET @logstring += 'ConnectorURL='+@connectorURL+',' if (@originalkeyValuePairs <> @keyValuePairs) SET @logstring += 'KeyValuePair='+@keyValuePairs+',' --declare @s varchar(355) -- select @s = ISNULL(keyValuePairs,'') from DbListExternalSourceIndexData -- where DbVerNo = @dbverno if (@status <> @currentStatus) begin declare @s1 varchar(10) set @s1 = CAST(@dbverno as varchar(10)) exec dbo.EAUI_UpdateCustomerConnectorStatus_102 @UserID, @UserIP, @custid, @s1, @status end update [dbo].[CustExternalDbList] set [dbo].[CustExternalDbList].[PrimaryProxyHostIp] = @proxyhost, [dbo].[CustExternalDbList].[ConnectorProvider] = @connectorProvider, [dbo].[CustExternalDbList].[LastModified] = GETDATE() WHERE [dbo].[CustExternalDbList].[CustNo] = @custno and [dbo].[CustExternalDbList].[DbVerNo] = @dbverno if (@connectorProvider = 'I') BEGIN -- only perform these updates for IndexData Connectors SELECT @i=COUNT(*) FROM [dbo].[CustExternalDbListIndexData] WHERE [dbo].[CustExternalDbListIndexData].[CustNo] = @custno and [dbo].[CustExternalDbListIndexData].[DbVerNo] = @dbverno if (@i = 0) BEGIN -- if (@s = @keyValuePairs) --set @keyValuePairs = null INSERT INTO [dbo].[CustExternalDbListIndexData] ([dbo].[CustExternalDbListIndexData].[CustNo], [dbo].[CustExternalDbListIndexData].[DbVerNo], [dbo].[CustExternalDbListIndexData].[ConnectorID], [dbo].[CustExternalDbListIndexData].[ConnectorPassword], [dbo].[CustExternalDbListIndexData].[ConnectorURL], [dbo].[CustExternalDbListIndexData].[ProxyForResult], [dbo].[CustExternalDbListIndexData].[ProxyForSearch], [dbo].[CustExternalDbListIndexData].[Z3950URLPort],[dbo].[CustExternalDbListIndexData].[KeyValuePairs]) VALUES (@custno, @dbverno, @connectorID, @connectorPassword, @connectorURL, @resultByProxy, @searchByProxy, @Z3950HostUrl, @keyValuePairs) END ELSE BEGIN UPDATE [dbo].[CustExternalDbListIndexData] SET [dbo].[CustExternalDbListIndexData].[ConnectorID] = @connectorID, [dbo].[CustExternalDbListIndexData].[ConnectorURL] = @connectorURL, [dbo].[CustExternalDbListIndexData].[ProxyForResult] = @resultByProxy, [dbo].[CustExternalDbListIndexData].[ProxyForSearch] = @searchByProxy, [dbo].[CustExternalDbListIndexData].[Z3950URLPort] = @Z3950HostUrl, [dbo].[CustExternalDbListIndexData].[ConnectorPassword] = @connectorPassword WHERE [dbo].[CustExternalDbListIndexData].[CustNo] = @custno and [dbo].[CustExternalDbListIndexData].[DbVerNo] = @dbverno END -- only update the keyvaluepairs if they have been changed, and then -- only store them at the customer level. if (@originalkeyValuePairs <> @keyValuePairs) begin update [dbo].[CustExternalDbListIndexData] set [dbo].[CustExternalDbListIndexData].[KeyValuePairs] = @keyValuePairs where [dbo].[CustExternalDbListIndexData].[CustNo] = @custno and [dbo].[CustExternalDbListIndexData].[DbVerNo] = @dbverno end END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, 'live','update','Customer Connector Changes:',@logString END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseClusters_89](@OldDbVerNo int, @NewDbVerNo int, @UserID varchar(20) = '', @UserIP varchar(15) = '') AS BEGIN DECLARE @OldDbLabel varchar(10), @NewDbLabel varchar(10) SELECT @OldDbLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @OldDbVerNo SELECT @NewDbLabel = [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @NewDbVerNo IF (@OldDbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @OldDbLabel = 'custom' IF (@NewDbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @NewDbLabel = 'custom' BEGIN TRANSACTION --retrieve assigned clusters from source label DECLARE @SourceClusters TABLE (ClustId varchar(20), SeqNo smallint, AutoAdd2Db bit, DbSearchTag nvarchar(5), Enable bit) INSERT INTO @SourceClusters (ClustId, SeqNo, AutoAdd2Db, DbSearchTag, Enable) SELECT cl.ClustId, cl.SeqNo, cl.AutoAdd2Db, dc.DbSearchTag, dc.Enable FROM [dbo].[ClusterList] cl LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @OldDbVerNo WHERE cl.DbLabel = @OldDbLabel AND ((cl.AutoAdd2Db = 1 AND (dc.Enable Is Null OR dc.DbSearchTag IS NOT NULL)) OR dc.Enable = 1) --update existing clusters if necessary UPDATE [dbo].[ClusterList] SET [SeqNo] = sc.SeqNo, [AutoAdd2Db] = sc.AutoAdd2Db FROM [dbo].[ClusterList] cl INNER JOIN @SourceClusters sc ON cl.DbLabel = @NewDbLabel AND cl.ClustId = sc.ClustId WHERE cl.SeqNo != sc.SeqNo OR cl.AutoAdd2Db != sc.AutoAdd2Db --insert new clusters DECLARE @NewClusters TABLE (ClustNo Int); INSERT INTO [dbo].[ClusterList]([gcNew].[ClustId], [gcNew].[DbLabel], [gcNew].[SeqNo], [gcNew].[AutoAdd2Db]) OUTPUT INSERTED.ClustNo INTO @NewClusters SELECT gc.ClustId, @NewDbLabel, gc.SeqNo, gc.AutoAdd2Db FROM @SourceClusters gc LEFT OUTER JOIN [dbo].[ClusterList] gcNew ON gc.ClustId = gcNew.ClustId AND gcNew.DbLabel = @NewDbLabel WHERE gcNew.ClustId Is Null --make sure all necessary clusters are assigned DELETE FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @NewDbVerNo ----no autoadd INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag]) SELECT @NewDbVerNo, cl.ClustNo, 1, sc.DbSearchTag FROM @SourceClusters sc INNER JOIN [dbo].[ClusterList] cl ON sc.ClustId =cl.ClustId AND cl.DbLabel = @NewDbLabel AND cl.AutoAdd2Db = 0 ----autoadd -- sc.ClustId is null if the cluster is in ClusterList but not in @SourceClusters (it won't be null for AutoAdd -- databases that have an overridden DbSearchTag value -- sc.DbSearchTag is not null if the database search tag has been overridden (for AutoAdd or non AutoAdd dbs) INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable], [dbo].[DbCluster].[DbSearchTag]) SELECT @NewDbVerNo, cl.ClustNo, ISNULL(sc.Enable, 0), sc.DbSearchTag FROM [dbo].[ClusterList] cl LEFT OUTER JOIN @SourceClusters sc ON cl.ClustId = sc.ClustId AND cl.DbLabel = @NewDbLabel WHERE (sc.ClustId Is Null OR sc.DbSearchTag IS NOT NULL) AND cl.AutoAdd2Db = 1 AND cl.DbLabel = @NewDbLabel COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateDiscipline_131] ( @UserID NVARCHAR(20) , @UserIP VARCHAR(15) , @DisciplineNo INT , @SelDefault BIT , @Show BIT ) AS BEGIN DECLARE @DisciplineCode VARCHAR(10) SELECT @DisciplineCode = [dbo].[DisciplineList].[DisciplineCode] FROM [dbo].[DisciplineList] WHERE [dbo].[DisciplineList].[DisciplineNo] = @DisciplineNo DECLARE @SelDefaultLogInfo VARCHAR(20), @ShowLogInfo VARCHAR(20) SET @SelDefaultLogInfo = 'SelDefault: ' + CONVERT(VARCHAR(1), @SelDefault) SET @ShowLogInfo = 'Show: ' + CONVERT(VARCHAR(1),@Show) IF (@DisciplineCode IS NOT NULL) BEGIN BEGIN TRANSACTION UPDATE [dbo].[DisciplineList] SET [dbo].[DisciplineList].[SelDefault] = @SelDefault , [dbo].[DisciplineList].[Show] = @Show WHERE [dbo].[DisciplineList].[DisciplineNo] = @DisciplineNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Discipline','Update Discipline', @DisciplineNo, @DisciplineCode , @SelDefaultLogInfo, @ShowLogInfo COMMIT TRANSACTION END END
CREATE FUNCTION [dbo].[EAIF_GetNextInterfaceSubtopicSeqNo_77](@ParentTopicNo int, @InterfaceID varchar(10), @Version varchar(10)) RETURNS int AS BEGIN DECLARE @NextSeqNo int SELECT @NextSeqNo = ISNULL(MAX (it.SeqNo)+1,1) FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo =tl.TopicNo WHERE tl.ParentTopicNo = @ParentTopicNo AND it.InterfaceID=@InterfaceID AND it.Version = @Version RETURN @NextSeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetConsortiumLiveDatabaseList_70](@CustID varchar(10)) AS BEGIN CREATE TABLE #GetDbVendorConnectorDisplayName (DbVerNo int, DbName varchar(10), DisplayName nvarchar(225), DbType smallint, SortOrder nvarchar(225)) INSERT #GetDbVendorConnectorDisplayName (#GetDbVendorConnectorDisplayName.[DbVerNo], #GetDbVendorConnectorDisplayName.[DbName], #GetDbVendorConnectorDisplayName.[DisplayName], #GetDbVendorConnectorDisplayName.[DbType], #GetDbVendorConnectorDisplayName.[SortOrder]) SELECT [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DbVerNo], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DbName], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DisplayName], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DbType], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[SortOrder] FROM dbo.EAIF_GetDbVendorConnectorDisplayName() SELECT dbl.DbName, v.DisplayName, COALESCE(pdb.Mode, 'N/A') AS Mode FROM [dbo].[Profile] p JOIN dbo.ProfDatabase pdb ON p.ProfNo=pdb.ProfNo JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo JOIN #GetDbVendorConnectorDisplayName v ON dbl.DbVerNo=v.DbVerNo WHERE p.CustID=@CustID GROUP BY dbl.DbName, v.DisplayName, pdb.Mode, v.SortOrder ORDER BY v.SortOrder DROP TABLE #GetDbVendorConnectorDisplayName END
CREATE PROCEDURE [dbo].[EAIP_AddModifyInterfaceVersion_161] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @ClientType varchar(10)='web', @Action varchar(4), @PersLinkURL varchar(255)='', @SupportDbTitles bit=0, @DefProfID varchar(10)='', @DefLangCode varchar(10)='en', @NewWin bit = 0, @AutoAddAuth bit = 1, @AutoAddExp bit = 1, @IsMobile bit = 1, @EncodingType varchar(20), @SignType varchar(20), @EncryptionType varchar(20), @SignatureKey varchar(100), @EncryptionKey varchar(100), @EncodedPart varchar(200), @EncryptedPart varchar(200), @AllowPersonalization bit=1, @AllowPrimaryDatabases bit = 0, @InterfaceType tinyint=0, @PlinkAuthFailureRedirect BIT, @PlinkAuthFailureRedirectURL nvarchar(255)=NULL) AS BEGIN DECLARE @AddMod varchar(25) IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface %s-%s already exists.', 16,-1, @InterfaceID, @Version ) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID]=@DefProfID) BEGIN RAISERROR('The default profile ID %s already exists.',16,-1,@DefProfID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@DefLangCode) BEGIN RAISERROR('The Language ''%s'' does not exist.',16,-1,@DefLangCode) RETURN END EXEC [dbo].[EAIP_AddInterfaceVersion_144] @InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @InterfaceName, @ClientType, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode, @NewWin, @AutoAddAuth, @AutoAddExp, @IsMobile, @AllowPersonalization, @AllowPrimaryDatabases, @InterfaceType, @PlinkAuthFailureRedirect, @PlinkAuthFailureRedirectURL -- add 'D' type parameters to new interface IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamType]='D' AND ([dbo].[CustomParamList].[ParentParamNo] IS NULL OR [dbo].[CustomParamList].[ParamNo] NOT IN (SELECT DISTINCT(ParentParamNo) FROM [dbo].[CustomParamList])) -- add 'ProfileOrder', 'ProfileDescription' to new interface 5/13/09 INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamName] in ('profileOrder','profileDescription') UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[EncodingType] = @EncodingType, [dbo].[InterfaceVersion].[SignType] = @SignType, [dbo].[InterfaceVersion].[EncryptionType] = @EncryptionType, [dbo].[InterfaceVersion].[SignatureKey] = @SignatureKey, [dbo].[InterfaceVersion].[EncryptionKey] = @EncryptionKey, [dbo].[InterfaceVersion].[EncodedPart] = @EncodedPart, [dbo].[InterfaceVersion].[EncryptedPart] = @EncryptedPart WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Add Version' END ELSE BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version ) BEGIN RAISERROR('The Interface %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END DECLARE @AutoAddAuthority_old bit SELECT @AutoAddAuthority_old=[dbo].[InterfaceVersion].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[SiteID] = @SiteID, [dbo].[InterfaceVersion].[SiteURL] = @SiteURL, [dbo].[InterfaceVersion].[PassingMode]= @PassingMode, [dbo].[InterfaceVersion].[PersistentLinkURL]=@PersLinkURL, [dbo].[InterfaceVersion].[SupportDbTitleLists]=@SupportDbTitles, [dbo].[InterfaceVersion].[DefLangCode]=@DefLangCode, [dbo].[InterfaceVersion].[NewWin]=@NewWin, [dbo].[InterfaceVersion].[AutoAddAuthority]=@AutoAddAuth, [dbo].[InterfaceVersion].[AutoAddExpanders]=@AutoAddExp, [dbo].[InterfaceVersion].[IsMobile]=@IsMobile, [dbo].[InterfaceVersion].[EncodingType] = @EncodingType, [dbo].[InterfaceVersion].[SignType] = @SignType, [dbo].[InterfaceVersion].[EncryptionType] = @EncryptionType, [dbo].[InterfaceVersion].[SignatureKey] = @SignatureKey, [dbo].[InterfaceVersion].[EncryptionKey] = @EncryptionKey, [dbo].[InterfaceVersion].[EncodedPart] = @EncodedPart, [dbo].[InterfaceVersion].[EncryptedPart] = @EncryptedPart, [dbo].[InterfaceVersion].[AllowPersonalization]=@AllowPersonalization, [dbo].[InterfaceVersion].[AllowPrimaryDatabases] = @AllowPrimaryDatabases, [dbo].[InterfaceVersion].[InterfaceType]=@InterfaceType, [dbo].[InterfaceVersion].[PlinkAuthFailureRedirect]=@PlinkAuthFailureRedirect, [dbo].[InterfaceVersion].[PlinkAuthFailureRedirectURL]=@PlinkAuthFailureRedirectURL WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Edit Version' IF @AutoAddAuthority_old=0 AND @AutoAddAuth=1 DELETE [dbo].[InterfaceDbAuthority] FROM [dbo].[InterfaceDbAuthority] AS ia INNER JOIN [dbo].[DbList] AS db ON ia.AuthDbVerNo = db.DbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version AND db.IncludeWhenAutoAdd = 1 END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces',@AddMod, @InterfaceID,@Version,@SiteID, @SiteURL,@PassingMode END
CREATE PROCEDURE [dbo].[EAIP_GetDatabaseCVTypeListForNewFilter_163] (@DbName VARCHAR(10), @DbLabel VARCHAR(10)) AS BEGIN DECLARE @DbVerNo INT SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM dbo.DbList WITH (NOLOCK) WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @DbVerNo IS NULL BEGIN RAISERROR('The DbName/DbLabel (%s)/(%s) does not exist ', 16, -1, @DbName, @DbLabel) RETURN END SELECT DISTINCT cvt.ContentVerticalID, cvt.ContentVerticalID + ' (' + [cvt].[ContentVerticalName] + ')' AS Caption FROM [dbo].[ContentVerticalType] cvt JOIN [dbo].[ContentVerticalFilter] cvf ON cvt.ContentVerticalNo=cvf.ContentVerticalNo WHERE cvt.ContentVerticalNo NOT IN ( SELECT cvf.ContentVerticalNo FROM [dbo].[ContentVerticalFilter] cvf JOIN [dbo].[DbCVFilter] dbf ON cvf.ContentVerticalFilterNo=dbf.ContentVerticalFilterNo WHERE dbf.DbVerNo =@DbVerNo) END
CREATE PROCEDURE [dbo].[EAUI_GetZ3950Form_70](@VendorID int , @FormID int) AS BEGIN SELECT [dbo].[Z3950Forms].[FormID], [dbo].[Z3950Forms].[FormText] FROM [dbo].[Z3950Forms] WHERE [dbo].[Z3950Forms].[VendorID]=@VendorID AND [dbo].[Z3950Forms].[FormID]=@FormID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbFeature(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS FeatureNo, [dbo].[FeatureList].[FeatureName] AS FeatureName, [dbo].[FeatureList].[Category] AS Category , [dbo].[FeatureList].[SubCategory] AS SubCategory FROM [dbo].[DbFeature] LEFT JOIN [dbo].[FeatureList] ON [dbo].[FeatureList].[FeatureNo] = [dbo].[DbFeature].[FeatureNo] WHERE [dbo].[DbFeature].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, FeatureNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCfgServerScalarParam_70](@UserId nvarchar(20), @UserIP varchar(15), @SrvNo int, @ParamNo int) AS BEGIN DECLARE @ParamID varchar(100), @SrvID varchar(255) SET @ParamID = dbo.EAIF_GetConfigParamName_70(@ParamNo) SET @SrvID = dbo.EAIF_GetConfigServerURI_70(@SrvNo) DELETE FROM [dbo].[ConfigParamScalarValues] WHERE [dbo].[ConfigParamScalarValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamScalarValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamScalarValues].[TargetNo] = @SrvNo EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Application Configuration','Delete Scalar Parameter', @SrvID, @ParamID END
CREATE PROCEDURE [dbo].[UTIL_HttpsSendNotifyRequest] @ProfileTriplet [ProfileTripletType] READONLY, @maxPendingAmount INT = 300, @delayTimeNotification DATETIME = '00:00:05' AS BEGIN DECLARE @userId VARCHAR(50) = 'https_redirect' DECLARE @custId VARCHAR(10) DECLARE @groupId VARCHAR(10) DECLARE @profId VARCHAR(10) DECLARE @CurrentDate DATETIME = GETDATE() DECLARE @pendingAmount INT; DECLARE @maxReqNo INT; SELECT @pendingAmount = COUNT(*), @maxReqNo = MIN(ReqNo) FROM EASUPPORT.dbo.NotifyRequest WHERE LastProcStatus IN ('N','P') AND UserID = @userId IF @maxReqNo IS NULL SELECT @maxReqNo = MAX(ReqNo) FROM EASUPPORT.dbo.NotifyRequest DECLARE https_cursor CURSOR FOR SELECT pt.CustID, pt.GroupID, pt.ProfID FROM @ProfileTriplet pt OPEN https_cursor FETCH NEXT FROM https_cursor INTO @custId, @groupId, @profId WHILE @@FETCH_STATUS = 0 BEGIN IF EXISTS ( SELECT 1 FROM EAMASTER.dbo.Profile p WHERE p.CustID = @custId AND p.GroupID = @groupId AND p.ProfID = @profId AND EXISTS ( SELECT 1 FROM EAMASTER.dbo.ProfDatabase pd WHERE p.ProfNo = pd.ProfNo AND pd.Enable = 1 AND (pd.AccessEndDate > @CurrentDate OR pd.AccessEndDate IS NULL))) BEGIN WHILE @pendingAmount >= @maxPendingAmount BEGIN WAITFOR DELAY @delayTimeNotification; SELECT @pendingAmount = COUNT(*) FROM (SELECT TOP(@maxPendingAmount) ReqNo FROM EASUPPORT.dbo.NotifyRequest WHERE LastProcStatus IN ('N','P') AND ReqNo > @maxReqNo AND UserID = @userId) nr END; EXEC EASUPPORT.dbo.EAUI_NotifyProfile_70 @userId,'', @custId, @groupId, @profId; SET @pendingAmount = @pendingAmount + 1; END; FETCH NEXT FROM https_cursor INTO @custId, @groupId, @profId END; CLOSE https_cursor DEALLOCATE https_cursor END;
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceFeatureField_77](@InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(100),@FieldName varchar(100),@FieldLevel char,@FieldType char(2),@IncludeInSummary int,@EditControl varchar(50),@ValueTemplate nvarchar(1000) ) AS /** procedure is used by EPCopy **/ BEGIN DECLARE @InterfaceFeatureNo int SELECT @InterfaceFeatureNo=[dbo].[InterfaceFeatureList].[InterfaceFeatureNo] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceFeatureList].[Version]=@Version AND [dbo].[InterfaceFeatureList].[FeatureName]=@FeatureName IF LEN(@ValueTemplate)=0 SET @ValueTemplate=null INSERT INTO [dbo].[InterfaceFeatureFields]([dbo].[InterfaceFeatureFields].[InterfaceFeatureNo],[dbo].[InterfaceFeatureFields].[FieldName],[dbo].[InterfaceFeatureFields].[FieldLevel],[dbo].[InterfaceFeatureFields].[FieldType],[dbo].[InterfaceFeatureFields].[IncludeInSummary],[dbo].[InterfaceFeatureFields].[EditControl],[dbo].[InterfaceFeatureFields].[ValueTemplate]) VALUES (@InterfaceFeatureNo,@FieldName,@FieldLevel,@FieldType,@IncludeInSummary,@EditControl,@ValueTemplate) END
CREATE PROCEDURE [dbo].[EAUI_GetProductOfferingLimitersForAttachByDescr_79] (@PrdOffID varchar(20),@ProductID varchar(10), @Descr varchar(100))AS BEGIN DECLARE @LimiterList varchar(255) SELECT @LimiterList = pp.Limiters FROM EASUPPORT.dbo.ProductPackage pp INNER JOIN EASUPPORT.dbo.ProductOffering po ON pp.PrdOffNo = po.PrdOffNo WHERE pp.ProductID= @ProductID AND po.PrdOffID = @PrdOffID SELECT distinct ll.LimiterId, ll.Description +'('+ll.LimiterId+')'AS Description FROM [dbo].[LimiterList] ll LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@LimiterList, ',') a ON ll.LimiterId = a.Item INNER JOIN [dbo].[DbLimiter] dbl ON ll.LimiterNo = dbl.LimiterNo INNER JOIN [dbo].[DbList] db ON dbl.DbVerNo = db.DbVerNo INNER JOIN EASUPPORT.dbo.ProductPackage pp ON pp.ProductID = db.DbName INNER JOIN EASUPPORT.dbo.ProductOffering po ON po.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.Product pr ON pp.ProductID = pr.ProductID WHERE ll.BitFlag1=1 AND db.DbLabel='live' AND po.PrdOffID = @PrdOffID AND pp.ProductID = @ProductID AND pr.ProductType='D' AND a.Item is null AND ll.Description >= @Descr Order by ll.Description +'('+ll.LimiterId+')' END
/******************************************************************/ /**** Added NotifyItems List ****/ CREATE PROCEDURE [dbo].[EAUI_AddCfgApplication_75]( @UserID nvarchar(20), @UserIP varchar(15), @ApplicationID varchar(20), @Description varchar(255), @ApplicationType char(1), @NotifyProtocol varchar(10), @NotifyPage varchar(255), @ServerDbMode char(1), @NotifyList varchar(8000)='' ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID) BEGIN RAISERROR('The Application ID (%s) already exists.', 16,-1, @ApplicationID ) RETURN END INSERT INTO [dbo].[ConfigApplication]([dbo].[ConfigApplication].[ApplicationID], [dbo].[ConfigApplication].[Description], [dbo].[ConfigApplication].[ApplicationType], [dbo].[ConfigApplication].[NotifyProtocol], [dbo].[ConfigApplication].[NotifyPage], [dbo].[ConfigApplication].[ServerDbMode]) VALUES (@ApplicationID, @Description, @ApplicationType, @NotifyProtocol, @NotifyPage, @ServerDbMode) IF LEN(@NotifyList)>0 BEGIN DECLARE @ApplicationNo int SELECT @ApplicationNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@ApplicationID INSERT INTO [dbo].[ConfigAppNotifyItem] SELECT @ApplicationNo, a.Item FROM dbo.EAIF_GetItemTable_70(@NotifyList, ',') a END DECLARE @AppTypeDesc varchar(25) SELECT @AppTypeDesc=[dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName]='ApplicationType' AND [dbo].[CharValueMap].[FieldCode]=@ApplicationType EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Add Application', @ApplicationID, @Description, @AppTypeDesc END
CREATE PROCEDURE [dbo].[EPCS_GetLocalTitleCallNumber_70]( @CustID varchar(10), @ColID varchar(50), @ISSN varchar(20) ) AS BEGIN SELECT [dbo].[LocalTitle].[CallNumber] FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo] = dbo.EAIF_GetTitleColNo_70( @CustID, @ColID ) AND [dbo].[LocalTitle].[TitleNo] = dbo.EAIF_GetTitleNo_70( @ISSN ) END
--sql content merged from file: \StoredProcedures\AUTH_GetPersLinkProfileForDbGroup_910.sql CREATE Procedure [dbo].[AUTH_GetPersLinkProfileForDbGroup_910] (@CustID varchar(10), @GroupID varchar(10), @UseSsl bit, @p_DbGroupCode varchar(255), @InterfaceID varchar(25), @IsMobileRequest bit, @IsGuestRequest bit, @ProfID varchar(10), @OnlySpecifiedSite bit=0) as Begin Declare @ProfDetailsTable table (ProfNo int, ProfID varchar(10), ProfPwd varchar(20), SiteURL varchar(255), InterfaceID varchar(10), Version varchar(10), MarketID varchar(20), STMode char(1), SiteID varchar(10), SeqNo int, Priority smallint, ProfName nvarchar(255), PassingMode varchar(10), DefLangCode varchar(10), DefView nvarchar(4000), NewWin bit, IsMobile BIT, MD5TokenSalt VARCHAR(250), hideInterface bit) Declare @ProfNoTable table (ProfNo int) Declare @DbNameTable Table (DbName varchar(10)) /* Parse Interface and Version */ DECLARE @Version varchar(10) set @Version='' IF CHARINDEX( '-',@InterfaceID )>0 BEGIN SET @Version =SUBSTRING(@InterfaceID, CHARINDEX( '-',@InterfaceID )+1, LEN(@InterfaceID)) SET @InterfaceID = SUBSTRING(@InterfaceID, 1, CHARINDEX( '-',@InterfaceID )-1) END IF LEN(@Version)=0 SET @Version='live' -- default Version to 'live' if none given /* Get ClientType for given Interface */ DECLARE @ClientType varchar (10) set @ClientType='' SELECT @ClientType= [dbo].[Interface].[ClientType] From [dbo].[Interface] Where [dbo].[Interface].[InterfaceID]=@InterfaceID if len(@ClientType)=0 set @ClientType='web' -- default ClientType to 'web' if no InterfaceID given or InterfaceID does not exist /* Get all profiles for given CustID/GroupID that are configured for PLinks - and are associated with an Interface of the matching ClientType and Version or the ProfID matches the requested ProfID and that Profile is associated with an Interface of the correct ClientType. Note: this is the most inclusive result set.*/ Declare @PersLinkParamNo int select @PersLinkParamNo = dbo.EAIF_GetCustomParamNumber_70 ('persistentLinkProfile', 'P') DECLARE @GroupDbsParamNo int SELECT @GroupDbsParamNo =[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='groupDbsBySubject' AND [dbo].[CustomParamList].[ParamLevel]='P' /* Get all profiles for given CustID/GroupID that are configured for PLinks, have Group Databases by Subject on, and that are associated with an Interface of the matching ClientType and Version. The Profile with ProfID matching the requested ProfID will be incuded in this set even if Group Databases by Subject is not on provided that Profile matches all the other criteria. Note: this is the most inclusive result set.*/ /* Profile with ProfID matching given ProfID is given first priority */ insert @ProfDetailsTable(ProfNo, ProfID, ProfPwd, SiteURL, InterfaceID , Version, MarketID , STMode , SiteID , SeqNo , Priority, ProfName, PassingMode, DefLangCode, DefView, NewWin, IsMobile, MD5TokenSalt, hideInterface) SELECT distinct p.ProfNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL AS SiteURL, iv.InterfaceID, iv.Version, p.MarketID, p.STMode, iv.SiteID, p.SeqNo, CASE when p.ProfID=@ProfID Then 1 WHEN iv.IsMobile=@IsMobileRequest and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 2 WHEN iv.IsMobile=@IsMobileRequest and iv.SiteID=@InterfaceID THEN 3 WHEN iv.IsMobile<>@IsMobileRequest and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 4 WHEN iv.IsMobile<>@IsMobileRequest and iv.SiteID=@InterfaceID THEN 5 WHEN iv.IsMobile=@IsMobileRequest THEN 6 WHEN iv.IsMobile<>@IsMobileRequest THEN 7 Else 8 End as Priority, [p].[ProfName], [iv].[PassingMode], p.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(p.ProfNo, 'defaultView') as DefView, [iv].[NewWin], [iv].[IsMobile], iv.MD5TokenSalt, iv.HideInterface FROM [dbo].[Profile] p INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@PersLinkParamNo AND p.InterfaceID = cpd.InterfaceID AND p.Version = cpd.Version AND p.MarketID = cpd.MarketID AND p.STMode = cpd.STMode INNER JOIN [dbo].[CustomParamDefaults] cpd2 WITH (INDEX(PK_CustomParamDefaults)) ON cpd2.ParamNo=@GroupDbsParamNo AND p.InterfaceID = cpd2.InterfaceID AND p.Version = cpd2.Version AND p.MarketID = cpd2.MarketID AND p.STMode = cpd2.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = p.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @PersLinkParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv2 ON cpsv2.TargetNo = p.ProfNo AND cpsv2.ParamLevel='P' AND cpsv2.ParamNo = @GroupDbsParamNo INNER JOIN [dbo].[Interface] i on p.InterfaceID=i.InterfaceID INNER JOIN [dbo].[InterfaceVersion] iv on p.InterfaceID=iv.InterfaceID Where p.CustID = @CustID AND p.GroupID= @GroupID AND ISNULL(cpsv.ParamValue,cpd.DefValue) = N'1' and (ISNULL(cpsv2.ParamValue,cpd2.DefValue) = N'1' or (p.ProfID=@ProfID and ISNULL(cpsv2.ParamValue,cpd2.DefValue) = N'0')) and ((i.ClientType = @ClientType AND iv.Version=@Version) or (p.ProfID=@ProfID and i.ClientType=@ClientType)) /* If @OnlySpecifiedSite=1, Then delete the profile(s) from profDetails that do not match the @InterfaceID */ if @OnlySpecifiedSite = 1 and @InterfaceID <> '' AND @InterfaceID <> 'all' Delete @ProfDetailsTable where SiteID <> @InterfaceID AND InterfaceId <> @InterfaceID /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) BEGIN SELECT ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile,MD5TokenSalt, hideInterface from @ProfDetailsTable return End /* If guest access is requested then filter result set to include only Profiles configured for Guest Access. */ if @IsGuestRequest=1 Begin Declare @GuestAccessParamNo int select @GuestAccessParamNo = dbo.EAIF_GetCustomParamNumber_70 ('guestAccessAuthType', 'P') Delete @ProfNoTable Insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@GuestAccessParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @GuestAccessParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) <> N'' and (t.ProfID=@ProfID or @ProfID='') Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) BEGIN SELECT ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile,MD5TokenSalt, hideInterface from @ProfDetailsTable return End End /* Filter result set based on given DbGroup(s). */ declare @DbGroupCode table(DbGroupCode varchar(12), DefGrNo int) insert into @DbGroupCode select t.Item, g.GroupNo from dbo.EAIF_GetItemTable_70(@p_DbGroupCode,',') t left outer join [dbo].[GroupList] g ON t.Item=g.GroupID /* Filter result set based on given DbGroups - do not remove Profile where the ProfID matches the requested ProfID even if that Profile does not have access to given DbGroups. */ /* At least one Custom defined Group exists in given DbGroupCode(s). */ IF EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is null) BEGIN INSERT into @ProfNoTable Select a.ProfNo from (SELECT p.ProfNo, g.GroupNo FROM @ProfDetailsTable AS p INNER JOIN [dbo].[ProfCustGroupList] AS g ON p.ProfNo = g.ProfNo INNER JOIN @DbGroupCode AS t ON g.GroupNo = t.DbGroupCode INNER JOIN [dbo].[ProfDatabase] AS pdb ON g.ProfNo=pdb.ProfNo INNER JOIN [dbo].[ProfCustGroupDb] AS pgdb ON g.ProfNo=pgdb.ProfNo AND pgdb.DbVerNo= pdb.DbVerNo WHERE g.Show=1 AND t.DefGrNo is null AND (pdb.Mode is null OR pdb.Mode ='S' or pdb.Mode='I') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 )) a LEFT OUTER JOIN ( select pcgl.ProfNo, pcgl.GroupNo, pcgl.Show from [dbo].[ProfCustGroupList] pcgl INNER JOIN @DbGroupCode t2 ON pcgl.GroupNo=t2.DbGroupCode where [t2].[DefGrNo] is null ) b ON a.ProfNo=b.ProfNo and a.GroupNo =b.GroupNo WHERE b.Show is null OR b.Show=1 union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID /* If retrieved Profile(s) associated with Custom Group or did not retrieved Profile(s) associated with Custom Group and there are no Default Groups in given DbGroupCode(s) then filter current result set. */ if EXISTS (SELECT 1 FROM @ProfNoTable) or (not exists (select 1 from @ProfNoTable) and not EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is not null)) Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) End /* At least one default EP Group exists in given DbGroupCode(s) and no Profiles have been retrieved based on Custom DbGroup(s). */ IF EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is not null) AND NOT EXISTS (SELECT 1 FROM @ProfNoTable) Begin DECLARE @DefGroupParamNo int SELECT @DefGroupParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='showDefaultEPDatabaseGroup' AND [dbo].[CustomParamList].[ParamLevel]='P' insert into @ProfNoTable Select a.ProfNo from (Select t.ProfNo, gl.GroupNo from @ProfDetailsTable t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@DefGroupParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @DefGroupParamNo INNER JOIN [dbo].[ProfDatabase] AS pdb ON t.ProfNo=pdb.ProfNo INNER JOIN [dbo].[DbGroup] AS gdb ON pdb.DbVerNo =gdb.DbVerNo INNER JOIN [dbo].[GroupList] AS gl ON gl.GroupNo = gdb.GroupNo INNER JOIN @DbGroupCode AS gc ON gl.GroupNo=gc.DefGrNo where ISNULL(cpsv.ParamValue,cpd.DefValue) = N'1' AND (pdb.Mode is null OR pdb.Mode='S' or pdb.Mode='I') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND pdb.Enable=1 ) a LEFT OUTER JOIN ( select pgl.ProfNo, pgl.GroupNo, pgl.Show from [dbo].[ProfGroupList] pgl INNER JOIN @DbGroupCode t2 ON pgl.GroupNo=t2.DefGrNo ) b ON a.ProfNo=b.ProfNo and a.GroupNo =b.GroupNo WHERE b.Show is null OR b.Show=1 union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) End /* If no Profiles match conditions above then return empty result set */ if not exists (Select 1 from @ProfDetailsTable) BEGIN SELECT ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, hideInterface from @ProfDetailsTable return End /* If SSL is required then filter result set to include only Profiles that are configured for HTTPS - do not remove Profile where the ProfID matches the requested ProfID. If no Profiles would remain then do not do this filter. */ Declare @HttpsParamNo int select @HttpsParamNo = dbo.EAIF_GetCustomParamNumber_70 ('useHttpsAuthentication', 'P') if @UseSsl=1 Begin Delete @ProfNoTable Insert @ProfNoTable Select t.ProfNo from @ProfDetailsTable t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@HttpsParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @HttpsParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) = N'1' union select t.ProfNo from @ProfDetailsTable t where t.ProfID=@ProfID if exists (Select 1 from @ProfNoTable) Delete @ProfDetailsTable where ProfNo not in (Select ProfNo from @ProfNoTable) select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_MakeUrlSecure_86(dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) ,'1') AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile,MD5TokenSalt, hideInterface from @ProfDetailsTable order by Priority, SeqNo End ELSE BEGIN IF (Select TOP 1 ISNULL(cpsv.ParamValue,cpd.DefValue) from @ProfDetailsTable t join [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@HttpsParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @HttpsParamNo ORDER BY [t].[Priority], [t].[SeqNo]) = 1 BEGIN select Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_MakeUrlSecure_86(dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1), '1') AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, hideInterface from @ProfDetailsTable order by Priority, SeqNo END ELSE BEGIN SELECT Top 1 ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) AS SiteURL, PassingMode, ProfPwd, DefLangCode, DefView, InterfaceID, Version, NewWin, SeqNo, IsMobile, MD5TokenSalt, hideInterface from @ProfDetailsTable order by Priority, SeqNo end END end
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceFeatureFieldDesignDetails_77](@InterfaceFeatureNo int, @FieldName varchar(50))AS BEGIN SELECT iff.FieldName, sl.Description AS FieldLevel, iff.FieldType AS FieldTypeCode, st.Description AS FieldType, iff.IncludeInSummary, [iff].[EditControl], [iff].[ValueTemplate] FROM [dbo].[InterfaceFeatureFields] iff INNER JOIN [dbo].[StringValueMap] sl ON sl.FieldCode = iff.FieldLevel INNER JOIN [dbo].[StringValueMap] st ON st.FieldCode = iff.FieldType WHERE iff.InterfaceFeatureNo=@InterfaceFeatureNo AND iff.FieldName=@FieldName AND sl.FieldName ='FeatureFieldLevel' AND st.FieldName = 'FeatureFieldType' END
CREATE Procedure [dbo].[EAIS_CleanUpEJSUpdatesLog_91] ( @UpToTime datetime ) AS BEGIN DELETE [dbo].[EJSCustUpdates] WHERE [dbo].[EJSCustUpdates].[LogTime]<@UpToTime END
CREATE PROCEDURE [dbo].[EPCAS_GetDbSegmentForCustomer](@CustID varchar(10), @Label varchar(20)) AS BEGIN SELECT DISTINCT ms2.DbName, s.SegName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON p.ProfNo=d.ProfNo INNER JOIN [dbo].[DbList] ms1 ON d.DbVerNo=ms1.DbVerNo AND p.DbLabel=ms1.DbLabel INNER JOIN [dbo].[DbList] ms2 ON ms1.DbName = ms2.DbName INNER JOIN [dbo].[DbSegment] s ON ms2.DbVerNo=s.DbVerNo WHERE p.CustID=@CustID AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) AND ms2.DbLabel=@Label AND ms2.DbType=1 ORDER BY ms2.DbName, [s].[SegName] END
CREATE PROCEDURE [dbo].[EAUI_GetDbInterfaceLimiterList_76] (@DbVerNo int, @ScreenNo int, @GroupNo int) AS BEGIN DECLARE @AutoAddLmiter bit SELECT @AutoAddLmiter=[dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo IF @AutoAddLmiter=1 exec [dbo].[EAIP_GetDbInterfaceLimiterListAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo ELSE exec [dbo].[EAIP_GetDbInterfaceLimiterListNoAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerLoginPrompt_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255), @ParamValue nvarchar(max) ) AS BEGIN EXEC [dbo].[EAIP_UpdateCustomerParamXmlValue_70] @CustID, 'loginText', @ItemName, @ParamValue EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Authentication', 'Update Login Prompt', @CustID, @ItemName END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseDocTypes_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION Delete dbdt from [dbo].[DbDocType] dbdt join #TempDbListTable t on dbdt.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbDocType] Select t.UpperDbVerNo AS DbVerNo, DocTypeNo, TargetDb, SearchString From [dbo].[DbDocType] dbdt join #TempDbListTable t on dbdt.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE dbo.EAUI_UpdateDisplayNameExternalSource_92 ( @DbVerNo int, @DisplayName nvarchar(100), @UserId nvarchar(20) = null, @UserIp varchar(15) = null ) AS BEGIN TRY BEGIN TRANSACTION IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Display Name', 'Update External Source Display Name', @DbVerNo END UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @DisplayName WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH
CREATE FUNCTION [dbo].[EAIF_GetParents_70]( @ChildID varchar(10) ) RETURNS varchar(2000) AS BEGIN DECLARE @Parents varchar (2000) SET @Parents=null SELECT @Parents=COALESCE(@Parents+',','')+[dbo].[CustomerGroup].[ParentID] FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ChildID]=@ChildID ORDER BY [dbo].[CustomerGroup].[ParentID] return @Parents END
CREATE PROCEDURE dbo.EAUI_GetContentFilterListPaged_253 @browseField VARCHAR(25) = 'ContentFilterID', @browseTerm NVARCHAR(255) = '', @pageIndex INT = 0, @pageSize INT = 10 AS BEGIN SET @browseTerm = COALESCE(@browseTerm, ''); WITH cfl AS ( SELECT cfl.ContentFilterNo ,cfl.ContentFilterListID as ContentFilterID ,cfl.ContentFilterListDesc as ContentFilterDesc ,cfl.ContentFilterType ,cfl.CreateDate as CreateDateTime ,cfl.LastUpdatedDate ,NULL AS TotalCount FROM dbo.ContentFilterList cfl WHERE @browseTerm = '' OR (@browseField = 'ContentFilterID' AND ContentFilterListID LIKE '%' + @browseTerm + '%') OR (@browseField = 'ContentFilterDesc' AND ContentFilterListDesc LIKE '%' + @browseTerm + '%')), pcf AS ( SELECT * FROM cfl ORDER BY CASE WHEN @browseField = 'ContentFilterDesc' THEN cfl.ContentFilterDesc END , cfl.ContentFilterID OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY) SELECT * FROM pcf UNION ALL SELECT NULL AS ContentFilterNo ,NULL AS ContentFilterID ,NULL AS ContentFilterDesc ,NULL AS ContentFilterType ,NULL AS CreateDateTime ,NULL AS LastUpdatedDate ,COUNT(*) AS TotalCount FROM cfl END
CREATE PROCEDURE [dbo].[EAIP_AddModifyInterfaceVersion_171] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @ClientType varchar(10)='web', @Action varchar(4), @PersLinkURL varchar(255)='', @SupportDbTitles bit=0, @DefProfID varchar(10)='', @DefLangCode varchar(10)='en', @NewWin bit = 0, @AutoAddAuth bit = 1, @AutoAddExp bit = 1, @IsMobile bit = 1, @EncodingType varchar(20), @SignType varchar(20), @EncryptionType varchar(20), @SignatureKey varchar(100), @EncryptionKey varchar(100), @EncodedPart varchar(200), @EncryptedPart varchar(200), @AllowPersonalization bit=1, @AllowPrimaryDatabases bit = 0, @InterfaceType tinyint=0, @PlinkAuthFailureRedirect BIT, @PlinkAuthFailureRedirectURL nvarchar(255)=NULL, @MD5TokenSalt VARCHAR(255)=NULL, @HideInterface BIT = 0) AS BEGIN DECLARE @AddMod varchar(25) IF @Action='Add' BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface %s-%s already exists.', 16,-1, @InterfaceID, @Version ) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID]=@DefProfID) BEGIN RAISERROR('The default profile ID %s already exists.',16,-1,@DefProfID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@DefLangCode) BEGIN RAISERROR('The Language ''%s'' does not exist.',16,-1,@DefLangCode) RETURN END EXEC [dbo].[EAIP_AddInterfaceVersion_171] @InterfaceID, @Version, @SiteID, @SiteURL, @PassingMode, @InterfaceName, @ClientType, @PersLinkURL, @SupportDbTitles,@DefProfID,@DefLangCode, @NewWin, @AutoAddAuth, @AutoAddExp, @IsMobile, @AllowPersonalization, @AllowPrimaryDatabases, @InterfaceType, @PlinkAuthFailureRedirect, @PlinkAuthFailureRedirectURL,@MD5TokenSalt,@HideInterface -- add 'D' type parameters to new interface IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamType]='D' AND ([dbo].[CustomParamList].[ParentParamNo] IS NULL OR [dbo].[CustomParamList].[ParamNo] NOT IN (SELECT DISTINCT(ParentParamNo) FROM [dbo].[CustomParamList])) -- add 'ProfileOrder', 'ProfileDescription' to new interface 5/13/09 INSERT INTO [dbo].[InterfaceParamList] SELECT @InterfaceID, @Version, [dbo].[CustomParamList].[ParamNo], 2 from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamLevel]='P' AND [dbo].[CustomParamList].[ParamName] in ('profileOrder','profileDescription') UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[EncodingType] = @EncodingType, [dbo].[InterfaceVersion].[SignType] = @SignType, [dbo].[InterfaceVersion].[EncryptionType] = @EncryptionType, [dbo].[InterfaceVersion].[SignatureKey] = @SignatureKey, [dbo].[InterfaceVersion].[EncryptionKey] = @EncryptionKey, [dbo].[InterfaceVersion].[EncodedPart] = @EncodedPart, [dbo].[InterfaceVersion].[EncryptedPart] = @EncryptedPart WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Add Version' END ELSE BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version ) BEGIN RAISERROR('The Interface %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END DECLARE @AutoAddAuthority_old bit SELECT @AutoAddAuthority_old=[dbo].[InterfaceVersion].[AutoAddAuthority] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[SiteID] = @SiteID, [dbo].[InterfaceVersion].[SiteURL] = @SiteURL, [dbo].[InterfaceVersion].[PassingMode]= @PassingMode, [dbo].[InterfaceVersion].[PersistentLinkURL]=@PersLinkURL, [dbo].[InterfaceVersion].[SupportDbTitleLists]=@SupportDbTitles, [dbo].[InterfaceVersion].[DefLangCode]=@DefLangCode, [dbo].[InterfaceVersion].[NewWin]=@NewWin, [dbo].[InterfaceVersion].[AutoAddAuthority]=@AutoAddAuth, [dbo].[InterfaceVersion].[AutoAddExpanders]=@AutoAddExp, [dbo].[InterfaceVersion].[IsMobile]=@IsMobile, [dbo].[InterfaceVersion].[EncodingType] = @EncodingType, [dbo].[InterfaceVersion].[SignType] = @SignType, [dbo].[InterfaceVersion].[EncryptionType] = @EncryptionType, [dbo].[InterfaceVersion].[SignatureKey] = @SignatureKey, [dbo].[InterfaceVersion].[EncryptionKey] = @EncryptionKey, [dbo].[InterfaceVersion].[EncodedPart] = @EncodedPart, [dbo].[InterfaceVersion].[EncryptedPart] = @EncryptedPart, [dbo].[InterfaceVersion].[AllowPersonalization]=@AllowPersonalization, [dbo].[InterfaceVersion].[AllowPrimaryDatabases] = @AllowPrimaryDatabases, [dbo].[InterfaceVersion].[InterfaceType]=@InterfaceType, [dbo].[InterfaceVersion].[PlinkAuthFailureRedirect]=@PlinkAuthFailureRedirect, [dbo].[InterfaceVersion].[PlinkAuthFailureRedirectURL]=@PlinkAuthFailureRedirectURL, [dbo].[InterfaceVersion].[HideInterface] = @HideInterface, [dbo].[InterfaceVersion].[MD5TokenSalt] = @MD5TokenSalt WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SET @AddMod = 'Edit Version' IF @AutoAddAuthority_old=0 AND @AutoAddAuth=1 DELETE [dbo].[InterfaceDbAuthority] FROM [dbo].[InterfaceDbAuthority] AS ia INNER JOIN [dbo].[DbList] AS db ON ia.AuthDbVerNo = db.DbVerNo WHERE ia.InterfaceID=@InterfaceID AND ia.Version=@Version AND db.IncludeWhenAutoAdd = 1 END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces',@AddMod, @InterfaceID,@Version,@SiteID, @SiteURL,@PassingMode END
CREATE PROCEDURE [dbo].[EAIP_GetDatabaseGroupsConfiguration_243] @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @LangCode VARCHAR(10) AS BEGIN DECLARE @ProfNo INT, @InterfaceID VARCHAR(10), @Version VARCHAR(10), @MarketID VARCHAR(20), @STMode CHAR(1) SELECT @ProfNo = p.ProfNo, @InterfaceID = p.InterfaceID, @Version = p.Version, @MarketID = p.MarketID, @STMode = p.STMode FROM dbo.Profile p WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.ProfID = @ProfID SELECT [dbo].[EAIF_GetCustomParamScalarValue_70] ('groupDbsBySubject', @InterfaceID, @Version, @MarketID, @STMode, @ProfNo, 'P') AS [GroupDatabasesBySubjectHeader] --[DbGroups] SELECT ISNULL(pgl.SeqNo, 0) AS [DbGroupOrder], ISNULL(pgl.SelDefault, 0) AS [DefaultToSelected], ISNULL(pgl.Show,1) AS [Show], gl.GroupID AS [GroupId], ISNULL(gc.MouseOverText,'') AS [HoverText], ISNULL(pgc.Caption,ISNULL(gc.Caption, N'')) AS [GroupName], STUFF(( SELECT ',' + CONVERT(VARCHAR(10), dbl.DbName) + ':' + dbl.DbLabel FROM dbo.DbList dbl INNER JOIN dbo.DbGroup dbg ON dbg.DbVerNo = dbl.DbVerNo WHERE dbg.GroupNo = gl.GroupNo FOR XML PATH('')),1,1,'' ) AS [DatabaseList] FROM ( SELECT gl.GroupNo, gl.GroupID FROM dbo.GroupList gl WHERE EXISTS( SELECT 1 FROM dbo.ProfDatabase pdb INNER JOIN dbo.DbGroup gdb ON gdb.DbVerNo = pdb.DbVerNo AND gl.GroupNo = gdb.GroupNo WHERE pdb.ProfNo = @ProfNo and (pdb.AccessEndDate IS NULL OR pdb.AccessEndDate >= GETDATE())) ) gl LEFT OUTER JOIN dbo.GroupCaption gc ON gl.GroupNo = gc.GroupNo AND gc.LangCode = @LangCode LEFT OUTER JOIN dbo.ProfGroupCaption pgc ON pgc.ProfNo = @ProfNo AND pgc.GroupNo = gl.GroupNo AND pgc.LangCode = @LangCode LEFT OUTER JOIN dbo.ProfGroupList pgl ON pgl.ProfNo = @ProfNo AND pgl.GroupNo = gl.GroupNo UNION ALL --[DbCustGroups] SELECT pcgl.SeqNo AS [DbGroupOrder], pcgl.SelDefault AS [DafaultToSelected], pcgl.Show AS [Show], CONVERT(VARCHAR, pcgl.GroupNo) AS [GroupId], '' AS [HoverText], ISNULL(pcgc.Caption, N'') AS [GroupName], STUFF(( SELECT ',' + CONVERT(VARCHAR(10), dbl.DbName) + ':' + dbl.DbLabel FROM dbo.DbList dbl INNER JOIN dbo.ProfCustGroupDb pcg ON dbl.DbVerNo = pcg.DbVerNo WHERE pcg.ProfNo = pcgl.ProfNo AND pcg.GroupNo = pcgl.GroupNo FOR XML PATH('')),1,1,'' ) AS [DatabaseList] FROM dbo.ProfCustGroupList pcgl LEFT OUTER JOIN dbo.ProfCustGroupCaption pcgc ON pcgc.ProfNo = pcgl.ProfNo AND pcgc.GroupNo = pcgl.GroupNo AND pcgc.LangCode = @LangCode WHERE pcgl.ProfNo = @ProfNo GROUP BY pcgl.GroupNo, pcgl.ProfNo, pcgl.SeqNo, pcgl.SelDefault, pcgl.Show, pcgc.Caption ORDER BY [DbGroupOrder] END
CREATE PROCEDURE [dbo].[EAUI_GetZ3950Forms_70] (@VendorID int) AS BEGIN SELECT [dbo].[Z3950Forms].[FormID], [dbo].[Z3950Forms].[FormText] FROM [dbo].[Z3950Forms] WHERE [dbo].[Z3950Forms].[VendorID]=@VendorID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbFieldGroup(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS FieldGroupNo, [dbo].[FieldGroupList].[FieldGroupId] AS FieldGroupId , dbo.EACOPY_AUTO_GetXmlDbFieldGroup_DbFieldElement([dbo].[DbFieldGroup].[DbVerNo], [dbo].[DbFieldGroup].[FieldGroupNo]) DbFieldElement , dbo.EACOPY_AUTO_GetXmlDbFieldGroup_DbFieldGroupCaption([dbo].[DbFieldGroup].[DbVerNo], [dbo].[DbFieldGroup].[FieldGroupNo]) DbFieldGroupCaption , dbo.EACOPY_AUTO_GetXmlDbFieldGroup_DbFieldGroupDefaults([dbo].[DbFieldGroup].[DbVerNo], [dbo].[DbFieldGroup].[FieldGroupNo]) DbFieldGroupDefaults FROM [dbo].[DbFieldGroup] LEFT JOIN [dbo].[FieldGroupList] ON [dbo].[FieldGroupList].[FieldGroupNo] = [dbo].[DbFieldGroup].[FieldGroupNo] WHERE [dbo].[DbFieldGroup].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, FieldGroupNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCfgServerXMLParam_70](@UserId nvarchar(20), @UserIP varchar(15), @SrvNo int, @ParamNo int, @ItemName varchar(255) ) AS BEGIN DECLARE @ParamID varchar(100), @SrvID varchar(255) SET @ParamID = dbo.EAIF_GetConfigParamName_70(@ParamNo) SET @SrvID = dbo.EAIF_GetConfigServerURI_70(@SrvNo) DELETE FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[TargetNo] = @SrvNo AND [dbo].[ConfigParamXmlValues].[ItemName] = @ItemName EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIP, 'Application Configuration','Delete XML Parameter', @SrvID, @ParamID END
CREATE PROCEDURE [dbo].[UTIL_LimiterCleanup](@DbLabel varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @CurrSortedValueText varchar(8000) DECLARE @PrevSortedValueText varchar(8000) DECLARE @LimiterNo int DECLARE @LimiterIdCount int DECLARE @CurrLimiterId varchar(10) DECLARE @PrevLimiterId varchar(10) DECLARE @SugLimiterId varchar(10) DECLARE @OutTable TABLE(LimiterNo int, LimiterId varchar(20), Description varchar(100), ControlTemplate varchar(7000), NewLimiterId varchar(20), DefPosn int) DECLARE @SortedOutTable TABLE(LimiterNo int, LimiterId varchar(10), SortedTemplate varchar(7000)) INSERT INTO @OutTable select a.LimiterNo, a.LimiterId, a.Description, dbo.UTIL_GetListButtonBoxValueText(b.ControlTemplate, 0), '', 0 from [dbo].[LimiterList] a INNER JOIN [dbo].[LimiterDetail] b ON a.LimiterNo=b.LimiterNo where a.DbLabel=@DbLabel and a.ControlType in (4,5) and b.LangCode='en' order by substring(a.LimiterId,1,2), substring(a.LimiterId,3,20) INSERT INTO @SortedOutTable select a.LimiterNo, a.LimiterId, dbo.UTIL_GetListButtonBoxValueText(b.ControlTemplate, 1) from [dbo].[LimiterList] a INNER JOIN [dbo].[LimiterDetail] b ON a.LimiterNo=b.LimiterNo where a.DbLabel=@DbLabel and a.ControlType in (4,5) and b.LangCode='en' order by substring(a.LimiterId,1,2), substring(a.LimiterId,3,20) DECLARE C1_M CURSOR FOR SELECT a.LimiterId, b.SortedTemplate FROM @OutTable a INNER JOIN @SortedOutTable b ON a.LimiterNo=b.LimiterNo FOR READ ONLY SET @PrevLimiterId='' SET @PrevSortedValueText='' SET @SugLimiterId='' OPEN C1_M FETCH NEXT FROM C1_M INTO @CurrLimiterId, @CurrSortedValueText WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN SET @LimiterIdCount = 0 SELECT @LimiterNo=MIN(LimiterNo), @LimiterIdCount=COUNT(LimiterId) FROM @SortedOutTable WHERE LimiterId<>@CurrLimiterId AND SortedTemplate=@CurrSortedValueText IF @LimiterIdCount>0 UPDATE @OutTable SET NewLimiterId=@CurrLimiterId WHERE LimiterNo=@LimiterNo END FETCH NEXT FROM C1_M INTO @CurrLimiterId, @CurrSortedValueText END CLOSE C1_M DEALLOCATE C1_M --SELECT * FROM @OutTable --SELECT * FROM @SortedOutTable SELECT a.LimiterId, a.Description, a.ControlTemplate, b.SortedTemplate, a.NewLimiterId FROM @OutTable a INNER JOIN @SortedOutTable b ON a.LimiterNo=b.LimiterNo --ORDER BY substring(a.limiterid,1,2), substring(a.limiterid,3,20) END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceFeatures_81] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceFeatureList].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceFeatureList] ([ifl].[InterfaceID],[ifl].[Version],[ifl].[FeatureName],[ifl].[ScreenID],[ifl].[FeatureType], [ifl].[DbDependant],[ifl].[VisibleItemCount],[ifl].[SelectionMode],[ifl].[AllowProfAccess],[ifl].[AllowProfEdit],[ifl].[AllowProfItemAdd]) SELECT @InterfaceIDTo, @VersionTo, ifl.FeatureName,ISNULL(isc.ScreenID,''),ifl.FeatureType, ifl.DbDependant,ifl.VisibleItemCount,ifl.SelectionMode,ifl.AllowProfAccess,ifl.AllowProfEdit,ifl.AllowProfItemAdd FROM [dbo].[InterfaceFeatureList] ifl LEFT OUTER JOIN [dbo].[InterfaceScreen] isc ON ifl.ScreenID = isc.ScreenID AND isc.InterfaceID= @InterfaceIDTo AND isc.Version =@VersionTo WHERE ifl.InterfaceID=@InterfaceIDFrom AND ifl.Version = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceFeatureFields]([iff].[InterfaceFeatureNo],[iff].[FieldName], [iff].[FieldLevel],[iff].[FieldType],[iff].[IncludeInSummary],[iff].[EditControl],[iff].[ValueTemplate]) SELECT ifl2.InterfaceFeatureNo,iff.FieldName, iff.FieldLevel,iff.FieldType,iff.IncludeInSummary,iff.EditControl,iff.ValueTemplate FROM [dbo].[InterfaceFeatureList] AS ifl INNER JOIN [dbo].[InterfaceFeatureFields] AS iff ON ifl.InterfaceFeatureNo = iff.InterfaceFeatureNo INNER JOIN [dbo].[InterfaceFeatureList] AS ifl2 ON ifl.FeatureName = ifl2.FeatureName WHERE ifl.InterfaceID= @InterfaceIDFrom AND ifl.Version = @VersionFrom AND ifl2.InterfaceID= @InterfaceIDTo AND ifl2.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceFeatureValues]([ifv].[InterfaceFeatureNo],[ifv].[ItemNo],[ifv].[FieldValueXml],[ifv].[SeqNo],[ifv].[Show]) SELECT ifl2.InterfaceFeatureNo, ifv.ItemNo,ifv.FieldValueXml,ifv.SeqNo,ifv.Show FROM [dbo].[InterfaceFeatureList] AS ifl INNER JOIN [dbo].[InterfaceFeatureValues] AS ifv ON ifl.InterfaceFeatureNo = ifv.InterfaceFeatureNo INNER JOIN [dbo].[InterfaceFeatureList] AS ifl2 ON ifl.FeatureName = ifl2.FeatureName WHERE ifl.InterfaceID= @InterfaceIDFrom AND ifl.Version = @VersionFrom AND ifl2.InterfaceID= @InterfaceIDTo AND ifl2.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetProductOfferingLimitersForAttachByID_79] (@PrdOffID varchar(20),@ProductID varchar(10), @LimiterID varchar(10))AS BEGIN DECLARE @LimiterList varchar(255) SELECT @LimiterList = pp.Limiters FROM EASUPPORT.dbo.ProductPackage pp INNER JOIN EASUPPORT.dbo.ProductOffering po ON pp.PrdOffNo = po.PrdOffNo WHERE pp.ProductID= @ProductID AND po.PrdOffID = @PrdOffID SELECT distinct ll.LimiterId, N'('+ll.LimiterId+N')' + ll.Description AS Description FROM [dbo].[LimiterList] ll LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@LimiterList, ',') a ON ll.LimiterId = a.Item INNER JOIN [dbo].[DbLimiter] dbl ON ll.LimiterNo = dbl.LimiterNo INNER JOIN [dbo].[DbList] db ON dbl.DbVerNo = db.DbVerNo INNER JOIN EASUPPORT.dbo.ProductPackage pp ON pp.ProductID = db.DbName INNER JOIN EASUPPORT.dbo.ProductOffering po ON po.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.Product pr ON pp.ProductID = pr.ProductID WHERE ll.BitFlag1=1 AND db.DbLabel='live' AND po.PrdOffID = @PrdOffID AND pp.ProductID = @ProductID AND pr.ProductType='D' AND a.Item is null AND ll.LimiterId >= @LimiterID Order by ll.LimiterId END
CREATE PROCEDURE [dbo].[EAUI_AddCfgAppParam_70]( @UserID nvarchar(20), @UserIP varchar(15), @AppNo int, @ParamName varchar(100), @ParamType char, @PromptText varchar(255), @EditControl varchar(50), @ValueTemplate nvarchar(1000), @ParamValue nvarchar(2000), @ItemName varchar(100), @ParamXMLValue nvarchar(max)) AS BEGIN EXEC [dbo].[EAIP_AddCfgAppParam_70] @AppNo,@ParamName,@ParamType, @PromptText, '', 'general', 1, 1, @EditControl, @ValueTemplate, '', @ParamValue, '', @ParamXMLValue DECLARE @AppID varchar(20), @DataType varchar(15) SET @AppID = dbo.EAIF_GetConfigApplicationID_70(@AppNo) SET @DataType = 'DataType:'+@ParamType EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Add Application Parameter', @AppID, @ParamName, @DataType, @PromptText END
CREATE PROCEDURE [dbo].[EPCS_GetLSLocalMessage_70](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @ISSN varchar(20),@Date varchar(8))AS BEGIN DECLARE @ProfNo int SELECT @ProfNo=[dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID And [dbo].[Profile].[GroupID]=@GroupID And [dbo].[Profile].[ProfID]=@ProfID IF @ProfNo IS NULL RETURN DECLARE @ColID varchar(50) SELECT @ColID=dbo.EAIF_GetProfileParamScalarValue_70( @ProfNo,'localskey') DECLARE @ColNo int SELECT @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID,@ColID) DECLARE @Msg nvarchar(MAX) DECLARE @Subscribe bit IF @ColNo IS NOT NULL BEGIN SELECT @Msg = ym.MsgText+' '+ISNULL(lt.Notes,''), @Subscribe=1 FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo AND mt.ISSN=@ISSN INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo LEFT OUTER JOIN [dbo].[LocalDate] ld ON lt.ColNo=ld.ColNo AND lt.TitleNo=ld.TitleNo AND convert(bigint, ld.FromDate)<= convert(bigint,@Date) AND convert(bigint, IsNull(ld.ToDate, '99999999' ))>= convert(bigint,@Date) WHERE lt.ColNo=@ColNo AND lt.Subscribe=1 IF @Msg Is NULL SELECT @Msg = nm.MsgText, @Subscribe=0 FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo WHERE lt.ColNo=@ColNo AND mt.ISSN=@ISSN END IF @Msg Is NULL SELECT @Msg = dbo.EAIF_GetProfileParamScalarValue_70( @ProfNo,'defaultLocalsNoMessage'), @Subscribe=0 SELECT @Msg As Message, @Subscribe AS Subscribe END
--sql content merged from file: \StoredProcedures\AUTH_GetPersLinkProfileForDbGroup_94.sql CREATE procedure [dbo].[AUTH_GetPersLinkProfileForDbGroup_94] ( @p_CustID varchar(10), @p_GroupID varchar(10), @p_DbGroupCode varchar(255), @p_InterfaceID varchar(25) = '', @IsMobileRequest bit=0 ) as begin set nocount on declare @InterfaceID varchar(10), @Version varchar(10) if charindex('-', @p_InterfaceID) >0 begin set @InterfaceID = substring(@p_InterfaceID, 1, charindex('-',@p_InterfaceID) - 1) set @Version = substring(@p_InterfaceID, charindex( '-',@p_InterfaceID )+1, len(@p_InterfaceID)) end else begin set @InterfaceID = '' set @Version = 'live' end declare @PersLinkParamNo int select @PersLinkParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='persistentLinkProfile' AND [dbo].[CustomParamList].[ParamLevel]='P' DECLARE @GroupDbsParamNo int SELECT @GroupDbsParamNo =[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='groupDbsBySubject' AND [dbo].[CustomParamList].[ParamLevel]='P' declare @DbGroupCode table(DbGroupCode varchar(12), DefGrNo int) insert into @DbGroupCode select t.Item, g.GroupNo from dbo.EAIF_GetItemTable_70(@p_DbGroupCode,',')t left outer join [dbo].[GroupList] g ON t.Item=g.GroupID DECLARE @Prof table (ProfNo int, ProfID varchar(10), ProfPwd varchar(50), SiteURL varchar(255), InterfaceID varchar(10), Priority smallint) IF EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is null) BEGIN --custom define group insert into @Prof (ProfNo, ProfID, ProfPwd, SiteURL, InterfaceID) SELECT top 1 p.ProfNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL, p.InterfaceID FROM [dbo].[Profile] p LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON p.ProfNo=val.TargetNo and val.ParamLevel='P' and val.ParamNo= @PersLinkParamNo --AND val.paramValue='1', LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val2 ON p.ProfNo=val2.TargetNo and val2.ParamLevel='P' and val2.ParamNo= @GroupDbsParamNo INNER JOIN dbo.ProfCustGroupList AS g ON p.ProfNo = g.ProfNo INNER JOIN @DbGroupCode AS t ON g.GroupNo = t.DbGroupCode INNER JOIN dbo.ProfCustGroupDb AS pgdb ON g.ProfNo=pgdb.ProfNo INNER JOIN dbo.ProfDatabase AS pdb ON g.ProfNo=pdb.ProfNo AND pgdb.DbVerNo= pdb.DbVerNo INNER JOIN dbo.CustomParamDefaults AS d ON d.InterfaceID=p.InterfaceID and d.Version=p.Version and d.MarketID=p.MarketID and d.STMode=p.STMode INNER JOIN dbo.CustomParamDefaults AS d2 ON d2.InterfaceID=p.InterfaceID and d2.Version=p.Version and d2.MarketID=p.MarketID and d2.STMode=p.STMode INNER JOIN dbo.InterfaceVersion AS iv ON iv.InterfaceID=p.InterfaceID and iv.Version=p.Version WHERE p.CustID=@p_CustID AND p.GroupID=@p_GroupID AND g.Show=1 AND t.DefGrNo is null AND (pdb.Mode is null OR pdb.Mode ='S' or pdb.Mode='I') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) and d.ParamNo=@PersLinkParamNo and (val.ParamValue ='1' or (val.ParamValue is null and d.DefValue='1')) and d2.ParamNo=@GroupDbsParamNo and (val2.ParamValue ='1' or(val2.ParamValue is null and d2.DefValue='1')) and (@InterfaceID = '' or (p.InterfaceID = @InterfaceID and p.Version = @Version)) ORDER BY CASE when @IsMobileRequest=0 Then Case WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=0 THEN 5 WHEN iv.IsMobile=1 THEN 6 ELSE 7 END else case WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=1 THEN 5 WHEN iv.IsMobile=0 THEN 6 ELSE 7 END end, p.SeqNo asc END IF EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is not null) AND NOT EXISTS (SELECT 1 FROM @Prof) BEGIN DECLARE @DefGroupParamNo int SELECT @DefGroupParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='showDefaultEPDatabaseGroup' AND [dbo].[CustomParamList].[ParamLevel]='P' insert into @Prof select Top 1 a.ProfNo,a.ProfID, a.ProfPwd, a.PersistentLinkURL, a.InterfaceID, a.Priority from ( select p.ProfNo, gl.GroupNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL, p.InterfaceID, p.SeqNo, CASE when @IsMobileRequest=0 Then Case WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=0 THEN 5 WHEN iv.IsMobile=1 THEN 6 ELSE 7 END else case WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=1 THEN 5 WHEN iv.IsMobile=0 THEN 6 ELSE 7 END end as Priority from [dbo].[Profile] p LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON p.ProfNo=val.TargetNo and val.ParamLevel='P' and val.ParamNo= @PersLinkParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val2 ON p.ProfNo=val2.TargetNo and val2.ParamLevel='P' and val2.ParamNo= @DefGroupParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val3 ON p.ProfNo=val3.TargetNo and val3.ParamLevel='P' and val3.ParamNo= @GroupDbsParamNo INNER JOIN dbo.ProfDatabase AS pdb ON p.ProfNo=pdb.ProfNo INNER JOIN dbo.DbGroup AS gdb ON pdb.DbVerNo =gdb.DbVerNo INNER JOIN dbo.GroupList AS gl ON gl.GroupNo = gdb.GroupNo INNER JOIN @DbGroupCode AS t ON gl.GroupNo=t.DefGrNo INNER JOIN dbo.CustomParamDefaults AS d ON d.InterfaceID=p.InterfaceID and d.Version=p.Version and d.MarketID=p.MarketID and d.STMode=p.STMode INNER JOIN dbo.CustomParamDefaults AS d2 ON d2.InterfaceID=p.InterfaceID and d2.Version=p.Version and d2.MarketID=p.MarketID and d2.STMode=p.STMode INNER JOIN dbo.CustomParamDefaults AS d3 ON d3.InterfaceID=p.InterfaceID and d3.Version=p.Version and d3.MarketID=p.MarketID and d3.STMode=p.STMode INNER JOIN dbo.InterfaceVersion AS iv ON iv.InterfaceID=p.InterfaceID and iv.Version=p.Version WHERE p.CustID=@p_CustID AND p.GroupID=@p_GroupID AND (pdb.Mode is null OR pdb.Mode='S' or pdb.Mode='I')and (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) and d.ParamNo=@PersLinkParamNo and (val.ParamValue ='1' or(val.ParamValue is null and d.DefValue='1')) and d2.ParamNo=@DefGroupParamNo and (val2.ParamValue ='1' or(val2.ParamValue is null and d2.DefValue='1')) and d3.ParamNo=@GroupDbsParamNo and (val3.ParamValue ='1' or(val3.ParamValue is null and d3.DefValue='1')) and (@InterfaceID = '' or (p.InterfaceID = @InterfaceID and p.Version = @Version) or iv.SiteID=@InterfaceID) ) a LEFT OUTER JOIN ( select pgl.ProfNo, pgl.GroupNo, pgl.Show from [dbo].[ProfGroupList] pgl INNER JOIN @DbGroupCode t2 ON pgl.GroupNo=t2.DefGrNo ) b ON a.ProfNo=b.ProfNo and a.GroupNo =b.GroupNo WHERE b.Show is null OR b.Show=1 ORDER BY a.Priority, a.SeqNo asc END SELECT ProfID, ProfPwd, dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) AS SiteURL, InterfaceID FROM @Prof end
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceFeatureFieldList_77](@InterfaceFeatureNo int )AS BEGIN SELECT iff.FieldName, sl.Description AS FieldLevel, st.Description AS FieldType FROM [dbo].[InterfaceFeatureFields] iff INNER JOIN [dbo].[StringValueMap] sl ON iff.FieldLevel = sl.FieldCode INNER JOIN [dbo].[StringValueMap] st ON iff.FieldType = st.FieldCode WHERE iff.InterfaceFeatureNo=@InterfaceFeatureNo AND sl.FieldName='FeatureFieldLevel' AND st.FieldName='FeatureFieldType' ORDER BY iff.FieldName END
CREATE PROCEDURE [dbo].[EAIS_DelEOColTitle_70]( @ColNo varchar(10),@ISSN varchar(20), @FromDate char(9),@ToDate char(9) ) AS BEGIN DECLARE @TitleNo int SET @TitleNo=dbo.EAIF_GetTitleNo_70(@ISSN) IF @TitleNo is not null BEGIN DELETE [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo AND [dbo].[LocalDate].[FromDate]=@FromDate IF NOT EXISTS (SELECT 1 FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo) DELETE [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[TitleNo]=@TitleNo END END
CREATE PROCEDURE [dbo].[EPCAS_GetDsParams](@MasterDbList int) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MasterDbList AND [dbo].[DbList].[DbType] IN (1,3,4,6,8)) SELECT [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] FROM [dbo].[DbServerParams] WHERE [dbo].[DbServerParams].[DbVerNo] = @MasterDbList END
CREATE PROCEDURE [dbo].[EAUI_GetDbInterfaceSearchOptions_76] (@DbVerNo int, @ScreenNo int ) AS BEGIN SELECT iso.SearchOptionNo, iso.SeqNo, sol.SearchOptionId, dsc.OptionCaption, iso.Show FROM [dbo].[DbInterfaceSearchOption] iso INNER JOIN [dbo].[DbSearchOptionCaption] dsc ON iso.DbVerNo = dsc.DbVerNo AND iso.SearchOptionNo = dsc.SearchOptionNo INNER JOIN [dbo].[SearchOptionList] sol ON iso.SearchOptionNo=sol.SearchOptionNo WHERE iso.DbVerNo = @DbVerNo AND iso.IntfScreenNo = @ScreenNo AND dsc.LangCode='en' ORDER BY iso.SeqNo END
--sql content merged from file: \StoredProcedures\EAUI_UpdateCustomerNotes_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerNotes_70]( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @Notes nvarchar(4000)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Customer Notes', @CustID, @Notes EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID,'customerNotes',@Notes END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseDocTypes_77]( @OldDbVerNo int, @NewDbVerNo int) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbDocType] WHERE [dbo].[DbDocType].[DbVerNo]=@NewDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbDocType] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbDocType].[DocTypeNo],[dbo].[DbDocType].[TargetDb],[dbo].[DbDocType].[SearchString] FROM [dbo].[DbDocType] WHERE [dbo].[DbDocType].[DbVerNo]=@OldDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateDocType_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @ParamName varchar(100), @ItemName varchar(255), @OldItemName varchar(255), @ParamValue nvarchar(max), @Mode varchar(6)='') AS BEGIN BEGIN TRANSACTION DECLARE @ParamNo smallint SELECT @ParamNo=dbo.EAIF_GetDbParamNumber_70( @ParamName ) /* If the name has been changed, we need to delete the old doctype */ IF ( @OldItemName != @ItemName ) DELETE FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName] = @OldItemName /* Logging is assumed to be handled by below procedure */ EXEC dbo.EAUI_UpdateDbParamXmlValue_70 @UserID, @UserIP,@DbVerNo, @DbName,@DbLabel,@ParamName,@ItemName,@ParamValue,@Mode IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR ('Could not modify doctype',-16,1,@DbName,@DbLabel,@ItemName) RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetProfCatalogHoldingTblCaptions_104] ( @ProfNo int, @DbVerNo int, @LangCode varchar(10)) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @Captions = @Captions + N''+ c.Caption +N' ' from ( SELECT ISNULL (pcc.Caption,ISNULL(gc.Caption,'')) AS Caption,gc.CaptionID,svm.Description as CaptionName,svm.SeqNo FROM [dbo].[GlobalCatalogHoldingTblCaptions] gc INNER JOIN [dbo].[StringValueMap] svm on (svm.FieldName='CatalogHoldingTblCaptions' and svm.FieldCode=gc.CaptionID) LEFT OUTER JOIN [dbo].[ProfCatalogHoldingTblCaptions] pcc on (pcc.ProfNo=@ProfNo and pcc.DbVerNo=@DbVerNo and pcc.LangCode=@LangCode and pcc.CaptionID=gc.CaptionID) WHERE gc.LangCode = @LangCode UNION ALL /* Some captions do not have default captions yet. However, libAdmin can customize these captions*/ Select pcc.Caption, pcc.CaptionID, svm.Description as CaptionName, svm.SeqNo from [dbo].[ProfCatalogHoldingTblCaptions] pcc INNER JOIN [dbo].[StringValueMap] svm on (svm.FieldName='CatalogHoldingTblCaptions' and svm.FieldCode=pcc.CaptionID) Left outer join [dbo].[GlobalCatalogHoldingTblCaptions] gc on (gc.CaptionID = pcc.CaptionID and gc.LangCode = pcc.LangCode) Where pcc.ProfNo=@ProfNo and pcc.DbVerNo=@DbVerNo and pcc.LangCode=@LangCode and gc.CaptionID is null ) c order by c.SeqNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetContentTypeDetails_70] ( @ContentType smallint, @LangCode varchar(10)="en" ) AS BEGIN SELECT cl.ContentType, cl.Description, cl.ImageFileName, cl.StartPageName, ISNULL(cc.LinkText,N'') AS LinkText FROM [dbo].[DbContentList] cl LEFT OUTER JOIN [dbo].[DbContentCaptions] cc ON cl.ContentType=cc.[ContentType] AND cc.LangCode = @LangCode WHERE cl.ContentType = @ContentType END
CREATE Procedure [dbo].[EAIP_AddModifyProfFeatureSelMode_102] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @SelectionMode char(1), @VisibleItemCount smallint ) AS Begin DECLARE @LoggingProfile varchar(30) SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) Begin Try Begin Transaction MERGE [dbo].[ProfFeatureSelMode] as Target Using (Select @ProfNo as ProfNo, @InterfaceFeatureNo as InterfaceFeatureNo, @SelectionMode as SelectionMode, @VisibleItemCount as VisibleItemCount ) as Source On (Target.ProfNo=Source.ProfNo and Target.InterfaceFeatureNo=Source.InterfaceFeatureNo) When matched Then Update set Target.SelectionMode= Source.SelectionMode, Target.VisibleItemCount = Source.VisibleItemCount When Not matched by target Then Insert ([ProfNo], [InterfaceFeatureNo], [SelectionMode], [VisibleItemCount]) Values (Source.ProfNo, Source.InterfaceFeatureNo, Source.SelectionMode, Source.VisibleItemCount); EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Add/Modify profilefeatureSelMode', @LoggingProfile, @InterfaceFeatureNo Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE PROCEDURE [dbo].[EAIP_GetDatabaseMetadata_243] @ListOfDbShortNames VARCHAR(MAX), @LangCode VARCHAR(10) AS BEGIN SELECT dbl.DbName AS [ShortName], dbl.DisplayName AS [LongName], dbl.DbLabel AS [DbLabel], dbo.EAIF_XmlDecode_70(CONVERT(NVARCHAR(MAX), sd.ShortDescription)) AS [ShortDescription], dbo.EAIF_XmlDecode_70(CONVERT(NVARCHAR(MAX), ld.LongDescription)) AS [LongDescription] FROM ( SELECT DISTINCT sn.value AS SortName FROM STRING_SPLIT(@ListOfDbShortNames, ',') sn ) db INNER JOIN dbo.DbList dbl ON dbl.DbName = db.SortName LEFT OUTER JOIN ( SELECT dbpxv.DbVerNo, CONVERT(XML, dbpxv.ParamValue).query('(/shortDescriptions/shortDescription[@lang=sql:variable("@LangCode")])/text()') AS ShortDescription FROM dbo.DbParamXmlValues dbpxv INNER JOIN dbo.DbParamList dbpl ON dbpxv.ParamNo = dbpl.ParamNo WHERE dbpl.ParamName = 'shortDescription' AND dbpxv.ItemName = '' ) sd ON sd.DbVerNo = dbl.DbVerNo LEFT OUTER JOIN ( SELECT dbpxv.DbVerNo, CONVERT(XML, dbpxv.ParamValue).query('/longDescription/text()') AS LongDescription FROM dbo.DbParamXmlValues dbpxv INNER JOIN dbo.DbParamList dbpl ON dbpxv.ParamNo = dbpl.ParamNo WHERE dbpl.ParamName = 'longDescription' AND dbpxv.ItemName = @LangCode ) ld ON ld.DbVerNo = dbl.DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetZ3950Vendor_70] (@VendorID int)AS BEGIN SELECT [dbo].[Z3950Vendors].[VendorID], [dbo].[Z3950Vendors].[VendorName], [dbo].[Z3950Vendors].[CallType], [dbo].[Z3950Vendors].[SearchMask], [dbo].[Z3950Vendors].[XSL] FROM [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=@VendorID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbForm(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding], [dbo].[DbForm].[Category] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding], [dbo].[DbForm].[Category] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCollection_191] (@ColNo INT ) AS BEGIN BEGIN TRY BEGIN TRANSACTION; EXEC [dbo].[EAIP_DeleteCollection_70] @ColNo COMMIT TRANSACTION; END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(MAX) ,@ErrorSeverity INT ,@ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE() + ' Line ' + CAST(ERROR_LINE() AS NVARCHAR(5)) ,@ErrorSeverity = ERROR_SEVERITY() ,@ErrorState = ERROR_STATE(); ROLLBACK TRANSACTION; RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH END
CREATE PROCEDURE [dbo].[UTIL_ProcessProfileDbsWithWrongInterfaces_99] AS BEGIN DECLARE @DbName varchar(10) SELECT @DbName=[a].[DbName] from ( SELECT Top 1 [dbo].[DbToRemoveFromProfile].[DbName] from [dbo].[DbToRemoveFromProfile] where [dbo].[DbToRemoveFromProfile].[Processed] =0 ) a IF @DbName is not null BEGIN TRY BEGIN TRANSACTION exec [dbo].[UTIL_DeleteProfileDbsWithWrongInterfaces_99] @DbName, '',1 Update [dbo].[DbToRemoveFromProfile] Set [dbo].[DbToRemoveFromProfile].[Processed] =1 Where [dbo].[DbToRemoveFromProfile].[Dbname] =@DbName COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceFeatureValues_77](@InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(100),@ItemNo int,@FieldValueXml nvarchar(max), @SeqNo varchar(2), @Show bit ) AS /** procedure is used by EPCopy **/ BEGIN DECLARE @InterfaceFeatureNo int DECLARE @FieldValueXML2 XML SET @FieldValueXML2 = CAST (@FieldValueXml as XML) SELECT @InterfaceFeatureNo=[dbo].[InterfaceFeatureList].[InterfaceFeatureNo] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceFeatureList].[Version]=@Version AND [dbo].[InterfaceFeatureList].[FeatureName]=@FeatureName DECLARE @SNo int IF LEN(@SeqNo)>0 SET @SNo = CONVERT(int, @SeqNo) INSERT INTO [dbo].[InterfaceFeatureValues]([dbo].[InterfaceFeatureValues].[InterfaceFeatureNo],[dbo].[InterfaceFeatureValues].[ItemNo],[dbo].[InterfaceFeatureValues].[FieldValueXml],[dbo].[InterfaceFeatureValues].[SeqNo],[dbo].[InterfaceFeatureValues].[Show]) VALUES (@InterfaceFeatureNo,@ItemNo,@FieldValueXml2, @SNo,@Show) END
--sql content merged from file: \StoredProcedures\EAUI_GetProfAuthorityDbSettings_99.sql CREATE Procedure [dbo].[EAUI_GetProfAuthorityDbSettings_99] @ProfNo int As BEGIN --Get the Customized values from ProfAuthDbDefaults table --for the main db's currently enabled on the profile --Note: Regular Authorities can be attached to more than one main DbverNo in the profile -- We need a UNION to get non-duplicate (Unique) Authorities only SELECT pa.AuthDbVerNo as AuthDbVerNo, au.DisplayName as DisplayName, pa.BrowseMode as BrowseMode, pa.BoolOperator as LogicalOperator FROM [dbo].[ProfAuthDbDefaults] pa Inner Join [dbo].[DbAuthority] da on (da.AuthDbVerNo=pa.AuthDbVerNo) Inner Join [dbo].[DbList] au on (au.DbVerNo=pa.AuthDbVerNo) Inner Join [dbo].[ProfDatabase] a on (a.ProfNo=pa.ProfNo and a.DbVerNo=da.MainDbVerNo) WHERE a.ProfNo = @ProfNo AND a.Enable = 1 AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) UNION -- Default values for the Authority databases -- Contenttype 10- MESH, 11-Thesaurus SELECT au.DbVerNo as AuthDbVerNo, au.DisplayName as DisplayName, ISNULL(dbo.EAIF_GetDbParamScalarValue_70(au.DbVerNo,'defaultThesaurusSearchMode'),'1') as BrowseMode, ISNULL(dbo.EAIF_GetDbParamScalarValue_70(au.DbVerNo,'defaultThesaurusLogicalOperator'),'0') as LogicalOperator FROM [dbo].[ProfDatabase] a Inner Join [dbo].[DbAuthority] da on (da.MainDbVerNo=a.DbVerNo) Inner Join [dbo].[DbList] au on (au.DbVerNo=da.AuthDbVerNo and au.ContentType in ('10','11')) Left Outer Join [dbo].[ProfAuthDbDefaults] pd ON (pd.ProfNo=a.ProfNo and pd.AuthDbVerNo=au.DbVerNo) WHERE a.ProfNo = @ProfNo AND a.Enable = 1 AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) AND pd.AuthDbVerNo is null ORDER BY DisplayName END
CREATE PROCEDURE [dbo].[EAUI_AddCfgAppServer_74]( @UserID nvarchar(20), @UserIP varchar(15), @AppNo int, @ServerURI varchar(255), @Description varchar(255), @ServerType char, @Status char) AS BEGIN DECLARE @AppID varchar(20) SET @AppID = dbo.EAIF_GetConfigApplicationID_70(@AppNo) IF EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ApplicationNo]=@AppNo AND [dbo].[ConfigServer].[ServerURI]=@ServerURI) BEGIN RAISERROR('The Application (%s) Server (%s) already exists.', 16,-1, @AppID, @ServerURI ) RETURN END INSERT INTO [dbo].[ConfigServer]( [dbo].[ConfigServer].[ApplicationNo], [dbo].[ConfigServer].[ServerURI], [dbo].[ConfigServer].[Description], [dbo].[ConfigServer].[ServerType], [dbo].[ConfigServer].[ServerStatus]) VALUES( @AppNo, @ServerURI, @Description, @ServerType, @Status) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Add Server', @AppID, @ServerURI, @Description, @ServerType END
CREATE PROCEDURE [dbo].[EPCS_GetLSProfInfo_70]( @CustID varchar(10), @GroupID varchar(10) ) as BEGIN DECLARE @ProfNo int, @CustNo int DECLARE @InterfaceID varchar(10) DECLARE @ProfileID varchar(10) DECLARE @ProfPwd varchar(10) SELECT @ProfNo=dbo.EAIF_GetLinkSourceProfile_70(@CustID,@GroupID) IF @ProfNo IS NULL RETURN SELECT @ProfileID=[dbo].[Profile].[ProfID], @ProfPwd=[dbo].[Profile].[ProfPwd], @InterfaceID=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @CustID as 'CustID', @GroupID as 'GroupID', @ProfileID as 'ProfID', @ProfPwd as ProfPwd SELECT 'hasLinkSource' as ParamName, 'B' as ParamType, dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'hasLinkSource') as ParamValue SELECT lst.ParamName as ParamName, lst.ParamType as ParamType, ISNULL(val.ParamValue, dfl.DefValue) as ParamValue FROM [dbo].[CustomParamList] lst LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON lst.ParamNo=val.ParamNo AND val.ParamLevel='P' AND val.TargetNo=@ProfNo INNER JOIN [dbo].[CustomParamDefaults] dfl ON lst.ParamNo=dfl.ParamNo INNER JOIN [dbo].[InterfaceParamList] int ON dfl.InterfaceID=int.InterfaceID AND lst.ParamNo=int.ParamNo INNER JOIN [dbo].[Profile] p ON int.Version=p.Version AND int.InterfaceID=p.InterfaceID AND dfl.Version=p.Version AND dfl.MarketID=p.MarketID AND dfl.STMode=p.STMode WHERE lst.ParamName IN ('softLinkingPermitted', 'eonlinePermitted', 'eonlineCustID', 'eonlineUserID', 'eonlinePassword', 'ppvAllowed', 'smartLinksUsesCrossRef', 'crossRefColID','libUrl','libImageUrl','lsOpenFullText') AND p.ProfNo=@ProfNo END
CREATE PROCEDURE [dbo].[AUTH_GetPersLinkProfileForDbGroup_MultiAffiliation] (@CustIdList VARCHAR(MAX), @GroupIdList VARCHAR(MAX), @UseSsl BIT, @p_DbGroupCode VARCHAR(255), @InterfaceID VARCHAR(25), @IsMobileRequest BIT, @IsGuestRequest BIT, @ProfID VARCHAR(10), @OnlySpecifiedSite bit=0) AS BEGIN DECLARE @ItemValueTable TABLE (CustId nvarchar(255), GroupId nvarchar(255), RowNumber int) DECLARE @MaxRow int, @curRow INT, @curCustId VARCHAR(20), @curGroupId VARCHAR(20) INSERT INTO @ItemValueTable(CustId, GroupId, RowNumber) SELECT * FROM [dbo].[EAIF_GetItemValueTable_WithRowNumber](@CustIdList,@GroupIdList, ',') SELECT @MaxRow= MAX(RowNumber) FROM @ItemValueTable SELECT @CurRow = 1 --ProfNo, ProfId, ProfName, SiteId, MarketId, StMode, SiteUrl, PassingMode, ProfPwd, DefLangCode, DefView,InterfaceId,Verision,NewWin,SeqNo,IsMobile DECLARE @ProfileRet AS TABLE(ProfNo VARCHAR(50), ProfId VARCHAR(200), ProfName NVARCHAR(500),siteId NVARCHAR(50), MarketId NVARCHAR(50), StMode VARCHAR(5), SiteUrl NVARCHAR(1000), PassingMode VARCHAR(100), profPwd nvarchar(500), defLangCode NVARCHAR(10), DefView VARCHAR(100), interfaceId VARCHAR(100), version VARCHAR(10), Newwin BIT, seqNo VARCHAR(50), IsMobile BIT, MD5TokenSalt VARCHAR(250), hideInterface bit) --need to loop through the list of customer groups in the correct order and get the profiles --done in a loop because we dont have time to create a complex getProfiles method that would work with multiple cust/groups WHILE @CurRow <= @maxRow BEGIN SELECT @curCustId = CustId, @curGroupId = groupId FROM @ItemValueTable WHERE RowNumber = @CurRow INSERT INTO @ProfileRet EXEC [dbo].[AUTH_GetPersLinkProfileForDbGroup_910] @curCustId, @curGroupId, @UseSsl, @p_DbGroupCode, @InterfaceID, @IsMobileRequest, @IsGuestRequest, @ProfID, @OnlySpecifiedSite --if we found one then we are done IF @@ROWCOUNT >0 BEGIN SELECT p.*, @curCustId AS [CustId], @curGroupId AS [GroupId] FROM @ProfileRet p RETURN END SELECT @CurRow = @CurRow + 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceFeatureFieldsDisplayDetails_77](@InterfaceFeatureNo int,@FieldLevel char, @ItemNo int)AS BEGIN SELECT [dbo].[InterfaceFeatureFields].[FieldName], [dbo].[InterfaceFeatureFields].[FieldType], [dbo].[InterfaceFeatureFields].[EditControl], [dbo].[InterfaceFeatureFields].[ValueTemplate] FROM [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldLevel]=@FieldLevel AND [dbo].[InterfaceFeatureFields].[FieldType]='SM' UNION ALL SELECT [dbo].[InterfaceFeatureFields].[FieldName], [dbo].[InterfaceFeatureFields].[FieldType], [dbo].[InterfaceFeatureFields].[EditControl], [dbo].[InterfaceFeatureFields].[ValueTemplate] FROM [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldLevel]=@FieldLevel AND [dbo].[InterfaceFeatureFields].[FieldType]<>'SM' IF @FieldLevel='I' AND @ItemNo=0 SELECT '' AS FieldValueXml ELSE SELECT [dbo].[InterfaceFeatureValues].[FieldValueXml] FROM [dbo].[InterfaceFeatureValues] WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]=@ItemNo END
CREATE PROCEDURE [dbo].[EAIS_FinishCollection_70] ( @CustID varchar(10), @ColID nvarchar(10), @Options varchar(20) ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=[dbo].[Collection].[ColNo] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 IF @ColNo is NOT null BEGIN -- Parse the options IF CharIndex('r',@Options) > 0 -- Importing in Replace mode BEGIN -- Delete the titles marked earlier DELETE dbo.LocalDate WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[Status]='d' DELETE dbo.LocalTitle WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[Status]='d' END --EXEC EASUPPORT.dbo.EAIP_NotifyCustCollection_70 @CustID,@ColID UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() WHERE [dbo].[Collection].[ColNo]=@ColNo IF (@CustID != 'system') BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() WHERE [dbo].[Collection].[SharedFrom]=@ColNo --Shared AND [dbo].[Collection].[IsDeleted] = 0 END END END
CREATE PROCEDURE [dbo].[EPCAS_GetExpanders](@Profile int) AS BEGIN SELECT g.ControlName ,ISNULL(a.ControlShow,g.ControlShow) as ControlShow ,ISNULL(a.ControlDefault,g.ControlDefault) as ControlDefault ,ISNULL(ISNULL(c.Caption,b.DefCaption),'') as ControlCaption FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[ProfExpander] a ON g.ControlName = a.ControlName AND a.ProfNo=@Profile LEFT JOIN [dbo].[ProfExpanderCaption] c ON a.ProfNo = c.ProfNo AND a.ControlName = c.ControlName AND c.LangCode = 'en' JOIN [dbo].[GlobalExpanderCaption] b ON g.ControlName = b.ControlName AND b.LangCode='en' END
CREATE PROCEDURE [dbo].[EAUI_GetDbLabelClusterDetail_102] (@ID varchar(20), @DbLabel varchar(10), @LangCode varchar(10))AS BEGIN SELECT cl.ClustId ID, gc.XPath, gc.XPathEnh, gc.Notes, gc.Tag, cp.Caption, cl.AutoAdd2Db FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId INNER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID=cp.ID WHERE cl.ClustId=@ID AND cl.DbLabel = @DbLabel AND cp.LangCode=@LangCode END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerParamScalarValue_70]( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @ParamName varchar(100), @ParamValue nvarchar(4000)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Settings', @CustID, @ParamName EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, @ParamName, @ParamValue END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseFeatures_161](@FeatureCategory varchar(10), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN BEGIN TRY BEGIN TRANSACTION Delete dbf from [dbo].[DbFeature] dbf join [dbo].[FeatureList] fl on dbf.FeatureNo=fl.FeatureNo and fl.Category=@FeatureCategory join #TempDbListTable t on dbf.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbFeature] Select t.UpperDbVerNo AS DbVerNo, dbf.FeatureNo From [dbo].[DbFeature] dbf Join [dbo].[FeatureList] fl on dbf.FeatureNo=fl.FeatureNo and fl.Category=@FeatureCategory join #TempDbListTable t on dbf.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateDocType_77](@UserID nvarchar(20),@UserIP varchar(30),@DocTypeNo int, @Category char, @SearchString varchar(1500), @ParentID varchar(10), @Sort varchar(50), @SearchImage varchar(255), @Resultimage varchar(255), @DefValue bit, @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10))AS BEGIN DECLARE @ParentNo int IF @ParentID='' SET @ParentNo=null ELSE BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@ParentID) BEGIN RAISERROR ('Document Type ID "%s" passed as a Parent ID does not exist.',16,1, @ParentID) RETURN END ELSE SELECT @ParentNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@ParentID DECLARE @PCategory char SELECT @PCategory=[dbo].[DocTypeList].[Category] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeNo]=@ParentNo IF @PCategory<>'R' BEGIN RAISERROR ('Document Type ID "%s" passed as a Parent should have "Rolled Up" category.',16,1, @ParentID) RETURN END IF @Category<>'G' BEGIN RAISERROR ('Document Type with a Parent should have "Granular" category.',16,1, @ParentID) RETURN END END DECLARE @CurrentCategory char SELECT @CurrentCategory=[dbo].[DocTypeList].[Category] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeNo]=@DocTypeNo IF @CurrentCategory<>@Category BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[DocTypeNo]=@DocTypeNo) OR EXISTS (SELECT 1 FROM [dbo].[DbDocType] WHERE [dbo].[DbDocType].[DocTypeNo]=@DocTypeNo) BEGIN RAISERROR ('Category can not be changed for the Document Type already attached to the interface or the database.',16,1) RETURN END END BEGIN TRANSACTION DECLARE @CurrentParentNo int SELECT @CurrentParentNo=[dbo].[DocTypeList].[ParentDocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeNo]=@DocTypeNo IF ISNULL(@CurrentParentNo,0) <> ISNULL(@ParentNo,0) BEGIN IF @CurrentParentNo IS NOT NULL BEGIN /*remove parent doc type from the InterfaceDocType if the current doctype is the only child for the Interface*/ DELETE [dbo].[InterfaceDocType] FROM [dbo].[InterfaceDocType] idt INNER JOIN ( SELECT idt.InterfaceID,idt.Version FROM [dbo].[InterfaceDocType] idt INNER JOIN [dbo].[DocTypeList] dtl ON dtl.DocTypeNo = idt.DocTypeNo WHERE dtl.ParentDocTypeNo=@CurrentParentNo GROUP BY idt.InterfaceID, idt.Version HAVING count(*)=1 ) a ON idt.InterfaceID=a.InterfaceID and idt.Version=a.Version WHERE idt.DocTypeNo=@CurrentParentNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END IF @ParentNo IS NOT NULL AND NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[DocTypeNo]=@ParentNo) --set parent SeqNo to the value of child SeqNo INSERT INTO [dbo].[InterfaceDocType] ([idt].[InterfaceID],[idt].[Version],[idt].[DocTypeNo],[idt].[DefValue],[idt].[SeqNo]) SELECT idt.InterfaceID,idt.Version, @ParentNo,dtl.DefValue,idt.SeqNo FROM [dbo].[InterfaceDocType] idt INNER JOIN [dbo].[DocTypeList] dtl ON dtl.DocTypeNo=idt.DocTypeNo WHERE idt.DocTypeNo=@DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END IF @SearchString<>'' UPDATE [dbo].[DbDocType] SET [dbo].[DbDocType].[SearchString]=null WHERE [dbo].[DbDocType].[DocTypeNo]=@DocTypeNo AND [dbo].[DbDocType].[SearchString] is not null AND LOWER(REPLACE([dbo].[DbDocType].[SearchString],' ',''))=LOWER(REPLACE(@SearchString,' ','')) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[DocTypeList] SET [dbo].[DocTypeList].[SearchString]=@SearchString, [dbo].[DocTypeList].[SortOption]=@Sort, [dbo].[DocTypeList].[SearchImage]=@SearchImage, [dbo].[DocTypeList].[ResultImage]=@Resultimage, [dbo].[DocTypeList].[DefValue]=@DefValue, [dbo].[DocTypeList].[Category]=@Category, [dbo].[DocTypeList].[ParentDocTypeNo]=@ParentNo WHERE [dbo].[DocTypeList].[DocTypeNo] = @DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[DocTypeCaption] WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo AND [dbo].[DocTypeCaption].[LangCode]=@LangCode) UPDATE [dbo].[DocTypeCaption] SET [dbo].[DocTypeCaption].[Caption]=@Caption, [dbo].[DocTypeCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo AND [dbo].[DocTypeCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[DocTypeCaption] ([dbo].[DocTypeCaption].[DocTypeNo],[dbo].[DocTypeCaption].[LangCode],[dbo].[DocTypeCaption].[Caption],[dbo].[DocTypeCaption].[MouseOverText]) VALUES (@DocTypeNo, @LangCode,@caption,@MouseOverText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DocTypeID varchar(10) SELECT @DocTypeID=[dbo].[DocTypeList].[DocTypeID] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeNo]=@DocTypeNo DECLARE @Param1 varchar(1024) SET @Param1 = @DocTypeID+','+@Category+','+IsNULL(@ParentID,'')+','+@Sort+','+convert(char,@DefValue)+','+@SearchImage+','+@Resultimage EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Update DocType', @Param1 ,@SearchString,@Caption, @MouseOverText COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetProfCustGroupCaptions_86(@ProfNo int,@GroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @Captions = @Captions + N''+pgc.Caption +N' ' FROM [dbo].[ProfCustGroupCaption] pgc WHERE [pgc].[ProfNo]=@ProfNo AND [pgc].[GroupNo]=@GroupNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetContentTypeList_70] AS BEGIN SELECT cl.ContentType, cl.Description, cl.ImageFileName, cl.StartPageName, ISNULL(cc.LinkText,N'') AS LinkText FROM [dbo].[DbContentList] cl LEFT OUTER JOIN [dbo].[DbContentCaptions] cc ON cl.ContentType=cc.[ContentType] AND cc.LangCode = 'en' ORDER BY cl.ContentType END
CREATE PROCEDURE [dbo].[EAIP_AddModIndividualProfile_164] ( @CustID VARCHAR(10), @PrdOffID VARCHAR(20), @EndDate DATE, @Mode CHAR(1), @GroupID VARCHAR(10) ) AS ---------------------------------------------------------------------------------------- -- CustID is used for both CustID and SubscriberID -- Using the DefInterfaceID from ProductOffering do the following -- If no profile exists for this interface - create it -- Add to ProfDatabase the products from the product offering which are available on the default interface -- If a profile does exist for this interface -- Add to ProfDatabase the database products from the product offering which are available on the default interface and don't already exist -- Update AccessEndDate on ProfDatabase for the subscribed product offering's default interface which do exist -- Copy default values from CustomParamProductOfferingConfig to CustomParamScalarValues ---------------------------------------------------------------------------------------- BEGIN SET XACT_ABORT ON; SET NOCOUNT ON; DECLARE @InterfaceVersion VARCHAR(10); DECLARE @DefInterfaceID VARCHAR(10); DECLARE @PrdOffNo INT; DECLARE @ProfNo INT; DECLARE @AccessEndDate DATE = dbo.fn_GetEPAccessEndDate_90(@EndDate,0,NULL,NULL); DECLARE @MarketID VARCHAR(20) = (SELECT [dbo].[Customer].[MarketID] FROM dbo.Customer WITH(NOLOCK) WHERE [dbo].[Customer].[CustID] = @CustID); DECLARE @LangCode VARCHAR(10) = 'en'; DECLARE @ProfName NVARCHAR(510); DECLARE @ProfileSeqNo SMALLINT; DECLARE @ProfPwd NVARCHAR(10); DECLARE @MaxProfDatabaseSeqNo INT; -- Use values based on the product offering SELECT @PrdOffNo=[EASUPPORT].[dbo].[ProductOffering].[PrdOffNo], @DefInterfaceID=[EASUPPORT].[dbo].[ProductOffering].[DefInterfaceID], @InterfaceVersion=[EASUPPORT].[dbo].[ProductOffering].[Version] FROM EASUPPORT.dbo.ProductOffering WITH(NOLOCK) WHERE [EASUPPORT].[dbo].[ProductOffering].[PrdOffID] = @PrdOffID; -- Working table to hold the values which will be inserted or updated for the default profile CREATE TABLE #ProfDatabaseDefaultProfile( DbVerNo int NOT NULL, [Enable] bit NOT NULL, SelDefault bit NOT NULL, CustomLimiter bit NOT NULL, StartPage varchar(20) NOT NULL, AccessEndDate datetime NULL ); -- Profile related variables SET @ProfName = (SELECT [dbo].[InterfaceLanguage].[InterfaceName] FROM dbo.InterfaceLanguage WITH(NOLOCK) WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@DefInterfaceID AND [dbo].[InterfaceLanguage].[Version]=@InterfaceVersion AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode); SET @ProfNo = (SELECT [dbo].[Profile].[ProfNo] FROM dbo.[Profile] WITH(NOLOCK) WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@DefInterfaceID); IF @ProfNo IS NULL -- Need to create new profile BEGIN SET @ProfileSeqNo = (SELECT ISNULL(MAX([dbo].[Profile].[SeqNo]),0)+1 FROM dbo.[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID); SET @ProfPwd = 'ebs'+CONVERT(VARCHAR(10),ROUND(RAND()*10000,0)); END; -- this is for ordering the profile - choose the max so we can add to it - not a major problem if duplicates occur from concurrency SET @MaxProfDatabaseSeqNo = ISNULL((SELECT MAX([dbo].[ProfDatabase].[SeqNo]) FROM dbo.ProfDatabase WHERE [dbo].[ProfDatabase].[ProfNo] = @ProfNo),0); -- ============================================= -- profdatabase - default profile -- All database products available from the product package for the default interface on the product offering -- Note: for individual subscriptions Enable and SelDefault are set to true INSERT INTO #ProfDatabaseDefaultProfile (#ProfDatabaseDefaultProfile.[DbVerNo],#ProfDatabaseDefaultProfile.[Enable],#ProfDatabaseDefaultProfile.[SelDefault],#ProfDatabaseDefaultProfile.[CustomLimiter],#ProfDatabaseDefaultProfile.[StartPage],#ProfDatabaseDefaultProfile.[AccessEndDate]) SELECT d.DbVerNo, 1 AS [Enable], 1 AS SelDefault, 0 AS CustomLimiter, '' AS StartPage, @AccessEndDate FROM EASUPPORT.dbo.ProductOffering po WITH(NOLOCK) INNER JOIN EASUPPORT.dbo.ProductPackage pkg WITH(NOLOCK) ON po.PrdOffNo=pkg.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface pdi ON pkg.ProductID = pdi.ProductID AND po.[Version] = pdi.[Version] INNER JOIN EASUPPORT.dbo.Product p WITH(NOLOCK) ON pkg.ProductID = p.ProductID INNER JOIN dbo.DbList d WITH(NOLOCK) ON d.DbName = pkg.ProductID WHERE po.PrdOffNo = @PrdOffNo AND d.DbLabel = po.[Version] AND p.ProductType = 'D' -- Individual Subscription - databases only AND pdi.InterfaceID = @DefInterfaceID; BEGIN TRY BEGIN TRANSACTION; -- Add group if it doesn't exist (it normally should exist) EXEC dbo.EAIP_AddUserGroup_70 @CustID = @CustID, @GroupID = @GroupID, @GroupType = 'S', @GroupName = 'Main User Group', @GroupEmail = NULL; MERGE dbo.[Profile] tgt_p USING (SELECT @ProfNo AS ProfNo, @CustID AS CustID, @GroupID AS GroupID, @DefInterfaceID AS ProfID, @ProfPwd AS ProfPwd, @DefInterfaceID AS InterfaceID, @InterfaceVersion AS [Version], @MarketID AS MarketID, @Mode AS STMode, @InterfaceVersion AS DbLabel, COALESCE(@ProfName,'') AS ProfName, @LangCode AS DefLangCode, @ProfileSeqNo AS SeqNo) src_p ON tgt_p.ProfNo = src_p.ProfNo WHEN MATCHED THEN UPDATE SET [tgt_p].[STMode] = @Mode WHEN NOT MATCHED BY TARGET THEN INSERT ([CustID],[GroupID],[ProfID],[ProfPwd],[InterfaceID],[Version],[MarketID],[STMode],[DbLabel],[ProfName],[DefLangCode],[SeqNo]) VALUES (CustID,GroupID,ProfID,ProfPwd,InterfaceID,[Version],MarketID,STMode,DbLabel,[src_p].[ProfName],DefLangCode,SeqNo); -- the source for the merge is a single record - thus there can be only one inserted value IF @ProfNo IS NULL BEGIN SET @ProfNo = SCOPE_IDENTITY(); END; MERGE dbo.ProfDatabase tgt_pd USING (SELECT @ProfNo AS ProfNo, #ProfDatabaseDefaultProfile.[DbVerNo], ROW_NUMBER() OVER(ORDER BY #ProfDatabaseDefaultProfile.[DbVerNo]) + @MaxProfDatabaseSeqNo AS SeqNo, #ProfDatabaseDefaultProfile.[Enable], #ProfDatabaseDefaultProfile.[SelDefault], #ProfDatabaseDefaultProfile.[CustomLimiter], #ProfDatabaseDefaultProfile.[StartPage], @Mode AS Mode, #ProfDatabaseDefaultProfile.[AccessEndDate] FROM #ProfDatabaseDefaultProfile) src_pd ON tgt_pd.ProfNo = src_pd.ProfNo AND tgt_pd.DbVerNo = src_pd.DbVerNo WHEN MATCHED THEN UPDATE SET tgt_pd.AccessEndDate = src_pd.AccessEndDate, tgt_pd.Mode = src_pd.Mode WHEN NOT MATCHED BY TARGET THEN INSERT ([ProfNo], [DbVerNo], [SeqNo], [Enable], [SelDefault], [CustomLimiter], [StartPage], [Mode], [AccessEndDate]) VALUES (ProfNo, [src_pd].[DbVerNo], [src_pd].[SeqNo], [src_pd].[Enable], [src_pd].[SelDefault], [src_pd].[CustomLimiter], [src_pd].[StartPage], Mode, [src_pd].[AccessEndDate]); -- Product Offering default values -- SS - as of Sept. 2016 - this applies to dynamed plus specifically to enable or disable CME settings please see user story: US165686 MERGE dbo.CustomParamScalarValues tgt_sv USING (SELECT @ProfNo AS TargetNo, c.ParamNo, c.ParamLevel, c.CustomParamValue, c.UseCustomParamValue FROM dbo.CustomParamProductOfferingConfig c WHERE c.ParamLevel = 'P' AND c.PrdOffID = @PrdOffID ) src ON tgt_sv.TargetNo = src.TargetNo AND tgt_sv.ParamNo = src.ParamNo AND tgt_sv.ParamLevel = src.ParamLevel WHEN MATCHED AND [src].[UseCustomParamValue] = 1 THEN UPDATE SET tgt_sv.ParamValue = src.CustomParamValue WHEN MATCHED AND [src].[UseCustomParamValue] = 0 THEN DELETE WHEN NOT MATCHED BY TARGET AND [src].[UseCustomParamValue] = 1 THEN INSERT ([TargetNo],[ParamLevel],[ParamNo],[ParamValue]) VALUES (TargetNo,[src].[ParamLevel],[src].[ParamNo],[src].[CustomParamValue]); COMMIT TRANSACTION; END TRY BEGIN CATCH IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION; DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE(); DECLARE @ErrorSeverity INT = ERROR_SEVERITY(); DECLARE @ErrorState INT = ERROR_STATE(); RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END;
CREATE PROCEDURE dbo.EAIP_GetDbBrowseOptionCaptions_76(@DbVerNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ SELECT BOL.BrowseOptionId , DBOC.LangCode , DBOC.OptionCaption , DBOC.ResultCaption , DBOC.Description FROM dbo.BrowseOptionList AS BOL INNER JOIN dbo.DbBrowseOptionCaption AS DBOC ON DBOC.BrowseOptionNo = BOL.BrowseOptionNo WHERE DBOC.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetZ3950Vendors_70] AS BEGIN SELECT [dbo].[Z3950Vendors].[VendorID], [dbo].[Z3950Vendors].[VendorName], [dbo].[Z3950Vendors].[CallType], [dbo].[Z3950Vendors].[SearchMask] FROM [dbo].[Z3950Vendors] END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbGroup(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS GroupNo, [dbo].[GroupList].[GroupID] AS GroupID FROM [dbo].[DbGroup] LEFT JOIN [dbo].[GroupList] ON [dbo].[GroupList].[GroupNo] = [dbo].[DbGroup].[GroupNo] WHERE [dbo].[DbGroup].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, GroupNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCollection_70] ( @UserID NVARCHAR(20) ,@UserIP VARCHAR(15) ,@ColNo INT ) AS BEGIN DECLARE @LogColName NVARCHAR(61) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo) DECLARE @CustId VARCHAR(10) SET @CustId = SUBSTRING(@LogColName, 1, CHARINDEX('.', @LogColName) - 1) BEGIN TRY BEGIN TRANSACTION; EXEC [dbo].[EAIP_DeleteCollection_70] @ColNo COMMIT TRANSACTION; END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(MAX) ,@ErrorSeverity INT ,@ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE() + ' Line ' + CAST(ERROR_LINE() AS NVARCHAR(5)) ,@ErrorSeverity = ERROR_SEVERITY() ,@ErrorState = ERROR_STATE(); ROLLBACK TRANSACTION; RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Delete Local Collection', @CustId, @LogColName END
Create Procedure [dbo].[Util_RollbackAddContentFilterToCustIDList](@ContentFilterListID varchar(25), @DateStamp varchar(10)) As Begin Declare @ContentFilterListNo int Declare @sql varchar(max) Declare @CustBackupTableName varchar(max) Declare @ProfBackupTableName varchar(max) select @ContentFilterListNo=[dbo].[ContentFilterList].[ContentFilterNo] from [dbo].[ContentFilterList] where [dbo].[ContentFilterList].[ContentFilterListID]=@ContentFilterListID set @CustBackupTableName='Back.CustContentFilters_' + @ContentFilterListID + '_' + @DateStamp set @ProfBackupTableName='Back.ProfContentFilters_' + @ContentFilterListID + '_' + @DateStamp set @sql='IF OBJECT_ID(' + char(39) + @CustBackupTableName + char(39) + ') IS NULL PRINT ' + char(39) + 'Update script has not been run.' + char(39) + '; ELSE BEGIN Delete dbo.CustContentFilters from dbo.CustContentFilters ccf left outer join ' + @CustBackupTableName + ' b on ccf.CustContentFilterNo=b.CustContentFilterNo where ccf.ContentFilterNo=' + convert(varchar(6), @ContentFilterListNo) + 'and b.CustContentFilterNo is null PRINT ' + char(39) + 'Rollback completed successfully.' + char(39) + ' END' exec (@sql) set @sql='IF OBJECT_ID(' + char(39) + @ProfBackupTableName + char(39) + ') IS NULL PRINT ' + char(39) + 'Update script has not been run.' + char(39) + '; ELSE BEGIN Delete dbo.ProfContentFilters from dbo.ProfContentFilters pcf left outer join ' + @ProfBackupTableName + ' b on pcf.ProfNo=b.ProfNo AND pcf.IntfScreenNo=b.IntfScreenNo AND pcf.CustContentFilterNo=b.CustContentFilterNo where b.ProfNo is null PRINT ' + char(39) + 'Rollback completed successfully.' + char(39) + ' END' exec (@sql) End
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceKnownSearchItem_103](@InterfaceID varchar(10), @Version varchar(10), @SearchString nvarchar(255), @IsSelected bit, @SeqNo int, @LabelLangList nvarchar(max), @GhostTextLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN INSERT INTO [dbo].[InterfaceKnownSearchItems]([dbo].[InterfaceKnownSearchItems].[InterfaceID], [dbo].[InterfaceKnownSearchItems].[Version], [dbo].[InterfaceKnownSearchItems].[SearchString], [dbo].[InterfaceKnownSearchItems].[IsSelected], [dbo].[InterfaceKnownSearchItems].[SeqNo]) VALUES (@InterfaceID, @Version, @SearchString, @IsSelected, @SeqNo) IF @@ERROR <> 0 RETURN DECLARE @newKnownSearchItemNo AS INT SET @newKnownSearchItemNo = scope_identity() -- parse the label/lang code and ghost text/lang code lists -- variables to store the individual lists DECLARE @LabelList nvarchar(max) DECLARE @LabelLanguages varchar(max) DECLARE @GhostTextList nvarchar(max) DECLARE @GhostTextLanguages varchar(max) -- the delimiters -- note that the language delimiter cannot match the value delimiter in case there is an empty value DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim nchar(3) SET @LangDelim =N'^^^' SET @LabelList =SUBSTRING(@LabelLangList, 1, CHARINDEX(@LangDelim,@LabelLangList)-1) SET @LabelLanguages=convert(varchar(max), SUBSTRING(@LabelLangList, CHARINDEX(@LangDelim,@LabelLangList)+3, LEN(@LabelLangList))) SET @GhostTextList =SUBSTRING(@GhostTextLangList, 1, CHARINDEX(@LangDelim,@GhostTextLangList)-1) SET @GhostTextLanguages=convert(varchar(max), SUBSTRING(@GhostTextLangList, CHARINDEX(@LangDelim,@GhostTextLangList)+3, LEN(@GhostTextLangList))) INSERT INTO [dbo].[InterfaceKnownSearchItemCaption]([dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo], [dbo].[InterfaceKnownSearchItemCaption].[LangCode], [dbo].[InterfaceKnownSearchItemCaption].[Label], [dbo].[InterfaceKnownSearchItemCaption].[GhostText]) SELECT @newKnownSearchItemNo, labels.Value as LangCode, labels.Item as Label, gt.Item as GhostText FROM dbo.EAIF_GetItemValueTable_70( @LabelList,@LabelLanguages,@ValDelim ) labels JOIN dbo.EAIF_GetItemValueTable_70(@GhostTextList, @GhostTextLanguages, @ValDelim) gt ON labels.Value = gt.Value IF @@ERROR <> 0 RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetProfCatalogHoldingTblCaptions_104] (@ProfNo int, @DbVerNo int, @LangCode varchar(10)) AS BEGIN Select c.Caption,c.CaptionID,c.IsDefaultValue from ( SELECT ISNULL (pcc.Caption,ISNULL(gc.Caption,'')) AS Caption,gc.CaptionID, case when pcc.Caption is null then 'true' else 'false' end as IsDefaultValue,svm.SeqNo FROM [dbo].[GlobalCatalogHoldingTblCaptions] gc INNER JOIN [dbo].[StringValueMap] svm on (svm.FieldName='CatalogHoldingTblCaptions' and svm.FieldCode=gc.CaptionID) LEFT OUTER JOIN [dbo].[ProfCatalogHoldingTblCaptions] pcc on (pcc.ProfNo=@ProfNo and pcc.DbVerNo=@DbVerNo and pcc.LangCode=@LangCode and pcc.CaptionID=gc.CaptionID) WHERE gc.LangCode = @LangCode UNION ALL /* Some captions do not have default captions yet. However, libAdmin can customize these captions*/ Select pcc.Caption, pcc.CaptionID, 'false' as IsDefaultValue, svm.SeqNo from [dbo].[ProfCatalogHoldingTblCaptions] pcc INNER JOIN [dbo].[StringValueMap] svm on (svm.FieldName='CatalogHoldingTblCaptions' and svm.FieldCode=pcc.CaptionID) Left outer join [dbo].[GlobalCatalogHoldingTblCaptions] gc on (gc.CaptionID = pcc.CaptionID and gc.LangCode = pcc.LangCode) Where pcc.ProfNo=@ProfNo and pcc.DbVerNo=@DbVerNo and pcc.LangCode=@LangCode and gc.CaptionID is null ) c order by c.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AddCollection_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ColID nvarchar(50), @ColName nvarchar(50), @Exclude bit=0, @Notes nvarchar(255)=null, @AddAlternates bit=1) AS BEGIN DECLARE @NewColNo int, @SharedFrom int DECLARE @LogColName varchar(30) SELECT @LogColName = @CustID+'.'+@ColID SET @SharedFrom=0 EXEC [dbo].[EAIPO_AddCollection_70] @CustID, @ColID, @ColName, @Exclude, @Notes, @SharedFrom, @AddAlternates, @ColNo=@NewColNo OUTPUT EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Add Local Collection', @CustID, @LogColName END
CREATE Procedure [dbo].[EPCS_GetMultiDbAuthorities_90]( @InterfaceID varchar(10), @Version varchar(10))AS BEGIN SET NOCOUNT ON; SELECT imdbal.MultiDbAuthID, isnull(mdbaic.LangCode, mdbac.LangCode) LangCode, isnull(mdbaic.LinkText, mdbac.LinkText) LinkText, isnull(mdbaic.MouseOverText, mdbac.MouseOverText) MouseOverText, [imdbal].[SeqNo] FROM [dbo].[InterfaceMultiDbAuthList] imdbal LEFT JOIN [dbo].[MultiDbAuthCaption] mdbac ON imdbal.MultiDbAuthID = mdbac.MultiDbAuthID LEFT JOIN [dbo].[MultiDbAuthInterfaceCaption] mdbaic ON imdbal.MultiDbAuthID = mdbaic.MultiDbAuthId AND imdbal.InterfaceID = mdbaic.InterfaceID AND imdbal.Version = mdbaic.Version AND mdbac.LangCode = mdbaic.LangCode WHERE imdbal.InterfaceID = @InterfaceID AND imdbal.Version = @Version AND Not (mdbaic.LangCode Is Null AND mdbac.LangCode Is Null) ORDER BY imdbal.SeqNo, imdbal.MultiDbAuthID END
--sql content merged from file: \StoredProcedures\Auth_GetPersLinkProfileForDbGroupSsl_94.sql CREATE procedure [dbo].[AUTH_GetPersLinkProfileForDbGroupSsl_94] ( @p_CustID varchar(10), @p_GroupID varchar(10), @p_DbGroupCode varchar(255), @p_InterfaceID varchar(25)='', @IsMobileRequest bit=0 ) as begin set nocount on declare @InterfaceID varchar(10), @Version varchar(10) if charindex('-', @p_InterfaceID) >0 begin set @InterfaceID = substring(@p_InterfaceID, 1, charindex('-',@p_InterfaceID) - 1) set @Version = substring(@p_InterfaceID, charindex( '-',@p_InterfaceID )+1, len(@p_InterfaceID)) end else begin set @InterfaceID = '' set @Version = 'live' end DECLARE @PersLinkParamNo int SELECT @PersLinkParamNo =[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='persistentLinkProfile' AND [dbo].[CustomParamList].[ParamLevel]='P' declare @DbGroupCode table(DbGroupCode varchar(12), DefGrNo int) insert into @DbGroupCode select t.Item, g.GroupNo from dbo.EAIF_GetItemTable_70(@p_DbGroupCode,',')t left outer join [dbo].[GroupList] g ON t.Item=g.GroupID DECLARE @Prof table (ProfNo int, ProfID varchar(10), ProfPwd nvarchar(50), SiteURL varchar(255), InterfaceID varchar(10), ssl bit, Priority smallint) DECLARE @HttpsParamNo int SELECT @HttpsParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='useHttpsAuthentication' AND [dbo].[CustomParamList].[ParamLevel]='P' DECLARE @GroupDbsParamNo int SELECT @GroupDbsParamNo =[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='groupDbsBySubject' AND [dbo].[CustomParamList].[ParamLevel]='P' DECLARE @ProfSsl table (ProfNo int, ssl bit) insert into @ProfSsl select p.ProfNo, 1 from [dbo].[Profile] p INNER JOIN [dbo].[CustomParamScalarValues] val ON p.ProfNo=val.TargetNo where p.CustID=@p_CustID AND p.GroupID=@p_GroupID and val.ParamLevel='P' and val.ParamNo= @HttpsParamNo AND val.ParamValue='1' IF EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is null) BEGIN --custom define group insert into @Prof (ProfNo, ProfID, ProfPwd, SiteURL, InterfaceID, ssl) SELECT top 1 p.ProfNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL, p.InterfaceID, ISNULL(ssl.ssl, 0) FROM [dbo].[Profile] p LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON p.ProfNo=val.TargetNo and val.ParamLevel='P' and val.ParamNo= @PersLinkParamNo --AND val.paramValue='1' LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val2 ON p.ProfNo=val2.TargetNo and val2.ParamLevel='P' and val2.ParamNo= @GroupDbsParamNo LEFT OUTER JOIN @ProfSsl ssl ON p.ProfNo=ssl.ProfNo INNER JOIN [dbo].[ProfCustGroupList] AS g ON p.ProfNo = g.ProfNo INNER JOIN @DbGroupCode AS t ON g.GroupNo = t.DbGroupCode INNER JOIN [dbo].[ProfDatabase] AS pdb ON g.ProfNo=pdb.ProfNo INNER JOIN [dbo].[ProfCustGroupDb] AS pgdb ON g.ProfNo=pgdb.ProfNo AND pgdb.DbVerNo= pdb.DbVerNo INNER JOIN [dbo].[CustomParamDefaults] AS d ON d.InterfaceID=p.InterfaceID AND d.Version=p.Version AND d.MarketID=p.MarketID AND d.STMode=p.STMode INNER JOIN [dbo].[CustomParamDefaults] AS d2 ON d2.InterfaceID=p.InterfaceID and d2.Version=p.Version and d2.MarketID=p.MarketID and d2.STMode=p.STMode INNER JOIN [dbo].[InterfaceVersion] AS iv ON iv.InterfaceID=p.InterfaceID AND iv.Version=p.Version WHERE p.CustID=@p_CustID AND p.GroupID=@p_GroupID AND g.Show=1 AND t.DefGrNo is null AND (pdb.Mode is null OR pdb.Mode ='S' or pdb.Mode='I' ) AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND d.ParamNo=@PersLinkParamNo AND (val.ParamValue =N'1' or(val.ParamValue is null and d.DefValue=N'1')) AND d2.ParamNo=@GroupDbsParamNo AND (val2.ParamValue =N'1' or(val2.ParamValue is null and d2.DefValue=N'1')) AND (@InterfaceID = '' or (p.InterfaceID = @InterfaceID and p.Version = @Version)) ORDER BY ISNULL(ssl.ssl, 0) desc, CASE when @IsMobileRequest=0 Then Case WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=0 THEN 5 WHEN iv.IsMobile=1 THEN 6 ELSE 7 END else case WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=1 THEN 5 WHEN iv.IsMobile=0 THEN 6 ELSE 7 END end, p.SeqNo asc END IF EXISTS (SELECT 1 FROM @DbGroupCode WHERE DefGrNo is not null) AND NOT EXISTS (SELECT 1 FROM @Prof) BEGIN DECLARE @DefGroupParamNo int SELECT @DefGroupParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='showDefaultEPDatabaseGroup' AND [dbo].[CustomParamList].[ParamLevel]='P' insert into @Prof select top 1 a.ProfNo,a.ProfID, a.ProfPwd, a.PersistentLinkURL, a.InterfaceID, ISNULL(a.ssl, 0), a.Priority from ( select p.ProfNo, gl.GroupNo, p.ProfID, p.ProfPwd, iv.PersistentLinkURL, p.InterfaceID, ISNULL(ssl.ssl, 0) AS ssl, p.SeqNo, CASE when @IsMobileRequest=0 Then Case WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=0 THEN 5 WHEN iv.IsMobile=1 THEN 6 ELSE 7 END else case WHEN iv.IsMobile=1 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 1 WHEN iv.IsMobile=1 and iv.SiteID=@InterfaceID THEN 2 WHEN iv.IsMobile=0 and p.InterfaceID=@InterfaceID AND p.Version=@Version THEN 3 WHEN iv.IsMobile=0 and iv.SiteID=@InterfaceID THEN 4 WHEN iv.IsMobile=1 THEN 5 WHEN iv.IsMobile=0 THEN 6 ELSE 7 END end as Priority from [dbo].[Profile] p LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON p.ProfNo=val.TargetNo and val.ParamLevel='P' and val.ParamNo= @PersLinkParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val2 ON p.ProfNo=val2.TargetNo and val2.ParamLevel='P' and val2.ParamNo= @DefGroupParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val3 ON p.ProfNo=val3.TargetNo and val3.ParamLevel='P' and val3.ParamNo= @GroupDbsParamNo LEFT OUTER JOIN @ProfSsl ssl ON p.ProfNo=ssl.ProfNo INNER JOIN [dbo].[ProfDatabase] AS pdb ON p.ProfNo=pdb.ProfNo INNER JOIN [dbo].[DbGroup] AS gdb ON pdb.DbVerNo =gdb.DbVerNo INNER JOIN [dbo].[GroupList] AS gl ON gl.GroupNo = gdb.GroupNo INNER JOIN @DbGroupCode AS t ON gl.GroupNo=t.DefGrNo INNER JOIN [dbo].[CustomParamDefaults] AS d ON d.InterfaceID=p.InterfaceID and d.Version=p.Version and d.MarketID=p.MarketID and d.STMode=p.STMode INNER JOIN [dbo].[CustomParamDefaults] AS d2 ON d2.InterfaceID=p.InterfaceID and d2.Version=p.Version and d2.MarketID=p.MarketID and d2.STMode=p.STMode INNER JOIN [dbo].[CustomParamDefaults] AS d3 ON d3.InterfaceID=p.InterfaceID and d3.Version=p.Version and d3.MarketID=p.MarketID and d3.STMode=p.STMode INNER JOIN [dbo].[InterfaceVersion] AS iv ON iv.InterfaceID=p.InterfaceID and iv.Version=p.Version WHERE p.CustID=@p_CustID AND p.GroupID=@p_GroupID AND (pdb.Mode is null OR pdb.Mode='S' OR pdb.Mode='I') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND d.ParamNo=@PersLinkParamNo AND (val.ParamValue =N'1' or(val.ParamValue is null and d.DefValue=N'1')) AND d2.ParamNo=@DefGroupParamNo AND (val2.ParamValue =N'1' or(val2.ParamValue is null and d2.DefValue=N'1')) AND d3.ParamNo=@GroupDbsParamNo AND (val3.ParamValue =N'1' or(val3.ParamValue is null and d3.DefValue=N'1')) AND (@InterfaceID = '' or (p.InterfaceID = @InterfaceID and p.Version = @Version) or iv.SiteID = @InterfaceID) ) a LEFT OUTER JOIN ( select pgl.ProfNo, pgl.GroupNo, pgl.Show from [dbo].[ProfGroupList] pgl INNER JOIN @DbGroupCode t2 ON pgl.GroupNo=t2.DefGrNo ) b ON a.ProfNo=b.ProfNo and a.GroupNo =b.GroupNo WHERE b.Show is null OR b.Show=1 ORDER BY ISNULL(a.ssl, 0) desc, a.Priority, a.SeqNo asc END SELECT ProfNo, ProfID, ProfPwd, dbo.EAIF_MakeUrlSecure_86( dbo.EAIF_ConvertSiteURLToEhIS_97(ProfNo,SiteURL, null,1) , convert(varchar, ssl)) AS SiteURL, InterfaceID, ssl FROM @Prof end
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceFeatureList_77] (@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT ifl.InterfaceFeatureNo, ifl.FeatureName, ISNULL(ints.Description,N'') AS Screen, svm.Description AS Type, ISNULL(ifv.FieldValueXml,N'') AS FieldValueXml FROM [dbo].[InterfaceFeatureList] ifl LEFT OUTER JOIN [dbo].[InterfaceScreen] ints ON ints.InterfaceID=@InterfaceID AND ints.Version= @Version AND ints.ScreenID = ifl.ScreenID LEFT OUTER JOIN [dbo].[InterfaceFeatureValues] ifv ON ifl.InterfaceID=@InterfaceID AND ifl.Version= @Version AND ifl.InterfaceFeatureNo=ifv.InterfaceFeatureNo AND ifv.ItemNo=0 INNER JOIN [dbo].[StringValueMap] svm ON ifl.FeatureType= svm.FieldCode WHERE ifl.InterfaceID=@InterfaceID AND ifl.Version= @Version AND svm.FieldName='FeatureType' ORDER BY ifl.FeatureName END
CREATE PROCEDURE [dbo].[EAIS_GetAllSearchThemes_84] AS BEGIN SET NOCOUNT ON SELECT st.ThemeID, ISNULL(stc.Caption, N'') AS Caption, ISNULL(stc.Description,N'') AS Description, SearchString = CASE WHEN Len(ISNULL(i.SearchString, '')) > 0 THEN i.SearchString WHEN Len(ISNULL(i.SearchString, '')) = 0 THEN ISNULL(st.SearchString, '') ELSE '' END, ISNULL(st.ParentThemeID, '') ParentThemeID, Image = CASE WHEN Len(ISNULL(i.Image, '')) > 0 THEN i.Image WHEN Len(ISNULL(i.Image, '')) = 0 THEN ISNULL(st.Image, '') ELSE '' END, ISNULL(stc.ImageAltText,N'') AS ImageAltText, CustomAttributes = CASE WHEN i.CustomAttributes IS NOT NULL THEN i.CustomAttributes WHEN i.CustomAttributes IS NULL THEN ISNULL(st.CustomAttributes, '') ELSE '' END, (CASE WHEN ISNULL(i.Show,1)=1 THEN 'Y' ELSE 'N' END) AS Show, ISNULL(i.InterfaceID,'') as Interface, ISNULL(i.Version,'') as InterfaceVersion FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[SearchThemeCaption] stc WITH (NOLOCK) ON st.ThemeID=stc.ThemeID AND stc.LangCode='en' LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) ON st.ThemeID=i.ThemeID ORDER BY st.ThemeID END
CREATE PROCEDURE [dbo].[EPCAS_GetFamilyMembers]( @DSFamilyName varchar(10) ) AS BEGIN IF EXISTS(SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DSFamilyName) BEGIN SELECT DISTINCT [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DSFamilyName END ELSE BEGIN SELECT DISTINCT [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DSFamilyName]=@DSFamilyName AND [dbo].[DbList].[DbType] IN (1,3,4,6,8) ORDER BY [dbo].[DbList].[DbName] END END
CREATE PROCEDURE [dbo].[EAUI_GetDbLabelClusters_102] (@DbLabel VARCHAR(10)) AS BEGIN SELECT cl.ClustId ID, CASE WHEN gc.Show=1 THEN 'On' ELSE 'Off'END AS Show, gc.Tag, gc.MinDisplay, gc.MaxDisplay, cp.Caption, cl.SeqNo, CASE WHEN cl.AutoAdd2Db=1 THEN 'On' ELSE 'Off' END AS AutoAdd2Db, gc.Notes FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId INNER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID = cp.ID WHERE cp.LangCode='en' AND cl.DbLabel = @DbLabel ORDER BY cl.SeqNo END
Create PROCEDURE [dbo].[EAUI_UpdateCustomerParamXmlValue_134]( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @ParamName varchar(100), @ItemName varchar(255), @ParamValue nvarchar(max)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Settings', @CustID, @ParamName EXEC [dbo].[EAIP_UpdateCustomerParamXmlValue_70] @CustID, @ParamName, @ItemName, @ParamValue END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseFeatures_96](@FeatureCategory varchar(10), @OldDbVerNo int, @NewDbVerNo int) AS BEGIN BEGIN TRY BEGIN TRANSACTION --Delete Features that are in the target but not in the source DELETE dbf FROM [dbo].[FeatureList] fl JOIN [dbo].[FeatureList] fl2 ON fl.FeatureNo=fl2.FeatureNo JOIN [dbo].[DbFeature] dbf ON dbf.FeatureNo = fl.FeatureNo LEFT OUTER JOIN [dbo].[DbFeature] dbf2 ON dbf.FeatureNo=dbf2.FeatureNo AND dbf2.DbVerNo=@OldDbVerNo WHERE dbf.DbVerNo=@NewDbVerNo AND fl.Category=@FeatureCategory AND dbf2.DbVerNo IS NULL --Insert Features that are in the sourse db but not in the target db INSERT INTO [dbo].[DbFeature]([dbf2].[DbVerNo], [dbf2].[FeatureNo]) SELECT @NewDbVerNo, dbf.FeatureNo FROM [dbo].[FeatureList] fl JOIN [dbo].[FeatureList] fl2 ON fl.FeatureNo=fl2.FeatureNo JOIN [dbo].[DbFeature] dbf ON dbf.FeatureNo = fl.FeatureNo LEFT OUTER JOIN [dbo].[DbFeature] dbf2 ON dbf.FeatureNo=dbf2.FeatureNo AND dbf2.DbVerNo=@NewDbVerNo WHERE dbf.DbVerNo=@OldDbVerNo AND fl.Category=@FeatureCategory AND dbf2.DbVerNo IS NULL COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateExpanderCaption_70] ( @UserId nvarchar(20), @UserIp varchar(15), @ControlName varchar(50), @LangCode varchar(10), @DefCaption nvarchar(100) ) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Expander','Update Expander', @ControlName, @LangCode EXEC [dbo].[EAIP_UpdateExpanderCaption_70] @ControlName, @LangCode, @DefCaption END
CREATE FUNCTION [dbo].[EAIF_GetProfCustGroupDbInfo_102](@ProfNo int,@GroupNo int,@SourcetypeTobeIgnored char(1)='') RETURNS varchar(max) AS BEGIN DECLARE @Databases varchar(max) SET @Databases='' SELECT @Databases = @Databases + ' ' END' 'externalSrcId="' + (CASE WHEN cedl.ConnectorProvider = 'M' THEN ISNULL(dblesm.ExternalDbID,'') WHEN cedl.ConnectorProvider = 'I' THEN ISNULL(dblesi.ExternalDbID,'') ELSE '' END ) + '" />' FROM [dbo].[ProfCustGroupDb] pgdb JOIN [dbo].[DbList] db ON (db.DbVerNo = pgdb.DbVerNo) JOIN [dbo].[ProfDatabase] pdb ON (pdb.ProfNo=pgdb.ProfNo and pdb.DbVerNo=pgdb.DbVerNo) JOIN [dbo].[Profile] p ON p.ProfNo= pdb.ProfNo JOIN [dbo].[Customer] c ON c.CustID = p.CustID LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON (cedl.CustNo = c.CustNo AND cedl.DbVerNo = db.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSource] dex ON (db.DbVerNo = dex.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] dblesi ON (dblesi.DbVerNo = dex.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] dblesm ON (dblesm.DbVerNo = dex.DbVerNo) WHERE pgdb.ProfNo = @ProfNo AND pgdb.GroupNo= @GroupNo AND db.DbVerNo=pgdb.DbVerNo AND pdb.Enable=1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND db.SourceType <> @SourcetypeTobeIgnored order by pgdb.SeqNo RETURN @Databases + '
CREATE PROCEDURE [dbo].[EAUI_GetCopyRequestId_193](@SessionId varchar(100))AS BEGIN Select Top 1 ID From CopyRequest Where SessionId=@SessionId and RequestStatus='I' order by ID desc END
CREATE PROCEDURE [dbo].[EAIP_AddOrUpdateAZDate_97] ( @ColNo int, @isUpdate bit, @itemCount int, @titlenoList varchar(8000), @fromdateList varchar(8000), @todateList varchar(8000) ) AS BEGIN SET NOCOUNT ON DECLARE @TitleNo int, @FromDate int, @ToDate int, @idx int, @x1 int, @x2 int, @x3 int, @y1 int, @y2 int, @y3 int set @x1=1 set @x2=1 set @x3=1 set @idx=1 WHILE (@idx <= @itemCount) BEGIN set @y1=charindex(',', @titlenoList, @x1) -- all strings always have a trailing comma set @y2=charindex(',', @fromdateList, @x2) set @y3=charindex(',', @todateList, @x3) set @TitleNo = case when @y1=@x1 then null else cast(substring(@titlenoList,@x1,@y1-@x1) as int) end set @FromDate = case when @y2=@x2 then null else cast(substring(@fromdateList,@x2,@y2-@x2) as int) end set @ToDate = case when @y3=@x3 then null else cast(substring(@todateList,@x3,@y3-@x3) as int) end BEGIN TRY if (@isUpdate=1) UPDATE [dbo].[LocalDate] SET [dbo].[LocalDate].[ToDate]=@todate WHERE [dbo].[LocalDate].[ColNo]=@ColNo and [dbo].[LocalDate].[TitleNo]=@titleno and [dbo].[LocalDate].[FromDate]=@fromdate else INSERT INTO [dbo].[LocalDate]([dbo].[LocalDate].[ColNo],[dbo].[LocalDate].[TitleNo],[dbo].[LocalDate].[FromDate],[dbo].[LocalDate].[ToDate],[dbo].[LocalDate].[Status]) VALUES(@ColNo,@TitleNo,@FromDate,@ToDate,'a') END TRY BEGIN CATCH if (ERROR_NUMBER()<>2627) -- primary key violation. allow these since they can occur in a race condition exec [dbo].[EAIP_RethrowAZError_97] END CATCH set @x1=@y1+1 set @x2=@y2+1 set @x3=@y3+1 set @idx = @idx + 1 END RETURN END
CREATE PROCEDURE dbo.EAIP_GetDbBrowseOptions_76(@DbVerNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ SELECT BOL.BrowseOptionId , DBO.OptionType , DBO.SearchString , DBO.TargetDb , DBO.SourceType , DBO.TabImage , DBO.AuthoritySubset , DBO.AuthorityView , DBO.IsHeading FROM dbo.DbBrowseOption AS DBO INNER JOIN dbo.BrowseOptionList AS BOL ON DBO.BrowseOptionNo = BOL.BrowseOptionNo WHERE DBO.DbVerNo = @DbVerNo END
--sql content merged from file: \StoredProcedures\EAUI_handleProxyReferences_99.sql CREATE Procedure [dbo].[EAUI_handleProxyReferences_99](@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @NewValue varchar(2000), @OldValue varchar(2000)) as Begin if @OldValue<>@NewValue Begin declare @guestAccessProxyParamNo int declare @guestAccessProxyParamValue nvarchar(50) Declare @PrimaryParamNo int Declare @SecondaryParamNo INT DECLARE @guestAccessAuthTypeParamNo INT Select @PrimaryParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkPrimaryProxy' Select @SecondaryParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='durableLinkSecondaryProxy' select @guestAccessProxyParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='guestAccessProxy' select @guestAccessProxyParamValue=[dbo].[CustomParamScalarValues].[ParamValue] from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo]=@guestAccessProxyParamNo and [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' select @guestAccessAuthTypeParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='guestAccessAuthType' if @guestAccessProxyParamValue is not null and (not exists (select 1 from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo] in (@PrimaryParamNo, @SecondaryParamNo) and [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' and [dbo].[CustomParamScalarValues].[ParamValue]=@guestAccessProxyParamValue)) Begin DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) -- Temporary logic for Release 14.4 EhpmEbscoAdmin-2214. If guestAccessAuthType is bing updated we need to update guestAccessProxy and vice versa -- This logic will be removed in Release 15.1 when the guestAccessProxy Parameter will be removed. delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo]=@guestAccessProxyParamNo and [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Scalar Profile Parameter', @ProfLogName, guestAccessProxy, NULL delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo]=@guestAccessAuthTypeParamNo and [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamLevel]='P' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Scalar Profile Parameter', @ProfLogName, guestAccessAuthType, NULL end End end
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbLimiter(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS LimiterNo, [dbo].[DbLimiter].[ResFlag], [dbo].[DbLimiter].[SearchString], [dbo].[DbLimiter].[SeqNo], [dbo].[DbLimiter].[DefValue], [dbo].[LimiterList].[LimiterId] AS LimiterId, [dbo].[LimiterList].[DbLabel] AS DbLabel , dbo.EACOPY_AUTO_GetXmlDbLimiter_DbInterfaceLimiter([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo]) DbInterfaceLimiter , dbo.EACOPY_AUTO_GetXmlDbLimiter_DbLimiterCaption([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo]) DbLimiterCaption , dbo.EACOPY_AUTO_GetXmlDbLimiter_DbLimiterDetail([dbo].[DbLimiter].[DbVerNo], [dbo].[DbLimiter].[LimiterNo]) DbLimiterDetail FROM [dbo].[DbLimiter] LEFT JOIN [dbo].[LimiterList] ON [dbo].[LimiterList].[LimiterNo] = [dbo].[DbLimiter].[LimiterNo] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, LimiterNo, [dbo].[DbLimiter].[ResFlag], [dbo].[DbLimiter].[SearchString], [dbo].[DbLimiter].[SeqNo], [dbo].[DbLimiter].[DefValue] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteConfigDb_70](@UserID nvarchar(20), @UserIP varchar(20), @ServerDbMode char(1), @ApplicationNo int, @ServerNo int, @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN IF( @ServerDbMode='D' ) SET @DbLabel='' DELETE FROM [dbo].[ConfigDb] WHERE [dbo].[ConfigDb].[ApplicationNo]=@ApplicationNo AND [dbo].[ConfigDb].[ServerNo]=@ServerNo AND [dbo].[ConfigDb].[DbName]=@DbName AND [dbo].[ConfigDb].[DbLabel]=@DbLabel DECLARE @appID varchar(255), @srvID varchar(255) SET @appID = dbo.EAIF_GetConfigApplicationID_70(@ApplicationNo) SET @srvID = dbo.EAIF_GetConfigServerURI_70(@ServerNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Delete Server Database', @AppID, @srvID, @DbName, @DbLabel END
CREATE PROCEDURE dbo.UTIL_SetProfileLevelCustomParamScalarValues @ProfileTripletScalarValue ProfileTripletScalarValueType READONLY, @ParamName VARCHAR(100), @NeedBackup BIT = 1 AS BEGIN SET NOCOUNT ON; PRINT N'Updating parameter values...'; IF NOT EXISTS ( SELECT * FROM sys.schemas WHERE name = 'BACK' ) BEGIN EXEC('CREATE SCHEMA BACK'); END IF @NeedBackup = 1 AND NOT EXISTS (SELECT * FROM sys.tables st WHERE st.name = 'UTIL_ProfileParamScalarValue') CREATE TABLE BACK.UTIL_ProfileParamScalarValue ( CustId VARCHAR(10) NOT NULL, GroupId VARCHAR(10) NOT NULL, ProfId VARCHAR(10) NOT NULL, ParamName VARCHAR(100), ParamValue NVARCHAR(4000), IsRolledBack BIT, DateAdded DATETIME ); DECLARE @TempBackup AS TABLE ( CustId VARCHAR(10) NOT NULL, GroupId VARCHAR(10) NOT NULL, ProfId VARCHAR(10) NOT NULL, ParamName VARCHAR(100), ParamValue NVARCHAR(4000), IsRolledBack BIT, DateAdded DATETIME ); DECLARE @ParamLevel CHAR(1) = 'P'; DECLARE @ParamNo SMALLINT = dbo.EAIF_GetCustomParamNumber_70(@ParamName, @ParamLevel); IF @ParamNo IS NULL BEGIN RAISERROR('Parameter does not exist.',16,-1 ) RETURN; END DECLARE @ProfilePrmVal AS TABLE ( ProfNo INT NOT NULL, CustId VARCHAR(10) NOT NULL, GroupId VARCHAR(10) NOT NULL, ProfId VARCHAR(10) NOT NULL, ParamValue NVARCHAR(4000), ParamDefValue NVARCHAR(4000) ); DECLARE @DefValue AS NVARCHAR(4000) SET @DefValue = (SELECT cpl.DefValue FROM dbo.CustomParamList cpl WHERE cpl.ParamNo = @ParamNo AND cpl.ParamLevel = @ParamLevel) BEGIN TRY BEGIN TRAN DECLARE @CurrentDate DATETIME = GETUTCDATE(); INSERT INTO @ProfilePrmVal SELECT p.ProfNo, ptv.CustID, ptv.GroupID, ptv.ProfID, ptv.ParamValue, COALESCE(cpd.DefValue, @DefValue) AS ParamDefValue FROM @ProfileTripletScalarValue ptv INNER JOIN dbo.Profile p ON ptv.CustID = p.CustID AND ptv.GroupID = p.GroupID AND ptv.ProfID = p.ProfID LEFT OUTER JOIN dbo.CustomParamDefaults cpd ON cpd.ParamNo = @ParamNo AND cpd.InterfaceID = p.InterfaceID AND cpd.Version = p.Version AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode MERGE dbo.CustomParamScalarValues AS cpsv USING ( SELECT ProfNo, CustID, GroupID, ProfID, ParamValue, ParamDefValue FROM @ProfilePrmVal ppv ) AS src (ProfNo, CustID, GroupID, ProfID, ParamValue, ParamDefValue) ON cpsv.TargetNo = src.ProfNo AND cpsv.ParamLevel = @ParamLevel AND cpsv.ParamNo = @ParamNo WHEN MATCHED AND (src.ParamValue IS NULL OR src.ParamValue = src.ParamDefValue) THEN DELETE WHEN MATCHED AND src.ParamValue <> cpsv.ParamValue THEN UPDATE SET cpsv.ParamValue = src.ParamValue WHEN NOT MATCHED AND src.ParamValue IS NOT NULL AND src.ParamValue <> src.ParamDefValue THEN INSERT (TargetNo, ParamLevel, ParamNo, ParamValue) VALUES(src.ProfNo, @ParamLevel, @ParamNo, src.ParamValue) OUTPUT src.CustID, src.GroupID, src.ProfID, @ParamName, deleted.ParamValue, 0, @CurrentDate INTO @TempBackup; IF @NeedBackup = 1 BEGIN INSERT INTO BACK.UTIL_ProfileParamScalarValue SELECT * FROM @TempBackup; END COMMIT TRAN END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceKnownSearchItems_103] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN DECLARE @SearchString nvarchar(255) DECLARE @IsSelected bit DECLARE @SeqNo int DECLARE @LabelLangList nvarchar(max) DECLARE @GhostTextLangList nvarchar(max) BEGIN TRANSACTION DELETE [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceKnownSearchItems].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE itemCursor CURSOR FOR SELECT [dbo].[InterfaceKnownSearchItems].[SearchString], [dbo].[InterfaceKnownSearchItems].[IsSelected], [dbo].[InterfaceKnownSearchItems].[SeqNo], dbo.EAIF_InterfaceKnownSearchItemLangAndLabels_103([dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]) AS LabelLang, dbo.EAIF_InterfaceKnownSearchItemLangAndGhostText_103([dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]) As GhostTextLang FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceKnownSearchItems].[Version] = @VersionFrom OPEN itemCursor FETCH NEXT FROM itemCursor INTO @SearchString, @IsSelected, @SeqNo, @LabelLangList, @GhostTextLangList WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAIP_CopyInterfaceKnownSearchItem_103] @InterfaceIDTo, @VersionTo, @SearchString, @IsSelected, @SeqNo, @LabelLangList, @GhostTextLangList IF @@ERROR <> 0 BEGIN CLOSE itemCursor DEALLOCATE itemCursor ROLLBACK TRANSACTION RETURN END END FETCH NEXT FROM itemCursor INTO @SearchString, @IsSelected, @SeqNo, @LabelLangList, @GhostTextLangList END CLOSE itemCursor DEALLOCATE itemCursor COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetProfCatalogsForILSIntegration_141](@ProfNo int) AS BEGIN /* EHPMEBSCOADMIN-1860: Procedure called to populate the Select a CAtalog for use with ILS Integration (on new ILS Integration tab)*/ DECLARE @CustID varchar(10) DECLARE @CustType char (1) SELECT @CustID = c.CustID, @CustType=case c.CustType When 'S' THEN 'P' /* Paying Customer */ When 'T' THEN 'P' /* Paying Customer */ ELSE 'I' /* Internal Customer */ END FROM [dbo].[Profile] a INNER JOIN [dbo].[Customer] c ON c.CustID=a.CustID WHERE a.ProfNo=@ProfNo SELECT b.DbName, b.DisplayName FROM [dbo].[ProfDatabase] a Inner Join [dbo].[DbList] b on (b.DbVerNo = a.DbVerNo) Inner Join [dbo].[DbRTACInfo] r ON (r.DbVerNo=a.DbVerNo) Left outer join EASUPPORT.dbo.CustomerCatalogs cc ON cc.CustID=@CustID AND cc.DbName=b.DbName WHERE a.ProfNo = @ProfNo AND b.SourceType ='C' /* Get Catalogs Only*/ AND (r. ILSIntegration IS NOT NULL AND r.ILSIntegration <> '') /* Get the ILS Integrated Catalog only */ AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND (a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate,GETDATE()) < 0) AND (@CustType ='P' OR (@CustType ='I' AND a.Enable =1)) /* For the internnal admin restrict the list to the enabled catalogs only, otherwise dropdown list would be too long*/ ORDER BY ISNULL(cc.Owned,0) DESC /* Owned catalog should be at the top followed by shared catalog */ END
-- modified 2012.01.25 for EADM-2712 to replace direct access to support objects with function. -- modified 2012.02.23 to not add a record to CustDbListExternalData automatically. CREATE PROCEDURE dbo.EAUI_AddConnectorToCustomer_102 ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @custid VARCHAR(10), @dbverno INT , @status VARCHAR(1)='P' ) AS BEGIN DECLARE @DbName VARCHAR(10) DECLARE @icustno INT = -1 DECLARE @SourceList XML DECLARE @SourceType VARCHAR(1) = 'M' DECLARE @SourceTable table (ExternalDbID VARCHAR(255), DbName VARCHAR(10), DisplayName NVARCHAR(100), [Description] nvarchar(max)) SELECT @icustno = [dbo].[Customer].[CustNo] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @custid if (@icustno = -1) BEGIN BEGIN RAISERROR('The Customer (%s) does not exist in Customer Table', 16, -1, @custid) RETURN END END DECLARE @i INT = -1; SELECT @i = count(*) from [dbo].[CustExternalDbList] WHERE [dbo].[CustExternalDbList].[CustNo] = @icustno and [dbo].[CustExternalDbList].[DbVerNo] = @dbverno IF (@i = 0) BEGIN -- Get the Primary Proxy Host IP DECLARE @CustPrimaryHostIp VARCHAR(45) = ''; -- EADM-2712 - following code caused select permission errors when pushed to 703. --SELECT @CustPrimaryHostIp = (select TOP 1 convert(varchar(3), Octet1) + '.' + convert(varchar(3), Octet2) + '.' + convert(varchar(3), cip.Octet3) + '.' + convert(varchar(3), cip.Octet4) IPAddresses -- From EASUPPORT.dbo.CustomerIPAddresses cip -- join EASUPPORT.dbo.ExternalSourceIPRanges esip on cip.IPRangeNo=esip.IPRangeNo -- where esip.SourceType ='M' AND cip.CustID = @CustID -- order by cip.octet3); -- this is replacement line wrapping access to support tables in function SELECT @CustPrimaryHostIp = EASUPPORT.dbo.EAIF_GetCustPrimaryHostIp_102(@custid) -- END EADM-2712 INSERT INTo [dbo].[CustExternalDbList] ([dbo].[CustExternalDbList].[CustNo],[dbo].[CustExternalDbList].[DbVerNo],[dbo].[CustExternalDbList].[ConnectorProvider],[dbo].[CustExternalDbList].[Status],[dbo].[CustExternalDbList].[CustomerNotes],[dbo].[CustExternalDbList].[PrimaryProxyHostIp],[dbo].[CustExternalDbList].[LastModified]) SELECT @icustno,@dbverno,NULL,@status,null,@CustPrimaryHostIp,GETDATE() FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @dbverno --INSERT INTO CustExternalDbListIndexData --(CustNo,DbVerNo,ConnectorID,ConnectorPassword,ProxyForSearch,ProxyForResult,Z3950URLPort,ConnectorURL,KeyValuePairs) --SELECT @icustno,@dbverno,'','',null, null,'', null,'' --FROM DbListExternalSourceIndexData WHERE DbVerNo = @dbverno END; IF (@status = 'A') BEGIN INSERT @SourceTable SELECT CASE cdl.ConnectorProvider WHEN 'I' THEN indexData.ExternalDbID WHEN 'M' THEN muse.ExternalDbID END ,d.DbName, d.DisplayName, '' FROM [dbo].[DbListExternalSource] des INNER JOIN [dbo].[DbList] d ON d.DbVerNo = des.DbVerNo INNER JOIN [dbo].[CustExternalDbList] cdl ON cdl.DbVerNo = des.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON muse.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON indexData.DbVerNo = d.DbVerNo WHERE cdl.CustNo = @icustno SELECT @SourceList=(SELECT ExternalDb.* FROM @SourceTable ExternalDb JOIN [dbo].[DbListExternalSourceIndexData] dbles ON ExternalDb.ExternalDbID=dbles.ExternalDbID WHERE DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo] in (SELECT [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID) AND [dbo].[ProfDatabase].[DbVerNo] in (SELECT [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[SourceType]=@SourceType)) FOR XML AUTO, ROOT('ExternalDbs')) EXEC [dbo].[EAIP_AddExternalDatabasesToProfiles_92] @CustID, @SourceType, @SourceList END DECLARE @cust VARCHAR(100) = '' SET @cust = 'CustID='+@custid SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @dbverno EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP, @DbName, 'live','Add',@cust END;
CREATE PROCEDURE [dbo].[EPCS_GetMultiDbLimiters_102] @InterfaceID varchar(10), @Version varchar(10) AS SET NOCOUNT ON SELECT l.DbLabel, l.LimiterID, l.SearchString, l.LogicalOpCode, l.Description, a.ScreenID, c.ControlName, l.EnableQueryMask, l.QueryMaskId, l.ControlTemplate, ISNULL(mdbles.ExternalSourceType, '') AS SourceType, ISNULL(mdbles.ExternalSearchString_M, '') AS ExternalSearchString, ISNULL(mdbles.ExternalSearchString_I, '') AS ExternalSearchString_I, ISNULL(mdbles.ExternalSearchString_M, '') AS ExternalSearchString_M FROM [dbo].[MDbLimiterList] AS l INNER JOIN [dbo].[LimiterControlType] AS c ON l.ControlType = c.ControlType LEFT OUTER JOIN [dbo].[MDbLimitersExternalSource] AS mdbles ON l.LimiterID = mdbles.LimiterID CROSS JOIN (SELECT [dbo].[InterfaceScreen].[ScreenID] FROM [dbo].[InterfaceScreen] WHERE ([dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID) AND ([dbo].[InterfaceScreen].[Version] = @Version) AND ([dbo].[InterfaceScreen].[AutoAddMDbLimiter] = 1)) AS a WHERE (l.AutoAdd = 1) UNION ALL SELECT l.DbLabel, l.LimiterID, l.SearchString, l.LogicalOpCode, l.Description, ins.ScreenID, lct.ControlName, l.EnableQueryMask, l.QueryMaskId, l.ControlTemplate, isnull(mdbles.ExternalSourceType,'') SourceType, isnull(mdbles.ExternalSearchString_M,'') ExternalSearchString, -- for backword compatibility isnull(mdbles.ExternalSearchString_I,'') ExternalSearchString_I, isnull(mdbles.ExternalSearchString_M,'') ExternalSearchString_M FROM [dbo].[MDbLimiterList] l INNER JOIN [dbo].[InterfaceMDbLimiterList] i ON i.LimiterNo=l.LimiterNo INNER JOIN [dbo].[InterfaceScreen] ins ON i.IntfScreenNo=ins.IntfScreenNo AND ins.InterfaceID=@InterfaceID AND ins.Version=@Version INNER JOIN [dbo].[LimiterControlType] lct ON l.ControlType=lct.ControlType left outer Join [dbo].[MDbLimitersExternalSource] mdbles on l.LimiterID=mdbles.LimiterID WHERE ins.InterfaceID = @InterfaceID AND ins.Version = @Version AND (ins.AutoAddMDbLimiter = 0 OR ([ins].[AutoAddMDbLimiter]=1 AND l.AutoAdd=0)) ORDER BY [l].[DbLabel], [a].[ScreenID], [l].[LimiterID]
--sql content merged from file: \StoredProcedures\AUTH_GetProfileInfo_70.sql CREATE PROCEDURE dbo.AUTH_GetProfileInfo_70 ( @CustID varchar(10) , @GroupID varchar(10) , @ProfID varchar(10) ) AS BEGIN SELECT P.ProfID , P.ProfPwd , IV.SiteID , dbo.EAIF_MakeUrlSecure_86 ( dbo.EAIF_ConvertSiteURLToEhIS_97(P.ProfNo,IsNull(P.URL,IV.SiteURL), null,0) , dbo.EAIF_GetProfileParamScalarValue_70(P.ProfNo, 'useHttpsAuthentication') ) AS SiteURL , IV.PassingMode , P.DefLangCode , dbo.EAIF_GetProfileParamScalarValue_70(P.ProfNo, 'defaultView') AS DefView , IV.NewWin , IV.InterfaceID , IV.Version , P.ProfNo FROM dbo.InterfaceVersion AS IV INNER JOIN dbo.Profile AS P ON IV.InterfaceID = P.InterfaceID AND IV.Version = P.Version WHERE P.CustID = @CustID AND P.GroupID = @GroupID AND P.ProfID = @ProfID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceForLimiters_70] AS BEGIN SELECT [dbo].[InterfaceLanguage].[InterfaceName] + '(' + [dbo].[InterfaceLanguage].[Version] + ')' AS Display, [dbo].[InterfaceLanguage].[InterfaceID] + ',' + [dbo].[InterfaceLanguage].[Version] AS Val FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[LangCode] = 'en' END
CREATE PROCEDURE [dbo].[EAIS_GetCustName](@CustID varchar(10)) AS BEGIN SELECT [dbo].[Customer].[CustName] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]= @CustID END
CREATE PROCEDURE [dbo].[EPCAS_GetGlobalLimiters](@ProfNo int) AS BEGIN -- Current applications does not make use of this data, so a dummy result is returned so as -- not to break the EPCAS Code. DECLARE @GlobalLimiterTable TABLE ( LimiterNo int, ControlType int, ControlDefault int, Caption varchar(100), SearchString varchar(4000), SeqNo int) SELECT 17 as 'CtrlType', typ.ControlTag as 'CtrlTag', a.Caption, [a].[ControlDefault] as CtrlDefault, Tag = 'FX', typ.ControlFormat as Format, lst.ControlSize as CtrlSize, '' as ColID, 0 as Category, ValueText='FT y', '' as 'ValueText', a.SeqNo FROM @GlobalLimiterTable a INNER JOIN [dbo].[LimiterList] lst ON a.LimiterNo=lst.LimiterNo CROSS JOIN [dbo].[LimiterControlType] typ WHERE typ.ControlType=17 END
CREATE PROCEDURE [dbo].[EAUI_GetDbLabelClusterToAttach_89] (@DbLabel varchar(10), @LangCode varchar(10))AS BEGIN IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT gc.ID, cp.Caption + ' (' + gc.ID + ')' AS Caption FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[GlobalClusterCaption] cp ON gc.ID=cp.ID AND cp.LangCode=@LangCode LEFT OUTER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId AND cl.DbLabel = @DbLabel WHERE cl.ClustId Is Null END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerProductConfigurationDetails_164] ( @UserID NVARCHAR(20), @UserIP VARCHAR(20), @CustID VARCHAR(10), @Product VARCHAR(10), @CurrentSite BIT, @ChildSites BIT, @AuthType VARCHAR(10), @LibraryLogoUrl NVARCHAR(500), @DisplayName NVARCHAR(100), @ProxyID VARCHAR(255), @LoginText NVARCHAR(500), @UpdateChildSites BIT ) AS BEGIN DECLARE @findMyOrgProduct VARCHAR(10) = 'FindMyOrg' IF @findMyOrgProduct = @Product BEGIN EXEC EAUI_UpdateCustomParamProductConfigurationFindMyOrg_204 @UserID,@UserIP,@CustID,@CurrentSite,@AuthType END ELSE BEGIN EXEC EAUI_UpdateCustomParamProductConfigurationGeneric_204 @UserID,@UserIP,@CustID,@Product,@CurrentSite,@ChildSites,@AuthType,@LibraryLogoUrl,@DisplayName,@ProxyID,@LoginText,@UpdateChildSites END END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseFields_161] ( @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit ) AS BEGIN Begin Try BEGIN TRANSACTION DELETE dbfg FROM [dbo].[DbFieldGroup] dbfg JOIN #TempDbListTable t on dbfg.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbFieldGroup] SELECT t.UpperDbVerNo, FieldGroupNo FROM [dbo].[DbFieldGroup] dbfg JOIN #TempDbListTable t ON dbfg.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) DELETE dbfe FROM [dbo].[DbFieldElement] dbfe JOIN #TempDbListTable t on dbfe.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbFieldElement] SELECT t.UpperDbVerNo, FieldGroupNo, FieldElementNo FROM [dbo].[DbFieldElement] dbfe JOIN #TempDbListTable t ON dbfe.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) DELETE dbfgc FROM [dbo].[DbFieldGroupCaption] dbfgc JOIN #TempDbListTable t on dbfgc.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbFieldGroupCaption] SELECT t.UpperDbVerNo, FieldGroupNo, LangCode, Caption FROM [dbo].[DbFieldGroupCaption] dbfgc JOIN #TempDbListTable t ON dbfgc.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) DELETE dbfgd FROM [dbo].[DbFieldGroupDefaults] dbfgd JOIN #TempDbListTable t on dbfgd.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbFieldGroupDefaults] SELECT t.UpperDbVerNo, FieldGroupNo, OutputMode, MarketID, DefValue FROM [dbo].[DbFieldGroupDefaults] dbfgd JOIN #TempDbListTable t ON dbfgd.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
-- 2012.01.03 jjalbert removes longDescription save, changes shortDescription save so it works. -- 2012.02.07 jjalbert: EADM-2780.(Global) connector record modification to "Short Description" is NOT being logged to the 'Activity Log - Status Report'. CREATE PROCEDURE [dbo].[EAUI_UpdateExternalSourceDb_102] ( @DbVerNo int, @VendorName nvarchar (100), @DbDisplayName nvarchar(100), @DbResourceType nvarchar (100), @DbConnectorType nvarchar (20), @DbFree BIT, @DbShortDescription nvarchar(max), @DbLongDescription nvarchar(max), @Lang varchar(10), @UserId NVARCHAR(20), @UserIp varchar(15), @Notes NVARCHAR(1000), @ProxyResult BIT, @ProxySearch BIT, @url NVARCHAR(255), @kvp NVARCHAR(355), @ConnectorProvider VARCHAR(1), @ExternalSourceID_I varchar(255) ) AS BEGIN TRY BEGIN TRANSACTION DECLARE @ParamNo INT DECLARE @i INT = -1; DECLARE @logString VARCHAR(1024) = '' DECLARE @oldVendorName NVARCHAR (100) = '' DECLARE @oldNotes NVARCHAR(1000) = '' DECLARE @oldDbDisplayName NVARCHAR(100) = '' DECLARE @oldDbFree BIT = 0 DECLARE @oldConnectorProvider varchar(1) = '' DECLARE @oldUrl NVARCHAR(255) = '' DECLARE @oldProxyResult bit = 0 DECLARE @oldProxySearch bit= 0 DECLARE @oldKvp NVARCHAR(355)='' DECLARE @oldDbResourceType NVARCHAR(100) = '' DECLARE @oldShortDesc NVARCHAR(1000) = '' DECLARE @oldExternalSourceID_I VARCHAR(255) SELECT @oldDbDisplayName=[e].[DisplayName], @oldDbResourceType=dpsv.ParamValue, @oldShortDesc=CAST(sv.ParamValue AS VARCHAR) FROM [dbo].[DbList] e LEFT OUTER JOIN [dbo].[DbParamScalarValues] dpsv ON dpsv.DbVerNo = e.DbVerNo AND dpsv.ParamNo = 46 LEFT OUTER JOIN [dbo].[DbParamXmlValues] sv ON sv.DbVerNo = e.DbVerNo and sv.ParamNo = 24 and sv.ItemName = 'ShortDescription' WHERE e.DbVerNo = @DbVerNo SELECT @oldVendorName=[dbo].[DbListExternalSource].[VendorName], @oldDbFree=[dbo].[DbListExternalSource].[Free], @oldConnectorProvider=[dbo].[DbListExternalSource].[ConnectorProvider], @oldNotes=[dbo].[DbListExternalSource].[Notes] FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo SELECT @oldUrl=[dbo].[DbListExternalSourceIndexData].[ConnectorURL], @oldKvp=[dbo].[DbListExternalSourceIndexData].[KeyValuePairs], @oldExternalSourceID_I=IsNull([dbo].[DbListExternalSourceIndexData].[ExternalDbID],''), @oldProxyResult = [dbo].[DbListExternalSourceIndexData].[ProxyForResult], @oldProxySearch = [dbo].[DbListExternalSourceIndexData].[ProxyForSearch] FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo IF (@oldConnectorProvider <> @ConnectorProvider) SET @logString += 'ConnectorProvider='+@ConnectorProvider+'('+@ExternalSourceID_I+'),' IF (@oldExternalSourceID_I <> @ExternalSourceID_I) SET @logString += 'IDExternalDbID='+@ExternalSourceID_I+',' IF (@oldDbDisplayName <> @DbDisplayName) SET @logString += 'DisplayName='+@DbDisplayName+',' IF (@oldVendorName <> @VendorName) SET @logString += 'Vendor='+@VendorName+',' IF (@oldNotes<>@Notes) SET @logString += 'Notes have changed,' IF (@oldDbFree <> @DbFree) SET @logString += 'Free='+CAST(@DbFree AS VARCHAR(1))+',' IF (@oldUrl <> @url) SET @logString += 'Url='+@url+',' IF (@oldProxyResult <> @ProxyResult) SET @logString += 'ProxyForResult='+CAST(@ProxyResult AS VARCHAR(1)) IF (@oldProxySearch <> @ProxySearch) SET @logString += 'ProxyForSearch='+CAST(@ProxySearch AS VARCHAR(1)) IF (@oldKvp <> @kvp) SET @logString += 'KeyValuePairs='+@kvp IF (@oldDbResourceType <> @DbResourceType) SET @logString += 'ResourceType='+@DbResourceType -- EADM-2780.(Global) connector record modification to "Short Description" is NOT being logged to the 'Activity Log - Status Report'. IF (@DbShortDescription <> @oldShortDesc) SET @logString += 'Short Description='+@DbShortDescription --end IF (LEN(@logString) > 1024) SET @logString = SUBSTRING(@logString,1,1024) -- Update Db Display name on DbList IF (@DbDisplayName IS NOT NULL AND @DbDisplayName <> @oldDbDisplayName) BEGIN UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @DbDisplayName WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo END -- Update Vendor and ConnectorType on DbListExternal BEGIN UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[VendorName] = @VendorName, [dbo].[DbListExternalSource].[ConnectorType] = @DbConnectorType, [dbo].[DbListExternalSource].[Free]=@DbFree, [dbo].[DbListExternalSource].[Notes] = @Notes, [dbo].[DbListExternalSource].[ConnectorProvider]=@ConnectorProvider WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF (@ConnectorProvider = 'I') BEGIN SELECT @i = COUNT(*) FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo IF (@i > 0) BEGIN UPDATE [dbo].[DbListExternalSourceIndexData] SET [dbo].[DbListExternalSourceIndexData].[ExternalDbID] = @ExternalSourceID_I, [dbo].[DbListExternalSourceIndexData].[KeyValuePairs] = @kvp, [dbo].[DbListExternalSourceIndexData].[ProxyForResult] = @ProxyResult, [dbo].[DbListExternalSourceIndexData].[ProxyForSearch] = @ProxySearch, [dbo].[DbListExternalSourceIndexData].[ConnectorURL] = @url WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo END ELSE BEGIN INSERT INTO [dbo].[DbListExternalSourceIndexData] ([dbo].[DbListExternalSourceIndexData].[DbVerNo], [dbo].[DbListExternalSourceIndexData].[ExternalDbID], [dbo].[DbListExternalSourceIndexData].[ProxyForSearch], [dbo].[DbListExternalSourceIndexData].[ProxyForResult], [dbo].[DbListExternalSourceIndexData].[ConnectorURL], [dbo].[DbListExternalSourceIndexData].[KeyValuePairs] ) VALUES (@DbVerNo, @ExternalSourceID_I, @ProxySearch, @ProxyResult, @url, @kvp) END END -- Update Resource Type on DbParamScalarValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='ResourceType') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamScalarValue_70] @DbVerNo,@ParamNo,@DbResourceType END END -- Update Short Description on DbParamXmlValues SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo,@ParamNo,'',@DbShortDescription ---- Update Long Description on DbParamXmlValues -- BEGIN -- SET @ParamNo = (select ParamNo from DbParamList where ParamName='longDescription') -- IF (@ParamNo IS NOT NULL) -- EXEC EAIP_UpdateDbParamXmlValue_70 @DbVerNo,@ParamNo,@Lang,@DbLongDescription -- END DECLARE @DbName varchar (10) SELECT @DbName=dbo.EAIF_GetDbName_70(@DbVerNo) IF ((@UserId IS NOT NULL) AND (@UserIp IS NOT NULL) AND (@logString <> '')) BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIP, @DbName, 'live','update','CHANGES:',@logString END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
--sql content merged from file: \Functions\EAIF_GetProfCustGroupDbInfo_92.sql CREATE FUNCTION dbo.EAIF_GetProfCustGroupDbInfo_92(@ProfNo int,@GroupNo int,@SourcetypeTobeIgnored char(1)='') RETURNS varchar(max) AS BEGIN DECLARE @Databases varchar(max) SET @Databases='' SELECT @Databases = @Databases + ' ' END' FROM [dbo].[ProfCustGroupDb] pgdb JOIN [dbo].[DbList] db ON (db.DbVerNo = pgdb.DbVerNo) JOIN [dbo].[ProfDatabase] pdb ON (pdb.ProfNo=pgdb.ProfNo and pdb.DbVerNo=pgdb.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSource] dex ON (db.DbVerNo = dex.DbVerNo) WHERE pgdb.ProfNo = @ProfNo AND pgdb.GroupNo= @GroupNo AND db.DbVerNo=pgdb.DbVerNo AND pdb.Enable=1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND db.SourceType <> @SourcetypeTobeIgnored order by pgdb.SeqNo RETURN @Databases + '
CREATE PROCEDURE [dbo].[EAUI_GetCopyRequestStatus_193](@SessionId varchar(100))AS BEGIN Select Top 1 RequestStatus From CopyRequest Where SessionId=@SessionId order by ID desc END
Create PROCEDURE [dbo].[EAIP_AddProfile_153] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID varchar(10), @ProfPwd VARCHAR(10), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @MarketID VARCHAR(20), @DbLabel VARCHAR(10), @ProfName NVARCHAR(100), @DefLangCode VARCHAR(10), @URL NVARCHAR(255) = NULL ) AS BEGIN SET @CustID = RTRIM(LTRIM(@CustID)) /* Start of Validations */ /* Validate: Customer does not exist */ IF NOT EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID) BEGIN RAISERROR('The %s Customer does not exist.', 16,-1, @CustID) RETURN END /* Validate: Group does not exist */ IF NOT EXISTS(SELECT * FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustID and [dbo].[UserGroup].[GroupID] = @GroupID) BEGIN RAISERROR('The %s Group does not exist.', 16,-1, @GroupID) RETURN END /* Validate: Profile exists or not */ IF EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[Profile].[ProfID] = @ProfID) BEGIN RAISERROR('The %s.%s.%s Profile already exists.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END /* Validate: The Interface does not exists */ IF NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN DECLARE @InterfaceVersion VARCHAR(20) IF (@Version <> '' AND @Version IS NOT NULL) BEGIN SET @InterfaceVersion = @InterfaceID + '-' + @Version END ELSE BEGIN SET @InterfaceVersion = @InterfaceID END RAISERROR('The Interface "%s.%s" does not exist.', 16, -1, @InterfaceID,@Version) RETURN END /* Validate: Cannot create profile, this customer does not have any subscriptions. Not for Internal customer. */ DECLARE @InterfaceList TABLE ( [InterfaceId] VARCHAR(10) NOT NULL, [Version] VARCHAR(10) NOT NULL, [InterfaceName] [NVARCHAR](MAX) NOT NULL ) INSERT INTO @InterfaceList EXEC [dbo].[EAUI_GetCustomerInterfaceList_70] @CustID IF NOT EXISTS(SELECT 1 FROM @InterfaceList WHERE InterfaceId = @InterfaceID AND Version = @Version) BEGIN RAISERROR('Cannot create Profile, the Customer "%s" does not have any valid Subscription for the Interface "%s.%s".', 16, -1, @CustID,@InterfaceID,@Version) RETURN END /* Validate: Language does not exists */ IF NOT EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @DefLangCode) BEGIN RAISERROR('The Language "%s" does not exist.', 16, -1, @DefLangCode) RETURN END /* Validate: Profile Style does not exists */ IF NOT EXISTS(SELECT 1 FROM EASUPPORT.dbo.MarketList WHERE [EASUPPORT].[dbo].[MarketList].[MarketID] = @MarketID) BEGIN RAISERROR('The Profile Style "%s" does not exist.', 16, -1, @MarketID) RETURN END /* Validate: Validate for valid DbLabel for Internal Customer */ DECLARE @CustType CHAR(1) SELECT @CustType = [dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID IF((@CustType = 'I' OR @CustType = 'P') AND NOT EXISTS(SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbLabel] = @DbLabel)) BEGIN RAISERROR('The DbLevel "%s" does not exist.', 16, -1, @DbLabel) RETURN END ELSE BEGIN SET @DbLabel = 'live' END /* End of Validations */ DECLARE @ProfLogName VARCHAR(40) SELECT @ProfLogName = @CustID + '.' + @GroupID + '.' + @ProfID IF (@ProfPwd IS NULL OR @ProfPwd = '') BEGIN SET @ProfPwd = 'ebs' + CONVERT (VARCHAR(10), ROUND(RAND() * 10000, 0)) END IF (@DbLabel IS NULL OR @DbLabel = '') BEGIN SET @DbLabel = 'live' END DECLARE @STMode CHAR(1) SELECT @STMode = dbo.EAIF_CustTypeToSTMode_70(@CustType) BEGIN TRANSACTION EXEC [dbo].[EAIP_AddProfileWithDatabases_70] @CustID, @GroupID, @ProfID, @ProfPwd, @InterfaceID, @Version, @MarketID, @STMode, @DbLabel, @ProfName, @DefLangCode /* Now update the Profile URL */ IF (@URL IS NOT NULL) BEGIN DECLARE @ProfNo INT, @SiteURL VARCHAR(255) SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID and [dbo].[Profile].[GroupID] = @GroupID and [dbo].[Profile].[ProfID] = @ProfID SELECT @SiteURL = LTRIM(RTRIM(iv.SiteURL)) FROM [dbo].[Profile] p INNER JOIN [dbo].[InterfaceVersion] iv ON p.InterfaceID = iv.InterfaceID AND p.Version = iv.Version WHERE p.ProfNo = @ProfNo SELECT @URL = LTRIM(RTRIM(@URL)) IF (LOWER(@SiteURL) = LOWER(@URL) OR @URL = '') BEGIN SET @URL = NULL END UPDATE [dbo].[Profile] SET [dbo].[Profile].[URL] = @URL WHERE [dbo].[Profile].[ProfNo] = @ProfNo END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Add Profile', @ProfLogName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetDBClusters_102](@DbVerNo Int, @LangCode Varchar(10)) AS BEGIN DECLARE @DbLabel Varchar(10), @DbType Smallint SELECT @DbLabel = [dbo].[DbList].[DbLabel], @DbType = [dbo].[DbList].[DbType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF @DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') SELECT @DbLabel = 'custom' IF (@DbType = 1) SELECT cl.ClustId, cl.DbLabel, dc.Enable, dc.DbSearchTag FROM [dbo].[ClusterList] cl INNER JOIN [dbo].[GlobalClusterCaption] gcc ON cl.ClustId = gcc.ID INNER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE gcc.LangCode = @LangCode AND cl.DbLabel = @DbLabel END
CREATE PROCEDURE [dbo].[EAUI_ImportDatabaseLongDescription_70] (@UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @LongDesc nvarchar(max)) AS BEGIN DECLARE @ParamNo smallint SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName]='longDescription' BEGIN TRANSACTION DECLARE @DbVerNo int /* LIVE */ SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='live' IF ( @DbVerNo > 0 ) BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, 'live','Import Long Description' EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, 'en', @LongDesc IF (@@ERROR <> 0) BEGIN RAISERROR('Unable to update the live long description for database %s',16,-1,@DbName) ROLLBACK TRANSACTION RETURN END END /* LIVEQC */ SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='liveQC' IF ( @DbVerNo > 0 ) BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId,@UserIP,@DbName, 'liveQC','Import Long Description' EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, 'en', @LongDesc IF (@@ERROR <> 0) BEGIN RAISERROR('Unable to update the liveQC long description for database %s',16,-1,@DbName) ROLLBACK TRANSACTION RETURN END END /* REBUILD */ SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='rebuild' IF ( @DbVerNo > 0 ) BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId,@UserIP,@DbName, 'rebuild','Import Long Description' EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, 'en', @LongDesc IF (@@ERROR <> 0) BEGIN RAISERROR('Unable to update the rebuild long description for database %s',16,-1,@DbName) ROLLBACK TRANSACTION RETURN END END /* REBUILDQC */ SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='rebuildQC' IF ( @DbVerNo > 0 ) BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId,@UserIP,@DbName, 'rebuildQC','Import Long Description' EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo, @ParamNo, 'en', @LongDesc IF (@@ERROR <> 0) BEGIN RAISERROR('Unable to update the rebuildQC long description for database %s',16,-1,@DbName) ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbListExternalSource(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT [dbo].[DbListExternalSource].[ExternalDbID], 0 AS DbVerNo, [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[Notes] FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo ORDER BY [dbo].[DbListExternalSource].[ExternalDbID], DbVerNo, [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[Free], [dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[Notes] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCustomerBranding_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255))AS BEGIN BEGIN TRANSACTION -- Remove branding from all the profiles that use this branding DECLARE @ParamNo int SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('profBranding','P') --if @CustID is a consortia branding has to be deleted from all profiles fron this consortia DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT d.ProfNo FROM dbo.CustomerGroup AS a INNER JOIN dbo.Profile AS d ON a.ChildID= d.CustID WHERE a.ParentID=@CustID) AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=81 AND [dbo].[CustomParamScalarValues].[ParamValue]=@ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID) AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamScalarValues].[ParamValue]=@ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') EXEC [dbo].[EAIP_DeleteCustomParamXmlValue_70] @CustNo, 'C', @ParamNo, @ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Delete Branding Item', @CustID, @ItemName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[UTIL_ShowProfileDbsWithWrongInterfaces_99] ( @DbName varchar(10)) AS BEGIN -- stored proc returns a list of paying customer profiles which have access --to the specified EP database on a wrong Interface select a.CustID, a.GroupID, a.ProfID, a.InterfaceID, a.DbName from ( select pd.DbVerNo, p.InterfaceID, p.Version, p.CustID, p.GroupID, p.ProfID, d.DbName, pd.Enable from [dbo].[Profile] p with (nolock) INNER JOIN [dbo].[ProfDatabase] pd with (nolock) ON p.ProfNo=pd.ProfNo INNER JOIN [dbo].[DbList] d with (nolock) ON pd.DbVerNo=d.DbVerNo INNER JOIN [dbo].[Customer] c with (nolock) ON p.CustID= c.CustID where d.SourceType='D' and c.CustType<>'I' and d.DbName =@DbName ) a left outer join ( select d.DbVerNo, pri.InterfaceID, pri.Version from EASUPPORT.dbo.ProductInterface pri with (nolock) INNER JOIN [dbo].[DbList] d with (nolock) ON pri.ProductID=d.DbName where d.DbLabel='live' and d.SourceType='D' ) b on a.DbVerno=b.DbVerNo and a.InterfaceID=b.InterfaceID and a.Version=b.Version where b.DbVerNo is null Order By a.CustID END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceLanguages_81] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceUserLangList].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceUserLangList] ([dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName], [dbo].[InterfaceUserLangList].[SeqNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName], [dbo].[InterfaceUserLangList].[SeqNo] FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceUserLangList].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_GetProfCustGroupDbDetails_86.sql CREATE PROCEDURE [dbo].[EAUI_GetProfCustGroupDbDetails_86] (@ProfNo int,@GroupNo int ) AS BEGIN SELECT distinct ISNULL(pgc.Caption,N'') AS Caption, db.DbVerNo, Case when pdb.Mode='T' then db.DisplayName + N'' + N'(Trial)' + N'' else db.DisplayName end as DisplayName, 0 AS Selected, CASE WHEN db.SourceType in ('D', 'C') -- change here THEN ISNULL(svm.Description,N'') ELSE ISNULL(dbex.VendorName,N'') END As Vendor FROM [dbo].[DbList] db join [dbo].[ProfDatabase] pdb on db.DbVerNo=pdb.DbVerNo LEFT OUTER JOIN [dbo].[ProfCustGroupCaption] pgc ON pdb.ProfNo =pgc.ProfNo AND pgc.GroupNo=@GroupNo AND pgc.LangCode='en' LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=pdb.DbVerNo LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') Left outer join EASUPPORT.dbo.CustomerCatalogs cc on db.DbName=cc.DbName left outer join [dbo].[Customer] c on cc.SubscriberID=c.CustID WHERE pdb.ProfNo=@ProfNo AND pdb.Enable=1 AND db.NonSearchableDb=0 AND pdb.DbVerNo NOT IN (Select [pgdb].[DbVerNo] FROM [dbo].[ProfCustGroupDb] pgdb Where pgdb.ProfNo = @ProfNo AND pgdb.GroupNo=@GroupNo) AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) Order BY Vendor,DisplayName END
CREATE PROCEDURE [dbo].[EAUI_AddCopyRequest_193] (@SessionId varchar(100), @FromSiteId varchar(10), @FromGroupId varchar (10), @FromProfId varchar (10), @ToSiteIds varchar (500), @ToGroupId varchar (10), @ToProfId varchar (10), @CopyType varchar(20), @UserID nvarchar(20), @UserIP varchar(30) ) AS BEGIN Declare @requestDate datetime Declare @FromInfo varchar(40) Declare @ToInfo varchar(40) Declare @InsertedId int Set @FromInfo = 'From :' + @FromSiteId + ' ' + @FromGroupId + ' ' + @FromProfId Set @ToInfo = 'To :' + @ToSiteIds + ' ' + @ToGroupId + ' ' + @ToProfId Set @requestDate=GetDate() BEGIN TRY BEGIN TRANSACTION INSERT INTO [CopyRequest] ([SessionId] ,[CopyType] ,[FromSiteId] ,[FromGroupId] ,[FromProfId] ,[ToGroupId] ,[ToProfId] ,[RequestStatus] ,[RequestDate] ) Values (@SessionId, @CopyType, @FromSiteId, @FromGroupId, @FromProfId, @ToGroupId, @ToProfId, 'I', @requestDate ) SET @InsertedId = SCOPE_IDENTITY() INSERT INTO [CopyRequestToSites] ([CopyRequestId] ,[ToSiteId] ,[SiteCopyStatus] ,[ErrorMessage]) Select @InsertedId,Item, 'I','' FROM dbo.EAIF_GetItemTable_70(@ToSiteIds,',') COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE Procedure [dbo].[EPCS_GetMultiDbSourcetypes_90] @InterfaceID varchar(50), @Version varchar(50) as Select mdbsl.MultiDBSTSID, IsNull(imdbsl.SearchImage, mdbsl.SearchImage) as SearchImage, IsNull(imdbsl.ResultImage, mdbsl.ResultImage) as ResultImage, [mdbsl].[SortOption], [imdbsl].[DefValue] from [dbo].[InterfaceMultiDbSTSList] imdbsl Join [dbo].[MultiDbSTSList] mdbsl on imdbsl.MultiDbSTSID=mdbsl.MultiDBSTSID where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version Order by [imdbsl].[SeqNo] Select a.MultiDBSTSID, isnull(b.LangCode, a.LangCode) as LangCode, Isnull(b.Caption, a.Caption) as Caption, isnull(b.MouseOverText, a.MouseOverText) as MouseOverText from (Select mdbsl.MultiDBSTSID , mdbsc.LangCode, mdbsc.Caption, mdbsc.MouseOverText from [dbo].[MultiDbSTSList] mdbsl join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID ) a left outer join (Select imdbsl.MultiDbSTSID, imdbsc.LangCode, imdbsc.Caption, imdbsc.MouseOverText from [dbo].[InterfaceMultiDbSTSList] imdbsl join [dbo].[InterfaceMultiDbSTSCaption] imdbsc on imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version ) b on a.MultiDBSTSID=b.MultiDbSTSID and a.LangCode=b.LangCode select imdbsl.MultiDbSTSID, [dtl].[DocTypeID] from [dbo].[DocTypeMultiDbSTSList] dtmdbsl join [dbo].[DocTypeList] dtl on dtmdbsl.DocTypeNo=dtl.DocTypeNo join [dbo].[InterfaceMultiDbSTSList] imdbsl on dtmdbsl.MultiDbSTSID=imdbsl.MultiDbSTSID where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version
CREATE PROCEDURE [dbo].[AUTH_GetProfileInfo_99] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @AuthType varchar(10)) AS BEGIN Declare @ProfNoTable table (ProfNo int) Declare @TempProfiles table ( ProfNo int, ProfName nvarchar(100), ProfID varchar(10), ProfPwd varchar(10), SiteID varchar(10), MarketID varchar(10), STMode char(1), SiteUrl nvarchar(255), PassingMode varchar(10), DefLangCode varchar(10), DefView varchar(2000), InterfaceID varchar(10), Version varchar(10), NewWin BIT, MD5TokenSalt VARCHAR(250), hideInterface bit, PersistentLinkURL NVARCHAR (255), GuestAccessAuthType NVARCHAR(4000), UiStatus NVARCHAR(4000)) insert @TempProfiles Select b.ProfNo, b.ProfName, b.ProfID, b.ProfPwd, a.SiteID, b.MarketID, b.STMode, dbo.EAIF_MakeUrlSecure_86( dbo.EAIF_ConvertSiteURLToEhIS_97(b.ProfNo,IsNull(b.URL,a.SiteURL), null,0), dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'useHttpsAuthentication')) AS SiteURL, a.PassingMode, b.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'defaultView') AS DefView, a.InterfaceID, a.Version, a.NewWin, a.MD5TokenSalt, a.HideInterface, a.PersistentLinkURL, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'guestAccessAuthType') AS GuestAccessAuthType, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'uiStatus') AS UiStatus From [dbo].[InterfaceVersion] AS a INNER JOIN [dbo].[Profile] AS b ON a.InterfaceID= b.InterfaceID AND a.Version=b.Version Where b.CustID = @CustID AND b.GroupID = @GroupID AND b.ProfID = @ProfID if @AuthType='guest' Begin Select ProfID, ProfName, ProfPwd, SiteID, SiteUrl, PassingMode, DefLangCode, DefView, NewWin, InterfaceID, Version, ProfNo, MD5TokenSalt, hideInterface, PersistentLinkURL, GuestAccessAuthType, UiStatus from @TempProfiles WHERE GuestAccessAuthType <> '' End ELSE BEGIN Select ProfID, ProfName, ProfPwd, SiteID, SiteUrl, PassingMode, DefLangCode, DefView, NewWin, InterfaceID, Version, ProfNo, MD5TokenSalt, hideInterface, PersistentLinkURL, GuestAccessAuthType, UiStatus from @TempProfiles END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceKnownSearchItemList_103] (@InterfaceID varchar(10), @Version varchar(10), @LangCOde varchar(10))AS BEGIN --SELECT item.KnownSearchItemNo, item.InterfaceID, item.Version, item.SeqNo, item.SearchString, item.IsSelected, caption.Label, caption.GhostText --FROM InterfaceKnownSearchItems item --JOIN InterfaceKnownSearchItemCaption caption ON item.KnownSearchItemNo = caption.KnownSearchItemNo --WHERE item.InterfaceID=@InterfaceID AND item.Version=@Version and caption.LangCode = @LangCode --ORDER BY item.SeqNo SELECT item.KnownSearchItemNo, item.InterfaceID, item.Version, item.SeqNo, item.SearchString, item.IsSelected, ISNULL(caption.Label, '') AS Label, ISNULL(caption.GhostText, '') AS GhostText, engCaption.Label AS EnglishLabel FROM [dbo].[InterfaceKnownSearchItems] item LEFT JOIN [dbo].[InterfaceKnownSearchItemCaption] caption ON item.KnownSearchItemNo = caption.KnownSearchItemNo and caption.LangCode = @LangCOde LEFT JOIN [dbo].[InterfaceKnownSearchItemCaption] engCaption ON item.KnownSearchItemNo = engCaption.KnownSearchItemNo and engCaption.LangCode = 'en' WHERE item.InterfaceID=@InterfaceID AND item.Version=@Version ORDER BY item.SeqNo END
CREATE PROCEDURE [dbo].[EAIS_GetCustName_70](@CustID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetCustName_70( @CustID ) END
CREATE PROCEDURE [dbo].[EPCAS_GetGroupProfileInfo](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ProfNo int, @ProfPwd varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @STMode char(1), @ProfName varchar(100), @CustName varchar(100), @MsgText varchar(2000), @ColID varchar(50) SELECT @ProfNo=[p].[ProfNo], @ProfPwd=[p].[ProfPwd], @InterfaceID=[p].[InterfaceID], @Version=[p].[Version], @MarketID=p.MarketID, @STMode=[p].[STMode], @ProfName=[p].[ProfName], @CustName=[ct].[CustName] FROM [dbo].[Profile] p INNER JOIN [dbo].[Customer] ct ON p.CustID=ct.CustID WHERE p.CustID=@CustID AND [p].[GroupID]=@GroupID AND [p].[ProfID]=@ProfID AND [p].[DefLangCode]='en' /*convert ProfileId to ehost, part of Jupiter updation */ IF ( (@ProfNo IS NULL) AND (@ProfID='web') ) BEGIN SET @ProfID='ehost' SELECT @ProfNo=[p].[ProfNo], @ProfPwd=[p].[ProfPwd], @InterfaceID=[p].[InterfaceID], @Version=[p].[Version], @MarketID=p.MarketID, @STMode=[p].[STMode], @ProfName=[p].[ProfName], @CustName=[ct].[CustName] FROM [dbo].[Profile] p INNER JOIN [dbo].[Customer] ct ON p.CustID=ct.CustID WHERE p.CustID=@CustID AND [p].[GroupID]=@GroupID AND [p].[ProfID]=@ProfID AND [p].[DefLangCode]='en' END SET @MsgText=dbo.EAIF_GetCustomParamScalarValue_70('defaultLocalsNoMessage', @Interfaceid,@version,@MarketID,@STMode,@ProfNo,'P') SET @ColID=dbo.EAIF_GetCustomParamScalarValue_70('localsKey', @Interfaceid,@version,@MarketID,@STMode,@ProfNo,'P') SELECT @ProfNo as 'Profile', @ProfPwd as 'ProfPwd', @InterfaceID as 'InterfaceID', @ProfName as 'Name', @ColID as 'ColID', @MsgText as 'MsgText' END
CREATE PROCEDURE [dbo].[EAUI_GetDbLabelList_70] AS BEGIN select distinct [dbo].[DbList].[DbLabel] AS Label from [dbo].[DbList] END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerSettings_154] ( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @UserDefined1 nvarchar(255), @UserDefined2 nvarchar(255), @EnforceSimUsage char(1), @LogStatistics char(1), @LinkSource char(1), @AllowClustersonEIT char(1), @SelectedPlinkTitles varchar(500), @LogPersonalUserLevelTransactions char(1), @NumPersUserAccounts varchar(255), @AllowUnlimitedAlerts char(1)='0', @ServeStaticFilesFromWebServer char(1), @EnablePersonalUserLevelReporting char(1), @isEPKBMaster bit = NULL, @usesWhiteList bit, @googleScholarOptOut bit, @ebscoDatabaseOrderIntegration bit = NULL, @ebscoEbookAudiobookOrderIntegration bit = NULL, @InstitutionalID varchar(255), @enableHoldingManagement bit ) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_UpdateUserDefinedFields_70] @CustID,@UserDefined1,@UserDefined2 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enforceSimUsage',@EnforceSimUsage EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logStatistics',@LogStatistics EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'hasLinkSource',@LinkSource EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'RestrictPLinkTitles',@SelectedPlinkTitles EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'allowUnlimitedAlerts',@AllowUnlimitedAlerts EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'allowClustersOnEITIntf',@AllowClustersonEIT EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'serveStaticFilesFromWebServer',@ServeStaticFilesFromWebServer EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logPersonalUserLevelTransactions',@LogPersonalUserLevelTransactions EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'numPersUserAccounts', @NumPersUserAccounts EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enablePersonalUserLevelReporting',@EnablePersonalUserLevelReporting IF @isEPKBMaster IS NOT NULL Begin EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'isEPKBMaster',@isEPKBMaster -- EhpmEbscoAdmin-1464 -- if this Parameter is being enabled for the Customer then all "A-to-Z Link" Parameter values must be cleared out for all affected Profiles -- also the customToolbar item "EBSCO A-Z" must not dislay IF @isEPKBMaster=1 BEGIN -- Remove "A-to-Z Link" Parameter values DECLARE @Table TABLE (ParamNo INT, ProfNo INT) INSERT @Table SELECT a.* FROM (SELECT cplc.ParamNo, p.ProfNo FROM [dbo].[CustomParamList] cplc JOIN [dbo].[CustomParamList] cplp ON cplc.ParentParamNo=cplp.ParamNo AND cplp.ParamName='a-zLink' JOIN dbo.CustomParamScalarValues cpsv ON cplc.ParamNo=cpsv.ParamNo JOIN [dbo].[Profile] p ON cpsv.TargetNo=p.ProfNo AND p.CustID=@CustID) a INSERT EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'Profiles', 'Delete Scalar Profile Parameter', dbo.EAIF_GetProfDottedName_70(ProfNo), dbo.EAIF_GetCustomParamName_70(ParamNo), NULL, NULL, null FROM @Table DELETE dbo.CustomParamScalarValues FROM [dbo].[CustomParamScalarValues] cpsv JOIN @Table t ON cpsv.ParamNo=t.ParamNo AND cpsv.TargetNo=t.ProfNo -- Remove "EBSCO A-Z" customToolbar configuration DECLARE @xmlTable TABLE (ParamNo INT, ProfNo INT, theXml XML) DECLARE @DefaultXml NVARCHAR(MAX) SELECT @DefaultXml = cpxd.DefValue FROM [dbo].[CustomParamList] cpl JOIN dbo.InterfaceParamList ipl ON cpl.ParamNo=ipl.ParamNo JOIN dbo.CustomParamXmlDefaults cpxd ON ipl.ParamNo=cpxd.ParamNo AND ipl.InterfaceID=cpxd.InterfaceID AND ipl.Version=cpxd.Version AND cpxd.DefValue LIKE '%EBSCO A-Z%' JOIN [dbo].[Profile] p ON ipl.InterfaceID=p.InterfaceID AND ipl.Version=p.Version AND p.CustID=@CustID WHERE cpl.ParamName='customToolbar' INSERT @xmlTable SELECT cpl.ParamNo, p.ProfNo, '' + @DefaultXml + ' ' FROM [dbo].[CustomParamList] cpl JOIN dbo.InterfaceParamList ipl ON cpl.ParamNo=ipl.ParamNo JOIN dbo.CustomParamXmlDefaults cpxd ON ipl.ParamNo=cpxd.ParamNo AND ipl.InterfaceID=cpxd.InterfaceID AND ipl.Version=cpxd.Version AND cpxd.DefValue LIKE '%EBSCO A-Z%' JOIN [dbo].[Profile] p ON ipl.InterfaceID=p.InterfaceID AND ipl.Version=p.Version AND p.CustID=@CustID WHERE cpl.ParamName='customToolbar' AND @DefaultXml IS NOT NULL UPDATE @xmlTable SET theXml.modify('delete /items/item[attrib[@name="ItemType"][text()="EBSCO A-Z"]]') DECLARE @xmlTable2 TABLE (ParamNo INT, ProfNo int, theXml XML) INSERT @xmlTable2 SELECT cpxv.ParamNo, cpxv.TargetNo, '' + ISNULL(cpxv.ParamValue, @DefaultXml) + ' ' FROM dbo.CustomParamXmlValues cpxv JOIN [dbo].[Profile] p ON cpxv.TargetNo=p.ProfNo AND p.CustID=@CustID JOIN dbo.CustomParamList cpl ON cpxv.ParamNo=cpl.ParamNo AND cpl.ParamName='customToolbar' WHERE (cpxv.ParamValue IS NOT NULL OR @DefaultXml IS NOT NULL) UPDATE @xmlTable2 SET theXml.modify('delete /items/item[attrib[@name="ItemType"][text()="EBSCO A-Z"]]') INSERT EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomParamXmlFields', 'Set Target Default Values', ProfNo, 'P', ParamNo, LEFT(CONVERT(NVARCHAR(max), theXml), 1024), NULL FROM @xmlTable2 -- any Profiles that have customed the toolbar need to have the "EBSCO A-Z" customToolbar customizations removed UPDATE dbo.CustomParamXmlValues SET [ParamValue]=CONVERT(nvarchar(MAX), x.theXml) FROM @xmlTable2 x JOIN dbo.CustomParamXmlValues cpxv ON x.ProfNo=cpxv.TargetNo AND x.ParamNo=cpxv.ParamNo INSERT EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomParamXmlFields', 'Set Target Default Values', x.ProfNo, 'P', x.ParamNo, LEFT(CONVERT(NVARCHAR(max), x.theXml), 1024), NULL FROM @xmlTable x LEFT OUTER JOIN dbo.CustomParamXmlValues cpxv ON x.ProfNo=cpxv.TargetNo AND x.ParamNo=cpxv.ParamNo WHERE cpxv.TargetNo IS NULL -- any Profiles that have not customized the toolbar need to have a customized value set where the "EBSCO A-Z" customToolbar item has been removed from the global default INSERT dbo.CustomParamXmlValues SELECT x.ProfNo, 'P', x.ParamNo, '', CONVERT(NVARCHAR(max), x.theXml), null FROM @xmlTable x LEFT OUTER JOIN dbo.CustomParamXmlValues cpxv ON x.ProfNo=cpxv.TargetNo AND x.ParamNo=cpxv.ParamNo WHERE cpxv.TargetNo IS NULL END END EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'usesIPWhiteList',@usesWhiteList EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'googleScholarOptOut',@googleScholarOptOut IF @ebscoDatabaseOrderIntegration IS NOT NULL EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'ebscoDatabaseOrderIntegration',@ebscoDatabaseOrderIntegration IF @ebscoEbookAudiobookOrderIntegration IS NOT NULL EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'ebscoEbookAudiobookOrderIntegration',@ebscoEbookAudiobookOrderIntegration EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'institutionalID',@InstitutionalID --Developer Note: 15.4 Release -Currently this logic allows enabling parameter "enableHoldingsManagement", ONLY when the administrator checks the --"Activate EIS Holding" setting on Customer Modify Page. There is no disabling functionality now. -- In future release, the IF condition may have to removed to Enable\Disable "enableHoldingsManagement" baaed on admin setting --on the page. IF (@enableHoldingManagement = 1) EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableHoldingsManagement',@enableHoldingManagement -- EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Settings', @CustID, @UserDefined1, @UserDefined2, @EnforceSimUsage, @LogStatistics COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseFields_70]( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRANSACTION DECLARE @NewLabel varchar(10) SELECT @NewLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@NewDbVerNo IF @NewLabel NOT IN ('live','liveQC','rebuild','rebuildQC') SET @NewLabel = 'custom' -- all other labels share custom limiters IF NOT EXISTS( SELECT 1 FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@NewDbVerNo) /******************************************************/ /* New Database not present, so insert it */ /******************************************************/ BEGIN /* DbFieldGroup */ INSERT INTO [dbo].[DbFieldGroup]([dbo].[DbFieldGroup].[DbVerNo], [dbo].[DbFieldGroup].[FieldGroupNo]) SELECT @NewDbVerNo, [dbo].[DbFieldGroup].[FieldGroupNo] FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldElement */ INSERT INTO [dbo].[DbFieldElement]([dbo].[DbFieldElement].[DbVerNo], [dbo].[DbFieldElement].[FieldGroupNo], [dbo].[DbFieldElement].[FieldElementNo]) SELECT @NewDbVerNo, [dbo].[DbFieldElement].[FieldGroupNo], [dbo].[DbFieldElement].[FieldElementNo] FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupCaption */ INSERT INTO [dbo].[DbFieldGroupCaption]([dbo].[DbFieldGroupCaption].[DbVerNo], [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption]) SELECT @NewDbVerNo, [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupDefaults */ INSERT INTO [dbo].[DbFieldGroupDefaults]([dbo].[DbFieldGroupDefaults].[DbVerNo], [dbo].[DbFieldGroupDefaults].[FieldGroupNo], [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue]) SELECT @NewDbVerNo, [dbo].[DbFieldGroupDefaults].[FieldGroupNo], [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue] FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN /******************************************************/ /* New Database exists, update it as required */ /* In the end take care of Orphan DbFields in Profile */ /******************************************************/ /* DbFieldGroup -- Add New Ones */ INSERT INTO [dbo].[DbFieldGroup]([dbo].[DbFieldGroup].[DbVerNo], [dbo].[DbFieldGroup].[FieldGroupNo]) SELECT @NewDbVerNo, [dbo].[DbFieldGroup].[FieldGroupNo] FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@OldDbVerNo AND [dbo].[DbFieldGroup].[FieldGroupNo] NOT IN (SELECT [dbo].[DbFieldGroup].[FieldGroupNo] FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroup -- Remove the Orphans created in NewDbVerNo */ DELETE [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@NewDbVerNo AND [dbo].[DbFieldGroup].[FieldGroupNo] NOT IN (SELECT [dbo].[DbFieldGroup].[FieldGroupNo] FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@OldDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldElement -- Add New Ones */ INSERT INTO [dbo].[DbFieldElement]([dbo].[DbFieldElement].[DbVerNo], [dbo].[DbFieldElement].[FieldGroupNo], [dbo].[DbFieldElement].[FieldElementNo]) SELECT @NewDbVerNo, [dbo].[DbFieldElement].[FieldGroupNo], [dbo].[DbFieldElement].[FieldElementNo] FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@OldDbVerNo AND CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldGroupNo])+':'+CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldElementNo]) NOT IN (SELECT CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldGroupNo])+':'+CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldElementNo]) FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldElement -- Remove the Orphans created in NewDbVerNo */ DELETE [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@NewDbVerNo AND CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldGroupNo])+':'+CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldElementNo]) NOT IN (SELECT CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldGroupNo])+':'+CONVERT(VARCHAR,[dbo].[DbFieldElement].[FieldElementNo]) FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[DbVerNo]=@OldDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupCaption -- Add New Ones */ INSERT INTO [dbo].[DbFieldGroupCaption]([dbo].[DbFieldGroupCaption].[DbVerNo], [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption]) SELECT @NewDbVerNo, [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@OldDbVerNo AND CONVERT(VARCHAR,[dbo].[DbFieldGroupCaption].[FieldGroupNo])+':'+[dbo].[DbFieldGroupCaption].[LangCode] NOT IN (SELECT CONVERT(VARCHAR,[dbo].[DbFieldGroupCaption].[FieldGroupNo])+':'+[dbo].[DbFieldGroupCaption].[LangCode] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupCaption -- Update per lang caption of the existing Ones */ UPDATE a SET a.Caption=b.Caption FROM [dbo].[DbFieldGroupCaption] a INNER JOIN [dbo].[DbFieldGroupCaption] b ON a.DbVerNo=@NewDbVerNo AND CONVERT(VARCHAR,a.FieldGroupNo)+':'+a.LangCode=CONVERT(VARCHAR,b.FieldGroupNo)+':'+b.LangCode AND b.DbVerNo=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupCaption -- Remove the Orphans created in NewDbVerNo */ DELETE [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@NewDbVerNo AND CONVERT(VARCHAR,[dbo].[DbFieldGroupCaption].[FieldGroupNo])+':'+[dbo].[DbFieldGroupCaption].[LangCode] NOT IN (SELECT CONVERT(VARCHAR,[dbo].[DbFieldGroupCaption].[FieldGroupNo])+':'+[dbo].[DbFieldGroupCaption].[LangCode] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@OldDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupDefaults -- Add New Ones */ INSERT INTO [dbo].[DbFieldGroupDefaults]([dbo].[DbFieldGroupDefaults].[DbVerNo], [dbo].[DbFieldGroupDefaults].[FieldGroupNo], [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue]) SELECT @NewDbVerNo, [dbo].[DbFieldGroupDefaults].[FieldGroupNo], [dbo].[DbFieldGroupDefaults].[OutputMode], [dbo].[DbFieldGroupDefaults].[MarketID], [dbo].[DbFieldGroupDefaults].[DefValue] FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@OldDbVerNo AND CONVERT(VARCHAR,[dbo].[DbFieldGroupDefaults].[FieldGroupNo])+':'+[dbo].[DbFieldGroupDefaults].[OutputMode]+':'+[dbo].[DbFieldGroupDefaults].[MarketID] NOT IN (SELECT CONVERT(VARCHAR,[dbo].[DbFieldGroupDefaults].[FieldGroupNo])+':'+[dbo].[DbFieldGroupDefaults].[OutputMode]+':'+[dbo].[DbFieldGroupDefaults].[MarketID] FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupDefaults -- Update per MarketID DefValue of the existing Ones */ UPDATE a SET a.DefValue=b.DefValue FROM [dbo].[DbFieldGroupDefaults] a INNER JOIN [dbo].[DbFieldGroupDefaults] b ON CONVERT(VARCHAR,a.FieldGroupNo)+':'+a.OutputMode+':'+a.MarketID=CONVERT(VARCHAR,b.FieldGroupNo)+':'+b.OutputMode+':'+b.MarketID WHERE a.DbVerNo=@NewDbVerNo AND b.DbVerNo=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* DbFieldGroupDefaults -- Remove the Orphans created in NewDbVerNo */ DELETE [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@NewDbVerNo AND CONVERT(VARCHAR,[dbo].[DbFieldGroupDefaults].[FieldGroupNo])+':'+[dbo].[DbFieldGroupDefaults].[OutputMode]+':'+[dbo].[DbFieldGroupDefaults].[MarketID] NOT IN (SELECT CONVERT(VARCHAR,[dbo].[DbFieldGroupDefaults].[FieldGroupNo])+':'+[dbo].[DbFieldGroupDefaults].[OutputMode]+':'+[dbo].[DbFieldGroupDefaults].[MarketID] FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@OldDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_UpdateExternalSourceDb_92.sql CREATE PROCEDURE [dbo].[EAUI_UpdateExternalSourceDb_92] ( @DbVerNo int, @VendorName nvarchar (100), @DbDisplayName nvarchar(100), @DbResourceType nvarchar (100), @DbConnectorType nvarchar (20), @DbFree bit, @DbShortDescription nvarchar(max), @DbLongDescription nvarchar(max), @Lang varchar(10), @UserId nvarchar(20), @UserIp varchar(15) ) AS BEGIN TRY BEGIN TRANSACTION Declare @ParamNo int -- Update Db Display name on DbList IF (@DbDisplayName IS NOT NULL) BEGIN UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @DbDisplayName WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo END -- Update Vendor and ConnectorType on DbListExternal BEGIN UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[VendorName] = @VendorName, [dbo].[DbListExternalSource].[ConnectorType] = @DbConnectorType, [dbo].[DbListExternalSource].[Free]=@DbFree WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo END -- Update Resource Type on DbParamScalarValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='ResourceType') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamScalarValue_70] @DbVerNo,@ParamNo,@DbResourceType END -- Update Short Description on DbParamXmlValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo,@ParamNo,'',@DbShortDescription END -- Update Long Description on DbParamXmlValues BEGIN SET @ParamNo = (select [dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='longDescription') IF (@ParamNo IS NOT NULL) EXEC [dbo].[EAIP_UpdateDbParamXmlValue_70] @DbVerNo,@ParamNo,@Lang,@DbLongDescription END DECLARE @DbName varchar (10) SELECT @DbName=dbo.EAIF_GetDbName_70(@DbVerNo) IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, '', 'Update External Source Db', @DbName, @DbDisplayName,@VendorName,@DbResourceType, @DbConnectorType END COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
--sql content merged from file: \Functions\EAIF_GetProfCustGroupDbList_86.sql CREATE FUNCTION [dbo].[EAIF_GetProfCustGroupDbList_86](@ProfNo int,@GroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Ret nvarchar(max) SET @Ret = N'' SELECT @Ret= @Ret+ Case when pdb.Mode='T' then db.DisplayName + N'' + N'(Trial)' + N'' else db.DisplayName end + N', ' FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfCustGroupDb] pgdb ON db.DbVerNo=pgdb.DbVerNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.ProfNo=pgdb.ProfNo and pdb.DbVerNo = pgdb.DbVerNo WHERE pgdb.ProfNo = @ProfNo AND pgdb.GroupNo= @GroupNo AND pdb.Enable = 1 AND (pdb.Mode is null OR (pdb.Mode<>'X')) AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) Order By db.DisplayName IF LEN(@Ret)>0 SET @Ret=SUBSTRING(@Ret,1,LEN(@Ret)-1) RETURN @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCrossRefColList_70] (@CustID varchar(20)) AS BEGIN SELECT [dbo].[Collection].[CustID] + N'.' + [dbo].[Collection].[ColID] as ColID , [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[Hidden]=0 AND [dbo].[Collection].[IsDeleted] = 0 UNION ALL SELECT [dbo].[Collection].[CustID]+'.'+[dbo].[Collection].[ColID] as ColID , [dbo].[Collection].[ColName] FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]='system' AND [dbo].[Collection].[SmartLink]=1 AND [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE dbo.EAIP_AddProfileContentFilterList_181 ( @ProfNo INT, @ScreenNo INT, @ContentFilterListIDs VARCHAR(4000), @UserID NVARCHAR(20), @UserIP VARCHAR(15) ) AS BEGIN BEGIN TRY BEGIN TRANSACTION CREATE TABLE #ContentFilterList (ContentFilterListID VARCHAR(25), CustContentFilterNo INT); INSERT INTO #ContentFilterList SELECT [i].[Value] AS ContentFilterListID, ccf.CustContentFilterNo FROM dbo.Split(',', @ContentFilterListIDs) i INNER JOIN dbo.ContentFilterList cfl ON cfl.ContentFilterListID = i.[Value] INNER JOIN dbo.CustContentFilters ccf ON ccf.ContentFilterNo = cfl.ContentFilterNo INNER JOIN dbo.[Profile] p ON ccf.CustID = p.CustID WHERE p.ProfNo = @ProfNo; INSERT INTO dbo.ProfContentFilters ([dbo].[ProfContentFilters].[ProfNo], [dbo].[ProfContentFilters].[IntfScreenNo], [dbo].[ProfContentFilters].[CustContentFilterNo],[dbo].[ProfContentFilters].[DefValue]) SELECT @ProfNo, @ScreenNo, #ContentFilterList.[CustContentFilterNo], 'On' FROM #ContentFilterList WHERE NOT EXISTS( SELECT * FROM dbo.ProfContentFilters pcf INNER JOIN dbo.CustContentFilters ccf ON pcf.CustContentFilterNo = ccf.CustContentFilterNo INNER JOIN dbo.ContentFilterList cfl ON ccf.ContentFilterNo = cfl.ContentFilterNo WHERE pcf.ProfNo = @ProfNo AND pcf.IntfScreenNo = @ScreenNo AND EXISTS(SELECT 1 FROM #ContentFilterList s WHERE s.ContentFilterListID = cfl.ContentFilterListID)); EXEC [dbo].[EAIP_LogActivity_70] @UserId=@UserID, @UserIP=@UserIP, @Category='Profiles', @Activity='Add Profile Content Filter', @Param1=@ProfNo, @Param2=@ScreenNo, @Param3=@ContentFilterListIDs; COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END;
CREATE PROCEDURE [dbo].[EAIP_GetDBClusters_89](@DbVerNo Int, @LangCode Varchar(10)) AS BEGIN DECLARE @DbLabel Varchar(10), @DbType Smallint SELECT @DbLabel = [dbo].[DbList].[DbLabel], @DbType = [dbo].[DbList].[DbType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo IF @DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC') SELECT @DbLabel = 'custom' IF (@DbType = 1) SELECT gc.XPath, gc.XPathEnh, gc.Tag, gc.Notes, gcc.Caption, cl.ClustId, cl.DbLabel, gc.Show, gc.MinDisplay, gc.MaxDisplay, gc.MaxPercentageResults, gc.CaseConversion, cl.SeqNo, cl.AutoAdd2Db FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId INNER JOIN [dbo].[GlobalClusterCaption] gcc ON gc.ID = gcc.ID LEFT OUTER JOIN [dbo].[DbCluster] dc ON cl.ClustNo = dc.ClustNo AND dc.DbVerNo = @DbVerNo WHERE cl.DbLabel = @DbLabel AND gcc.LangCode = @LangCode AND ((cl.AutoAdd2Db = 1 AND dc.Enable Is Null) OR dc.Enable = 1) END
CREATE PROCEDURE [dbo].[EAUI_InterfaceFeatureItemsReorder_77]( @UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @ItemList varchar(8000), @SeqNoList varchar(8000))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION UPDATE [dbo].[InterfaceFeatureValues] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[InterfaceFeatureValues] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@ItemList, @SeqNoList,'+') b ON a.ItemNo=CONVERT(int, b.Item) WHERE a.InterfaceFeatureNo=@InterfaceFeatureNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Reorder Feature Items', @InterfaceID,@Version,@FeatureName COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DBMultiDbAuthList(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT [dbo].[DBMultiDbAuthList].[MultiDbAuthID], 0 AS DbVerNo FROM [dbo].[DBMultiDbAuthList] WHERE [dbo].[DBMultiDbAuthList].[DbVerNo] = @DbVerNo ORDER BY [dbo].[DBMultiDbAuthList].[MultiDbAuthID], DbVerNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCustomerEmailListAddress_153]( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @ListName varchar(100), @EmailAddress nvarchar(600), @EmailHash VARBINARY(600)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Email List', @CustID, @ListName EXEC dbo.EAIP_DeleteCustomerEmailListAddress_153 @CustID = @CustID, -- varchar(10) @ListName = @ListName, -- varchar(100) @EmailAddress = @EmailAddress, -- nvarchar(255) @EmailHash = @EmailHash END
CREATE PROCEDURE [dbo].[UTIL_UpdateCollectionsUsedByCustomLinks_912](@debug varchar(5)='', @Log bit=0, @LinkID varchar(255)='%', @UserID nvarchar(20)='system', @UserIP varchar(15)='') AS BEGIN -- Collections from Customlinks used by profiles and could be used as limiters that are not being rebuild. -- they need to have AutoRecreate set to 1 DECLARE @ParamNoCustomLink int DECLARE @ParamNoProfLink int select @ParamNoCustomLink =[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] = 'customerCustomLink' --76 select @ParamNoProfLink =[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName] = 'profCustomLinks' declare @ParamValue XML DECLARE @CurrDate datetime SET @CurrDate =GETDATE() DECLARE @Colls TABLE ( CustID VARCHAR(10) NOT NULL, ColID NVARCHAR(50) NOT NULL, unique clustered (CustID, ColID) ) DECLARE C1_C CURSOR LOCAL FAST_FORWARD FOR select v.ParamValue from ( --all CustomLinks used by Profiles select distinct cv.ItemName from [dbo].[CustomParamXmlValues] pv WITH (NOLOCK) INNER JOIN [dbo].[CustomParamXmlValues] cv WITH (NOLOCK) ON pv.ItemName=cv.ItemName where pv.ParamNo=@ParamNoProfLink and cv.ParamNo=@ParamNoCustomLink and cv.ItemName like @LinkID ) a INNER JOIN [dbo].[CustomParamXmlValues] v WITH (NOLOCK) ON v.ItemName =a.ItemName where v.ParamNo=@ParamNoCustomLink and (v.TargetNo<>103128 and v.ItemName<>'kjtestcust:62271') OPEN C1_C FETCH NEXT FROM C1_C INTO @ParamValue WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @Colls SELECT l.* from dbo.EAIF_GetCustomLinkCollections_912(@ParamValue) l lEFT OUTER JOIN @Colls c ON l.CustID=c.CustID and l.ColID=c.ColID where c.CustID is null and c.ColID is null END FETCH NEXT FROM C1_C INTO @ParamValue END CLOSE C1_C DEALLOCATE C1_C IF @debug='debug' --Display collections select c.* from [dbo].[Collection] c INNER JOIN @Colls usedc on c.CustID=usedc.CustID and c.ColID=usedc.ColID where c.SharedFrom=0 and c.AutoRecreate=0 and Eonline =0 and c.IsDeleted = 0 Union all select sharedc.* from [dbo].[Collection] c INNER JOIN @Colls usedc on c.CustID=usedc.CustID and c.ColID=usedc.ColID INNER JOIN [dbo].[Collection] sharedc on c.ColNo=sharedc.ColNo where c.SharedFrom<>0 and sharedc.AutoRecreate=0 and sharedc.Eonline = 0 and c.IsDeleted = 0 ELSE BEGIN TRY BEGIN TRANSACTION --Update collection from this list with AutoRecreate=1 and current LastUpDateDate IF @Log=1 BEGIN INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, @CurrDate , 'Collections', 'Update AuthoRecrete Flag', '1', c.CustID, c.ColID, NULL, NULL from [dbo].[Collection] c INNER JOIN @Colls usedc on c.CustID=usedc.CustID and c.ColID=usedc.ColID where c.SharedFrom=0 and c.AutoRecreate=0 and Eonline =0 and c.IsDeleted = 0 INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, @CurrDate , 'Collections', 'Update AuthoRecrete Flag', '1', c.CustID, c.ColID, NULL, NULL from [dbo].[Collection] c INNER JOIN @Colls usedc on c.CustID=usedc.CustID and c.ColID=usedc.ColID INNER JOIN [dbo].[Collection] sharedc on c.ColNo=sharedc.ColNo where c.SharedFrom<>0 and sharedc.AutoRecreate=0 and sharedc.Eonline = 0 and c.IsDeleted = 0 END Update [dbo].[Collection] Set [AutoRecreate]=1, [LastUpdateDate]=@CurrDate from [dbo].[Collection] c INNER JOIN @Colls usedc on c.CustID=usedc.CustID and c.ColID=usedc.ColID where c.SharedFrom=0 and c.AutoRecreate=0 and Eonline = 0 and c.IsDeleted = 0 Update [dbo].[Collection] Set [AutoRecreate]=1, [LastUpdateDate]=@CurrDate from [dbo].[Collection] a INNER JOIN ( select sharedc.ColNo from [dbo].[Collection] c INNER JOIN @Colls usedc on c.CustID=usedc.CustID and c.ColID=usedc.ColID INNER JOIN [dbo].[Collection] sharedc on c.ColNo=sharedc.ColNo where c.SharedFrom<>0 and sharedc.AutoRecreate=0 and sharedc.Eonline =0 and c.IsDeleted = 0 ) b on a.ColNo=b.ColNo Where a.IsDeleted = 0 COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfacePrimaryDatabase_103](@InterfaceID varchar(10), @Version varchar(10), @DbName varchar(10), @DbLabel varchar(10), @SeqNo int) AS /** procedure is used by EACopy **/ BEGIN BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[InterfacePrimaryDatabases] ([dbo].[InterfacePrimaryDatabases].[InterfaceID], [dbo].[InterfacePrimaryDatabases].[Version],[dbo].[InterfacePrimaryDatabases].[DbVerNo], [dbo].[InterfacePrimaryDatabases].[SeqNo]) Select @InterfaceID, @Version, d.DbVerNo,@SeqNo From [dbo].[DbList] d Where d.DbName=@DbName and d.DbLabel=@DbLabel COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_GetProfCustGroupDbInfo_92.sql CREATE PROCEDURE [dbo].[EAUI_GetProfCustGroupDbInfo_92] ( @ProfNo INT, @GroupNo INT ) AS BEGIN SELECT distinct ISNULL(pgc.Caption,N'') AS Caption, db.DbVerNo, Case when pdb.Mode='T' then db.DisplayName+ N' ('+db.DbName+N')' + N'' + N'(Trial)' + N'' else db.DisplayName+ N' ('+db.DbName+N')' end as DisplayName, CASE WHEN db.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') -- change here ELSE ISNULL(dbex.VendorName,N'') END AS Vendor, pcg.MergeFlag AS MergeResult, ISNULL(pcg.SeqNo, 1) AS SeqNo FROM [dbo].[ProfCustGroupDb] pcg join [dbo].[DbList] db on pcg.DbVerNo=db.DbVerNo join [dbo].[ProfDatabase] pdb on pdb.ProfNo=pcg.ProfNo AND pdb.DbVerNo=db.DbVerNo LEFT OUTER JOIN [dbo].[ProfCustGroupCaption] pgc ON pdb.ProfNo =pgc.ProfNo AND pgc.GroupNo=@GroupNo AND pgc.LangCode='en' LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=pdb.DbVerNo LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') left outer join EASUPPORT.dbo.CustomerCatalogs cc on db.DbName=cc.DbName left outer join [dbo].[Customer] c on cc.SubscriberID=c.CustID WHERE pcg.ProfNo=@ProfNo AND pcg.GroupNo=@GroupNo AND pdb.Enable=1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AddCustomerEmailListAddress_153]( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @ListName varchar(100), @EmailAddress nvarchar(600), @EMailHash VARBINARY(600)) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Email List', @CustID, @ListName EXEC [dbo].[EAIP_AddCustomerEmailListAddress_153] @CustID = @CustID, @ListName = @ListName, @EmailAddress = @EmailAddress, @EmailHash = @EMailHash END
Create Procedure [dbo].[EPCS_GetMultiDbSTSDetails_90] @InterfaceID varchar(50), @Version varchar(50), @MultiDbSTSID varchar(10) as Select IsNull(imdbsc.LangCode, mdbsc.LangCode) as LangCode, IsNull(imdbsc.Caption, mdbsc.Caption) as Caption, IsNull(imdbsc.MouseOverText, mdbsc.MouseOverText) as MouseOverText from [dbo].[InterfaceMultiDbSTSList] imdbsl left outer join [dbo].[InterfaceMultiDbSTSCaption] imdbsc on imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo Join [dbo].[MultiDbSTSList] mdbsl on imdbsl.MultiDbSTSID=mdbsl.MultiDBSTSID join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version and mdbsl.MultiDBSTSID=@MultiDbSTSID
CREATE PROCEDURE [dbo].[AUTH_GetProfileInfo_MultiAffiliation] (@CustIdList VARCHAR(MAX), @GroupIdList VARCHAR(MAX), @ProfID varchar(10), @AuthType varchar(10)) AS BEGIN DECLARE @ItemValueTable TABLE (CustId nvarchar(255), GroupId nvarchar(255), RowNumber int) DECLARE @MaxRow int, @curRow INT, @curCustId VARCHAR(20), @curGroupId VARCHAR(20) INSERT INTO @ItemValueTable(CustId, GroupId, RowNumber) SELECT * FROM [dbo].[EAIF_GetItemValueTable_WithRowNumber](@CustIdList,@GroupIdList, ',') SELECT @MaxRow= MAX(RowNumber) FROM @ItemValueTable SELECT @CurRow = 1 DECLARE @ProfileRet AS TABLE( ProfId VARCHAR(200), ProfName NVARCHAR(500), profPwd nvarchar(500), siteId NVARCHAR(50), SiteUrl NVARCHAR(1000), PassingMode VARCHAR(100), defLangCode NVARCHAR(10), DefView VARCHAR(100), Newwin BIT, interfaceId VARCHAR(100), version VARCHAR(10), profNo VARCHAR(50), MD5TokenSalt VARCHAR(250), hideInterface bit, PersistentLinkURL NVARCHAR (255), GuestAccessAuthType NVARCHAR(4000), UiStatus NVARCHAR(4000)) --need to loop through the list of customer groups in the correct order and get the profiles --done in a loop because we dont have time to create a complex getProfiles method that would work with multiple cust/groups WHILE @CurRow <= @maxRow BEGIN SELECT @curCustId = CustId, @curGroupId = groupId FROM @ItemValueTable WHERE RowNumber = @CurRow INSERT INTO @ProfileRet EXEC [dbo].[AUTH_GetProfileInfo_99] @curCustId, @curGroupId, @ProfID, @AuthType --if we found one then we are done IF @@ROWCOUNT >0 BEGIN SELECT ProfId, ProfName, profPwd, siteId, SiteUrl, PassingMode, defLangCode, DefView, Newwin, interfaceId, version, profNo, MD5TokenSalt, hideInterface, @curCustId AS [CustId], @curGroupId AS [GroupId] FROM @ProfileRet p RETURN END SELECT @CurRow = @CurRow + 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceLanguage_81](@InterfaceID varchar(10),@Version varchar(10))AS BEGIN DECLARE @DefLangCode varchar(10) SELECT @DefLangCode=[dbo].[InterfaceVersion].[DefLangCode] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] =@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SELECT il.LangCode,il.LangDisplayName, ll.Description, il.SeqNo,@DefLangCode AS DefLangCode FROM [dbo].[InterfaceUserLangList] il INNER JOIN [dbo].[LangList] ll ON ll.LangCode=il.LangCode WHERE il.InterfaceID =@InterfaceID AND il.Version=@Version ORDER BY il.SeqNo END
CREATE Procedure [dbo].[EAIS_GetEJSUpdatesLog_91] AS BEGIN SELECT distinct p.CustID, p.GroupID, p.ProfID, dbo.EAIF_GetCustomParamScalarValue_70('eonlineCustID', p.InterfaceID, p.Version, p.MarketID, p.STMode, p.ProfNo, 'P') AS EOnlineCustID, dbo.EAIF_GetCustomParamScalarValue_70('eonlineUserID', p.InterfaceID, p.Version, p.MarketID, p.STMode, p.ProfNo, 'P') AS EOnlineUserID, dbo.EAIF_GetCustomParamScalarValue_70('eonlinePassword', p.InterfaceID, p.Version, p.MarketID, p.STMode, p.ProfNo, 'P') AS EOnlinePwd FROM [dbo].[EJSCustUpdates] u INNER JOIN [dbo].[Profile] p ON u.ProfNo = p.ProfNo END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalCollectionISSN]( @CustomerID varchar(10), @CollectionID varchar(50) ) AS BEGIN DECLARE @ColNo int DECLARE @LastUpdateDate varchar(20) SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END), /* 112--YYYYMMDD, 108--HH:MM:SS(24hr) */ @LastUpdateDate=CONVERT(VARCHAR(8), [dbo].[Collection].[LastUpdateDate], 112) + ' ' + CONVERT(VARCHAR(8), [dbo].[Collection].[LastUpdateDate], 108) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID AND [dbo].[Collection].[IsDeleted] = 0 SELECT [m].[ISSN], [d].[FromDate], [d].[ToDate], @LastUpdateDate as LastUpdateDate FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON l.TitleNo = m.TitleNo LEFT OUTER JOIN [dbo].[LocalDate] d ON m.TitleNo = d.TitleNo AND d.ColNo = @ColNo WHERE l.ColNo = @ColNo ORDER BY m.ISSN, [d].[FromDate] END
/***************************************************************************/ /*** ResFlag field added to suppport exclude limiters from AutoAdd ****/ CREATE PROCEDURE [dbo].[EAUI_GetDbLimiterDetails_70] (@LimiterNo int, @DbVerNo int, @LangCode varchar(10)) AS BEGIN SELECT ll.LimiterId, ISNULL(ll.Description,'') AS Description, ISNULL(dlc.Caption,'') AS Caption, ISNULL(dlc.MouseOverText,'') AS MouseOverText ,lc.ControlName, ISNULL(dl.SearchString,'') AS SearchString, lc.ControlTag, dl.DefValue, lc.ControlType, lc.DefaultEditControl, lc.DefaultValueTemplate, dld.ControlTemplate, lc.ControlClass, dl.ResFlag, ll.EnableQueryMask, ISNULL(ll.QueryMaskId,'') AS QueryMaskId, ll.IsListContentsGrouped AS IsListContentsGrouped, ISNULL(ll.ListItemUniqueId,'') as ListItemUniqueId, ll.HelpUrl FROM [dbo].[DbLimiter] dl JOIN [dbo].[LimiterList] ll ON (dl.LimiterNo = ll.LimiterNo) JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) LEFT OUTER JOIN [dbo].[DbLimiterCaption] dlc ON (dl.DbVerNo = dlc.DbVerNo AND dl.LimiterNo = dlc.LimiterNo AND dlc.LangCode = @LangCode) LEFT OUTER JOIN [dbo].[DbLimiterDetail] dld ON (dl.DbVerNo = dld.DbVerNo AND dl.LimiterNo = dld.LimiterNo) WHERE dl.DbVerNo = @DbVerNo And dl.LimiterNo = @LimiterNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateCustomerSettings_70] ( @UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @UserDefined1 nvarchar(255), @UserDefined2 nvarchar(255), @EnforceSimUsage char(1), @LogStatistics char(1), @LinkSource char(1), @AllowClustersonEIT char(1), @SelectedPlinkTitles varchar(500), @LogPersonalUserLevelTransactions char(1), @NumPersUserAccounts varchar(255), @AllowUnlimitedAlerts char(1)='0', @ServeStaticFilesFromWebServer char(1), @EnablePersonalUserLevelReporting char(1), @isEPKBMaster bit = NULL, @usesWhiteList bit, @googleScholarOptOut bit, @ebscoDatabaseOrderIntegration bit = NULL, @ebscoEbookAudiobookOrderIntegration bit = NULL, @InstitutionalID varchar(255) ) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_UpdateUserDefinedFields_70] @CustID,@UserDefined1,@UserDefined2 EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enforceSimUsage',@EnforceSimUsage EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logStatistics',@LogStatistics EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'hasLinkSource',@LinkSource EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'RestrictPLinkTitles',@SelectedPlinkTitles EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'allowUnlimitedAlerts',@AllowUnlimitedAlerts EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'allowClustersOnEITIntf',@AllowClustersonEIT EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'serveStaticFilesFromWebServer',@ServeStaticFilesFromWebServer EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logPersonalUserLevelTransactions',@LogPersonalUserLevelTransactions EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'numPersUserAccounts', @NumPersUserAccounts EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enablePersonalUserLevelReporting',@EnablePersonalUserLevelReporting IF @isEPKBMaster IS NOT NULL Begin EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'isEPKBMaster',@isEPKBMaster -- EhpmEbscoAdmin-1464 -- if this Parameter is being enabled for the Customer then all "A-to-Z Link" Parameter values must be cleared out for all affected Profiles -- also the customToolbar item "EBSCO A-Z" must not dislay IF @isEPKBMaster=1 BEGIN -- Remove "A-to-Z Link" Parameter values DECLARE @Table TABLE (ParamNo INT, ProfNo INT) INSERT @Table SELECT a.* FROM (SELECT cplc.ParamNo, p.ProfNo FROM [dbo].[CustomParamList] cplc JOIN [dbo].[CustomParamList] cplp ON cplc.ParentParamNo=cplp.ParamNo AND cplp.ParamName='a-zLink' JOIN dbo.CustomParamScalarValues cpsv ON cplc.ParamNo=cpsv.ParamNo JOIN [dbo].[Profile] p ON cpsv.TargetNo=p.ProfNo AND p.CustID=@CustID) a INSERT EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'Profiles', 'Delete Scalar Profile Parameter', dbo.EAIF_GetProfDottedName_70(ProfNo), dbo.EAIF_GetCustomParamName_70(ParamNo), NULL, NULL, null FROM @Table DELETE dbo.CustomParamScalarValues FROM [dbo].[CustomParamScalarValues] cpsv JOIN @Table t ON cpsv.ParamNo=t.ParamNo AND cpsv.TargetNo=t.ProfNo -- Remove "EBSCO A-Z" customToolbar configuration DECLARE @xmlTable TABLE (ParamNo INT, ProfNo INT, theXml XML) DECLARE @DefaultXml NVARCHAR(MAX) SELECT @DefaultXml = cpxd.DefValue FROM [dbo].[CustomParamList] cpl JOIN dbo.InterfaceParamList ipl ON cpl.ParamNo=ipl.ParamNo JOIN dbo.CustomParamXmlDefaults cpxd ON ipl.ParamNo=cpxd.ParamNo AND ipl.InterfaceID=cpxd.InterfaceID AND ipl.Version=cpxd.Version AND cpxd.DefValue LIKE '%EBSCO A-Z%' JOIN [dbo].[Profile] p ON ipl.InterfaceID=p.InterfaceID AND ipl.Version=p.Version AND p.CustID=@CustID WHERE cpl.ParamName='customToolbar' INSERT @xmlTable SELECT cpl.ParamNo, p.ProfNo, '' + @DefaultXml + ' ' FROM [dbo].[CustomParamList] cpl JOIN dbo.InterfaceParamList ipl ON cpl.ParamNo=ipl.ParamNo JOIN dbo.CustomParamXmlDefaults cpxd ON ipl.ParamNo=cpxd.ParamNo AND ipl.InterfaceID=cpxd.InterfaceID AND ipl.Version=cpxd.Version AND cpxd.DefValue LIKE '%EBSCO A-Z%' JOIN [dbo].[Profile] p ON ipl.InterfaceID=p.InterfaceID AND ipl.Version=p.Version AND p.CustID=@CustID WHERE cpl.ParamName='customToolbar' AND @DefaultXml IS NOT NULL UPDATE @xmlTable SET theXml.modify('delete /items/item[attrib[@name="ItemType"][text()="EBSCO A-Z"]]') DECLARE @xmlTable2 TABLE (ParamNo INT, ProfNo int, theXml XML) INSERT @xmlTable2 SELECT cpxv.ParamNo, cpxv.TargetNo, '' + ISNULL(cpxv.ParamValue, @DefaultXml) + ' ' FROM dbo.CustomParamXmlValues cpxv JOIN [dbo].[Profile] p ON cpxv.TargetNo=p.ProfNo AND p.CustID=@CustID JOIN dbo.CustomParamList cpl ON cpxv.ParamNo=cpl.ParamNo AND cpl.ParamName='customToolbar' WHERE (cpxv.ParamValue IS NOT NULL OR @DefaultXml IS NOT NULL) UPDATE @xmlTable2 SET theXml.modify('delete /items/item[attrib[@name="ItemType"][text()="EBSCO A-Z"]]') INSERT EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomParamXmlFields', 'Set Target Default Values', ProfNo, 'P', ParamNo, LEFT(CONVERT(NVARCHAR(max), theXml), 1024), NULL FROM @xmlTable2 -- any Profiles that have customed the toolbar need to have the "EBSCO A-Z" customToolbar customizations removed UPDATE dbo.CustomParamXmlValues SET [ParamValue]=CONVERT(nvarchar(MAX), x.theXml) FROM @xmlTable2 x JOIN dbo.CustomParamXmlValues cpxv ON x.ProfNo=cpxv.TargetNo AND x.ParamNo=cpxv.ParamNo INSERT EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomParamXmlFields', 'Set Target Default Values', x.ProfNo, 'P', x.ParamNo, LEFT(CONVERT(NVARCHAR(max), x.theXml), 1024), NULL FROM @xmlTable x LEFT OUTER JOIN dbo.CustomParamXmlValues cpxv ON x.ProfNo=cpxv.TargetNo AND x.ParamNo=cpxv.ParamNo WHERE cpxv.TargetNo IS NULL -- any Profiles that have not customized the toolbar need to have a customized value set where the "EBSCO A-Z" customToolbar item has been removed from the global default INSERT dbo.CustomParamXmlValues SELECT x.ProfNo, 'P', x.ParamNo, '', CONVERT(NVARCHAR(max), x.theXml), null FROM @xmlTable x LEFT OUTER JOIN dbo.CustomParamXmlValues cpxv ON x.ProfNo=cpxv.TargetNo AND x.ParamNo=cpxv.ParamNo WHERE cpxv.TargetNo IS NULL END END EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'usesIPWhiteList',@usesWhiteList EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'googleScholarOptOut',@googleScholarOptOut IF @ebscoDatabaseOrderIntegration IS NOT NULL EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'ebscoDatabaseOrderIntegration',@ebscoDatabaseOrderIntegration IF @ebscoEbookAudiobookOrderIntegration IS NOT NULL EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'ebscoEbookAudiobookOrderIntegration',@ebscoEbookAudiobookOrderIntegration EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'institutionalID',@InstitutionalID EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Administration', 'Update Customer Settings', @CustID, @UserDefined1, @UserDefined2, @EnforceSimUsage, @LogStatistics COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseForms_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION Delete dbf from [dbo].[DbForm] dbf join #TempDbListTable t on dbf.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbForm] Select t.UpperDbVerNo AS DbVerNo, FormNumber, FormName, Encoding, Category From [dbo].[DbForm] dbf join #TempDbListTable t on dbf.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
Create PROCEDURE [dbo].[EAUI_UpdateFeatureValues_103](@UserID nvarchar(20),@UserIP varchar(15), @FeatureNo int, @ItemNo int, @FieldsXML nvarchar(max), @AutoAddForInterfaces bit) AS BEGIN Begin Try BEGIN TRANSACTION Update [dbo].[FeatureList] set [dbo].[FeatureList].[AutoAddForInterfaces]=@AutoAddForInterfaces where [dbo].[FeatureList].[FeatureNo]=@FeatureNo UPDATE [dbo].[FeatureValues] SET [dbo].[FeatureValues].[FieldValueXml] =@FieldsXML WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo AND [dbo].[FeatureValues].[ItemNo]=@ItemNo DECLARE @Category varchar(20) DECLARE @Name varchar(50) SELECT @Category=[dbo].[FeatureList].[Category], @Name=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Update Feature Values', @Category, @Name, @ItemNo COMMIT TRANSACTION end try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch END
--sql content merged from file: \Functions\EAIF_GetProfCustGroupShortDbList_86.sql CREATE FUNCTION [dbo].[EAIF_GetProfCustGroupShortDbList_86](@ProfNo int,@GroupNo int,@SourcetypeTobeIgnored char(1)='') RETURNS varchar(8000) AS BEGIN DECLARE @Ret varchar(8000) SET @Ret = ',' SELECT @Ret= @Ret+db.DbName+',' FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfCustGroupDb] pgdb ON db.DbVerNo=pgdb.DbVerNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo= pgdb.DbVerNo AND pdb.ProfNo=pgdb.ProfNo WHERE pgdb.ProfNo = @ProfNo AND pgdb.GroupNo= @GroupNo AND pdb.Enable =1 AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND db.SourceType <> (case when @SourcetypeTobeIgnored != '' then @SourcetypeTobeIgnored else '' end) Order by pgdb.SeqNo RETURN @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCtrlCustListBrowseByCustID_70](@CustId varchar(10)) as BEGIN SELECT DISTINCT a.CustID, a.CustName FROM dbo.Customer a INNER JOIN EASUPPORT.dbo.CustSubscription b ON a.CustID = b.CtrlCustID WHERE a.CustID LIKE @CustId + '%' AND b.CtrlCustID IS NOT NULL ORDER BY a.CustName END
CREATE PROCEDURE [dbo].[EAIP_AddTblParamItem_162]( @UserID nvarchar(20), @UserIP varchar(15), @ParamName varchar(100), @ItemId varchar(10), @AutoAdd bit, @FieldsXML nvarchar(max) ) AS BEGIN Declare @ParamNo INT SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]=@ParamName EXEC [dbo].[EAUI_AddTblParamItem_101] @UserID ,@UserIP , @ParamNo , @ItemId ,@AutoAdd , @FieldsXML END
CREATE PROCEDURE dbo.EAIP_GetDbDocTypeList_77(@DbVerNo int) AS BEGIN /**procedure is used by EPCopy**/ SELECT DTL.DocTypeID , DDT.TargetDb , DDT.SearchString FROM dbo.DbDocType AS DDT INNER JOIN dbo.DocTypeList AS DTL ON DDT.DocTypeNo = DTL.DocTypeNo WHERE DDT.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_InterfaceLanguageAttach_81](@UserID nvarchar(20),@UserIP varchar(15),@InterfaceID varchar(10),@Version varchar(10), @LangCodeList varchar(8000))AS BEGIN BEGIN TRANSACTION DECLARE @SeqNo int SELECT @SeqNo=MAX([dbo].[InterfaceUserLangList].[SeqNo])+1 FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version IF @SeqNo is null SET @SeqNo=1 INSERT INTO [dbo].[InterfaceUserLangList] ([dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName], [dbo].[InterfaceUserLangList].[SeqNo]) SELECT @InterfaceID, @Version,a.Item,ll.Description, a.Num FROM [dbo].[LangList] ll INNER JOIN dbo.EAIF_GetEnumValueTable_70(@LangCodeList,'+', @SeqNo, 1) a ON ll.LangCode = a.Item IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Attach Language', @InterfaceID, @Version, @LangCodeList COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbParamScalarValues(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS ParamNo, [dbo].[DbParamScalarValues].[ParamValue], [dbo].[DbParamList].[ParamName] AS ParamName FROM [dbo].[DbParamScalarValues] LEFT JOIN [dbo].[DbParamList] ON [dbo].[DbParamList].[ParamNo] = [dbo].[DbParamScalarValues].[ParamNo] WHERE [dbo].[DbParamScalarValues].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, ParamNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCustomerLoginPrompt_76]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255))AS BEGIN BEGIN TRANSACTION DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('loginText','C') EXEC [dbo].[EAIP_DeleteCustomParamXmlValue_70] @CustNo, 'C', @ParamNo, @ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Delete "Customized Login" Item', @CustID, @ItemName COMMIT TRANSACTION END
CREATE PROCEDURE dbo.UTIL_UpdateCustomLinks @UpdateCustomlink CustomLinkType READONLY AS BEGIN BEGIN TRY BEGIN TRAN IF NOT EXISTS ( SELECT * FROM sys.schemas WHERE name = 'BACK' ) EXEC ('CREATE SCHEMA BACK'); IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US585183_CustomLinks' ) CREATE TABLE BACK.US585183_CustomLinks ( CustID NVARCHAR(max) ,LinkID NVARCHAR(max) ,ParamValue XML ,CreateDate DATETIME ) DECLARE @CustID NVARCHAR(max) ,@CustName NVARCHAR(max) ,@LinkID NVARCHAR(max) ,@NewBaseURL NVARCHAR(max) ,@NewQueryString NVARCHAR(max) ,@CreateDate DATETIME = getdate() PRINT 'CreateDate for ROLLBACK script: ' + cast(@CreateDate as nvarchar(50)) DECLARE @TargetNo INT ,@ParamNo INT ,@xml XML SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink', 'C') DECLARE db_cursor CURSOR LOCAL FAST_FORWARD FOR SELECT CustID ,CustName ,LinkID ,NewBaseURL ,NewQueryString FROM @UpdateCustomlink OPEN db_cursor FETCH NEXT FROM db_cursor INTO @CustID ,@CustName ,@LinkID ,@NewBaseURL ,@NewQueryString WHILE @@FETCH_STATUS = 0 BEGIN SELECT @TargetNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @xml = ParamValue FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = @LinkID IF(@xml IS NOT NULL) BEGIN INSERT INTO BACK.US585183_CustomLinks ( CustID ,LinkID ,ParamValue ,CreateDate ) VALUES ( @CustID ,@LinkID ,@xml ,@CreateDate ) SET @xml.modify(' replace value of (/customerCustomLink/@baseURL)[1] with sql:variable("@NewBaseURL") '); SET @xml.modify(' replace value of (/customerCustomLink/@queryString)[1] with sql:variable("@NewQueryString") '); UPDATE [dbo].[CustomParamXmlValues] SET ParamValue = cast(@xml AS NVARCHAR(max)) WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = @LinkID END FETCH NEXT FROM db_cursor INTO @CustID ,@CustName ,@LinkID ,@NewBaseURL ,@NewQueryString END CLOSE db_cursor DEALLOCATE db_cursor PRINT 'CustomLink update done.'; COMMIT TRAN END TRY BEGIN CATCH IF (@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfacePrimaryDatabases_103] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRY BEGIN TRANSACTION -- Step 1 : Get the "AllowPrimaryDatabases" setting for the source interface from the InterfaceVersion table DECLARE @AllowPrimaryDatabases bit SET @AllowPrimaryDatabases = (SELECT [dbo].[InterfaceVersion].[AllowPrimaryDatabases] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceIDFrom AND [dbo].[InterfaceVersion].[Version] = @VersionFrom) UPDATE [dbo].[InterfaceVersion] SET [dbo].[InterfaceVersion].[AllowPrimaryDatabases] = @AllowPrimaryDatabases WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceIDTo AND [dbo].[InterfaceVersion].[Version] = @VersionTo -- Step 2 : Remove the existing entries on the table for then InterfaceTo DELETE [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfacePrimaryDatabases].[Version]= @VersionTo -- Step 3 : copy table entries from InterfaceFrom to InterfaceTo INSERT INTO [dbo].[InterfacePrimaryDatabases] ([dbo].[InterfacePrimaryDatabases].[InterfaceID],[dbo].[InterfacePrimaryDatabases].[Version],[dbo].[InterfacePrimaryDatabases].[DbVerNo],[dbo].[InterfacePrimaryDatabases].[SeqNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfacePrimaryDatabases].[DbVerNo],[dbo].[InterfacePrimaryDatabases].[SeqNo] FROM [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfacePrimaryDatabases].[Version] = @VersionFrom -- Enforce the Business rule : Primary databases on all existing user profiles (for the interface) with this database on the profile --should be enabled and selected by default. -- Paying customers : All their existing profiles get updated (auto-add). --Internal customers : Only those profiles with this database already attached to it get updated (no - autoadd). -- Note : Most of the times, Interface copy is done to create a new interface (so no profiles likely ) hence it is okay to update profdatabase for all primary databases in single update statement. Update [dbo].[ProfDatabase] set [Enable]=1, [SelDefault]=1 from [dbo].[ProfDatabase] pdb join [dbo].[Profile] p on (pdb.ProfNo=p.ProfNo) join [dbo].[InterfacePrimaryDatabases] ip on (p.InterfaceID=ip.InterfaceID and p.Version=ip.Version and pdb.DbVerNo=ip.DbVerNo) Where p.InterfaceID=@InterfaceIDTo and p.Version=@VersionTo -- Where Enable=0 or SelDefault=0 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_CopyProfile_161] ( @UserID nvarchar(20), @UserIP varchar(15), @SrcCustID varchar(10), @SrcGroupID nvarchar(10), @SrcProfID varchar(10), @TargetCustID varchar(10), @TargetGroupID nvarchar(10), @TargetProfID varchar(10), @ParamNames varchar(8000), @ActionParamNames varchar(8000), @ActionParamValues varchar(8000)='', @SelectedDbs varchar(max), @SelectedDbGroups varchar(max), @SelectedWidgets nvarchar(max), @SelectedToolbars nvarchar(max) ) AS BEGIN DECLARE @ParamNumbers varchar(8000) ='' DECLARE @ActionParamNumbers varchar(1000) ='' DECLARE @ProfNo INT SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@TargetCustID AND [dbo].[Profile].[GroupID]=@TargetGroupID AND [dbo].[Profile].[ProfID]=@TargetProfID IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@TargetCustID AND [dbo].[UserGroup].[GroupID]=@TargetGroupID) BEGIN RAISERROR('The target customer and group (%s.%s) combination does not exist.', 16,-1, @TargetCustID,@TargetGroupID) RETURN END IF @ParamNames<>'' SELECT @ParamNumbers = COALESCE(@ParamNumbers+'+','') + CONVERT(varchar, c.ParamNo) FROM [dbo].[Split](',', @ParamNames) s JOIN dbo.CustomParamList c ON s.[Value]=c.ParamName IF @ActionParamNames<>'' SELECT @ActionParamNumbers = COALESCE(@ActionParamNumbers+'+','') + CONVERT(varchar, c.ParamNo) FROM [dbo].[Split](',', @ActionParamNames) s JOIN dbo.CustomParamList c ON s.[Value]=c.ParamName ORDER BY s.RowID SET @ActionParamNumbers= SUBSTRING(@ActionParamNumbers,2, LEN(@ActionParamNumbers) ) IF @ActionParamValues<>'' SET @ActionParamValues = REPLACE(REPLACE(@ActionParamValues,'Append','a'),'Replace','r') SET @SelectedWidgets = REPLACE(@SelectedWidgets,',','+') EXEC [dbo].[EAUI_CopyProfile_104] @UserID,@UserIP,@SrcCustID,@SrcGroupID, @SrcProfID,@TargetCustID,@TargetGroupID,@TargetProfID, @ParamNumbers, @ActionParamNumbers, @ActionParamValues, @SelectedDbs, @SelectedDbGroups, @SelectedWidgets, @SelectedToolbars END
--sql content merged from file: \StoredProcedures\EAUI_GetProfCustGroupDbList_86.sql CREATE PROCEDURE [dbo].[EAUI_GetProfCustGroupDbList_86](@ProfNo int, @LangCode varchar(10) )AS BEGIN DECLARE @interfaceId varchar(10), @version varchar(10),@marketID varchar(20), @sTMode char(1), @showDefaultGroups nvarchar(10) Select @interfaceId=[dbo].[Profile].[InterfaceID],@version=[dbo].[Profile].[Version],@marketID=[dbo].[Profile].[MarketID],@sTMode=[dbo].[Profile].[STMode] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo -- Get the Param Value SET @showDefaultGroups=dbo.EAIF_GetCustomParamScalarValue_70('showDefaultEPDatabaseGroup',@interfaceId,@version,@marketID,@sTMode,@ProfNo,'P') IF @showDefaultGroups = N'0' -- Do not show Default EPDatabase Groups BEGIN SELECT pg.GroupNo, 'C' AS GroupType, ISNULL(pgc.Caption,N'') AS Caption, dbo.EAIF_GetProfCustGroupDbList_86(@ProfNo,pg.GroupNo) AS GroupDbList, pg.Show, pg.SelDefault, pg.SeqNo, CONVERT( varchar, pg.GroupNo) As dbGroup FROM [dbo].[ProfCustGroupList] pg LEFT OUTER JOIN [dbo].[ProfCustGroupCaption] pgc ON pg.ProfNo = pgc.ProfNo AND pg.GroupNo = pgc.GroupNo AND pgc.LangCode=@LangCode WHERE pg.ProfNo = @ProfNo ORDER BY pg.SeqNo, Caption END ELSE -- Show Default EP Database Groups i.e. @showDefaultGroups = '1' BEGIN SELECT pg.GroupNo, 'C' AS GroupType, ISNULL(pgc.Caption,N'') AS Caption, dbo.EAIF_GetProfCustGroupDbList_86(@ProfNo,pg.GroupNo) AS GroupDbList, pg.Show, pg.SelDefault, pg.SeqNo, CONVERT( varchar, pg.GroupNo) As dbGroup FROM [dbo].[ProfCustGroupList] pg LEFT OUTER JOIN [dbo].[ProfCustGroupCaption] pgc ON pg.ProfNo = pgc.ProfNo AND pg.GroupNo = pgc.GroupNo AND pgc.LangCode=@LangCode WHERE pg.ProfNo = @ProfNo UNION SELECT gl.GroupNo, 'G' AS GroupType, ISNULL(pgc.Caption,ISNULL(gc.Caption,N'')) AS Caption, dbo.EAIF_GetProfGroupDbList_86(@ProfNo,gl.GroupNo) AS GroupDbList, ISNULL(pgl.Show,1) AS Show, ISNULL(pgl.SelDefault,0) AS SelDefault, ISNULL(pgl.SeqNo, 0) AS SeqNo, ISNULL(gl.GroupID,'') as dbGroup FROM [dbo].[GroupList] gl LEFT OUTER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo = gc.GroupNo AND gc.LangCode = @LangCode LEFT OUTER JOIN [dbo].[ProfGroupCaption] pgc ON pgc.ProfNo=@ProfNo AND pgc.GroupNo=gc.GroupNo AND pgc.LangCode = @LangCode LEFT OUTER JOIN [dbo].[ProfGroupList] pgl ON pgl.ProfNo=@ProfNo AND gl.GroupNo=pgl.GroupNo INNER JOIN [dbo].[DbGroup] gdb ON gl.GroupNo = gdb.GroupNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = gdb.DbVerNo WHERE pdb.ProfNo=@ProfNo AND (pdb.Mode is null OR (pdb.Mode<>'X')) AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) ORDER BY [pg].[SeqNo], Caption END END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseBibMap_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @BibField int, @FieldTag varchar(2) ) AS BEGIN DECLARE @BibFieldAsText varchar(20) SELECT @BibFieldAsText=CONVERT(varchar,@BibField) IF EXISTS ( SELECT 1 FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName AND [dbo].[DbBibMap].[BibField] = @BibField ) BEGIN RAISERROR('The BibField %s already exists for this database segment. Insert failed',16,-1, @BibFieldAsText) RETURN END DECLARE @SeqNo int SELECT @SeqNo=ISNULL(Max([dbo].[DbBibMap].[SeqNo]),0)+1 FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName INSERT INTO [dbo].[DbBibMap] ( [dbo].[DbBibMap].[DbVerNo], [dbo].[DbBibMap].[SegName], [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag], [dbo].[DbBibMap].[SeqNo] ) VALUES ( @DbVerNo, @SegName, @BibField, @FieldTag, @SeqNo ) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Bib Map', 'Segment:', @SegName,'Field:',@BibFieldAsText,'Tag:',@FieldTag END
CREATE PROCEDURE [dbo].[EPCS_GetProfAFiles_70]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN SELECT [c].[CustID], [c].[ColID], [c].[ColName] FROM [dbo].[ProfLocalAuthority] p INNER JOIN [dbo].[Collection] c ON c.ColNo = p.ColNo WHERE [p].[ProfNo] = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) AND c.IsDeleted = 0 END
--sql content merged from file: \StoredProcedures\AUTH_GetProfiles_70.sql CREATE PROCEDURE dbo.AUTH_GetProfiles_70(@CustID varchar(10), @GroupID varchar(10), @SiteID varchar(10), @MobileFirst bit=0) AS BEGIN SET NOCOUNT ON DECLARE @EhISSiteURL nvarchar(255) SELECT @EhISSiteURL=v.ParamValue FROM [dbo].[ConfigApplication] c INNER JOIN [dbo].[ConfigParamList] l ON c.ApplicationNo=l.ApplicationNo AND c.ApplicationID='webauth' AND l.ParamName='ehisUrl' INNER JOIN [dbo].[ConfigParamScalarValues] v ON l.ParamNo=v.ParamNo AND v.TargetNo=l.ApplicationNo Declare @TempProfiles table (ProfID varchar(10), ProfName nvarchar(100), SiteID varchar(10), SiteUrl nvarchar(255), PassingMode varchar(10), ProfPwd varchar(10), DefLangCode varchar(10), DefView varchar(2000), InterfaceID varchar(10), Version varchar(10), NewWin bit, SeqNo int, IsMobile bit) IF @SiteID <> '' Insert @TempProfiles Select b.ProfID, b.ProfName, a.SiteID, dbo.EAIF_MakeUrlSecure_86( dbo.EAIF_ConvertSiteURLToEhIS_97(b.ProfNo,IsNull(b.URL,a.SiteURL), @EhISSiteURL,0), dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'useHttpsAuthentication')) AS SiteURL, a.PassingMode, b.ProfPwd, b.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'defaultView') AS DefView, a.InterfaceID, a.Version, a.NewWin, b.SeqNo, a.IsMobile From [dbo].[InterfaceVersion] AS a INNER JOIN [dbo].[Profile] AS b ON a.InterfaceID= b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[Interface] AS i ON a.InterfaceID=i.InterfaceID Where (a.SiteID = @SiteID OR a.InterfaceID=@SiteID) AND b.CustID = @CustID AND b.GroupID = @GroupID AND a.SiteURL <>'' AND (Exists (select 1 from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo]=b.ProfNo and ([dbo].[ProfDatabase].[Mode] is null OR [dbo].[ProfDatabase].[Mode]<>'X') and [dbo].[ProfDatabase].[Enable]=1 and ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], getdate())<0)) OR i.ClientType<>'web') --Order By b.SeqNo,b.ProfName ELSE Insert @TempProfiles Select b.ProfID, b.ProfName, a.SiteID, dbo.EAIF_MakeUrlSecure_86( dbo.EAIF_ConvertSiteURLToEhIS_97(b.ProfNo,IsNull(b.URL,a.SiteURL), @EhISSiteURL,0), dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'useHttpsAuthentication')) AS SiteURL, a.PassingMode, b.ProfPwd, b.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'defaultView') AS DefView,a.InterfaceID, a.Version,a.NewWin, b.SeqNo, a.IsMobile From [dbo].[InterfaceVersion] AS a INNER JOIN [dbo].[Profile] AS b ON a.InterfaceID= b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[Interface] AS i ON a.InterfaceID=i.InterfaceID Where b.CustID = @CustID AND b.GroupID = @GroupID AND a.SiteURL <>'' AND (Exists (select 1 from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo]=b.ProfNo and ([dbo].[ProfDatabase].[Mode] is null OR [dbo].[ProfDatabase].[Mode]<>'X') and [dbo].[ProfDatabase].[Enable]=1 and ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], getdate())<0)) OR i.ClientType<>'web') --Order By b.SeqNo,b.ProfName if @MobileFirst=0 Select * from @TempProfiles Order by SeqNo, ProfName else Select * from @TempProfiles Order by IsMobile desc, SeqNo, ProfName END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceLanguageList_70](@InterfaceID varchar(10), @InterfaceVersion varchar(10)) AS BEGIN SELECT [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName] As Description FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@InterfaceVersion ORDER BY [dbo].[InterfaceUserLangList].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIS_GetEOCustList_70] AS BEGIN DECLARE @ParamNo smallint SET @ParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineCustID','P') SELECT DISTINCT c.CustID, b.ParamValue FROM [dbo].[CustomParamScalarValues] b INNER JOIN [dbo].[Profile] c ON b.TargetNo = c.ProfNo WHERE b.ParamNo=@ParamNo AND b.ParamLevel='P' AND b.ParamValue IS NOT NULL AND b.ParamValue <> '' END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalCollectionList]( @CustomerID varchar(10) ) AS BEGIN SELECT distinct c.ColID, c.Exclude FROM [dbo].[Collection] c INNER JOIN [dbo].[LocalTitle] l ON ( c.ColNo = l.ColNo OR c.SharedFrom=l.ColNo) WHERE c.CustID = @CustomerID AND (c.AutoRecreate=1 OR c.ForceRecreate=1) AND c.IsDeleted = 0 END
CREATE PROCEDURE [dbo].[EAUI_GetDbLimiterList_70] (@DbVerNo int) AS BEGIN SELECT ll.LimiterNo, dl.SeqNo, ll.LimiterId, dc.Caption, lc.ControlName, ISNULL(dl.SearchString,'') AS SearchString, ll.HelpUrl FROM [dbo].[DbLimiter] dl JOIN [dbo].[LimiterList] ll ON (dl.LimiterNo = ll.LimiterNo) LEFT OUTER JOIN [dbo].[DbLimiterCaption] dc ON (dl.LimiterNo = dc.LimiterNo AND dl.DbVerNo = dc.DbVerNo AND dc.LangCode = 'en') JOIN [dbo].[LimiterControlType] lc ON (ll.ControlType = lc.ControlType) WHERE dl.DbVerNo = @DbVerNo ORDER BY dl.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_UpdateDbInterfaceLimiterOrder_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterList varchar(8000), @OrderList varchar(8000)) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) DECLARE @Interface varchar(10) DECLARE @Version varchar(10) DECLARE @ScreenDescr nvarchar(255) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID], @Version =[dbo].[InterfaceScreen].[Version], @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @AutoAddLmiter bit SELECT @AutoAddLmiter=[dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo BEGIN TRANSACTION IF @AutoAddLmiter=1 BEGIN EXEC [dbo].[EAIP_UpdateDbInterfaceLimiterOrderAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo,@LimiterList, @OrderList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Db Interfcae Limiter order', 16, -1) RETURN END END ELSE BEGIN EXEC [dbo].[EAIP_UpdateDbInterfaceLimiterOrderNoAutoAdd_76] @DbVerNo, @ScreenNo, @GroupNo,@LimiterList, @OrderList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RAISERROR('Update failed for Modify Db Interfcae Limiter order', 16, -1) RETURN END END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Limiter','Update Db Interface Limiter Order', @Interface, @Version, @ScreenDescr COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseForms_70]( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbForm] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbForm].[FormNumber],[dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding],[dbo].[DbForm].[Category] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateFeatureVaues_80](@UserID nvarchar(20),@UserIP varchar(15), @FeatureNo int, @ItemNo int, @FieldsXML nvarchar(max)) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[FeatureValues] SET [dbo].[FeatureValues].[FieldValueXml] =@FieldsXML WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo AND [dbo].[FeatureValues].[ItemNo]=@ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Category varchar(20) DECLARE @Name varchar(50) SELECT @Category=[dbo].[FeatureList].[Category], @Name=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Update Feature Values', @Category, @Name, @ItemNo COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetProfDbLimiterCaption_70(@ProfNo int, @DbVerNo int, @LimiterNo int, @LangCode varchar(10)) RETURNS nvarchar(100) AS BEGIN DECLARE @Caption nvarchar(100) SELECT @Caption=[dbo].[ProfDbLimiterCaption].[Caption] FROM [dbo].[ProfDbLimiterCaption] WHERE [dbo].[ProfDbLimiterCaption].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiterCaption].[DbVerNo]=@DbVerNo AND [dbo].[ProfDbLimiterCaption].[LimiterNo]=@LimiterNo AND [dbo].[ProfDbLimiterCaption].[LangCode]=@LangCode IF @Caption IS NULL SELECT @Caption=[dbo].[DbLimiterCaption].[Caption] FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo]=@LimiterNo AND [dbo].[DbLimiterCaption].[LangCode]=@LangCode IF @Caption IS NULL SELECT @Caption=[dbo].[DbLimiterCaption].[Caption] FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo]=@LimiterNo AND [dbo].[DbLimiterCaption].[LangCode]='en' RETURN @Caption END
CREATE PROCEDURE [dbo].[EAUI_GetCtrlCustListBrowseByCustName_70](@CustName nvarchar(100)) as BEGIN SELECT DISTINCT a.CustID, a.CustName FROM [dbo].[Customer] a INNER JOIN EASUPPORT.dbo.CustSubscription b ON a.CustID = b.CtrlCustID WHERE a.CustName LIKE @CustName + '%' AND b.CtrlCustID IS NOT NULL ORDER BY a.CustName END
CREATE PROCEDURE [dbo].[EAIP_AttachCVTypeFilterToDatabase_163](@UserID nvarchar(20), @UserIP varchar(30), @ContentVerticalFilterID VARCHAR(30), @DbName VARCHAR(10), @DbLabel VARCHAR(10)) AS BEGIN DECLARE @DbVerNo INT Declare @ContentVerticalFilterNo INT DECLARE @ContentVerticalNo INT IF LEN(@ContentVerticalFilterID)>25 BEGIN RAISERROR('The Content Vertical Filter ID can not contain more then 25 characters', 16, -1) RETURN END SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM dbo.DbList WITH (NOLOCK) WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @DbVerNo IS NULL BEGIN RAISERROR('The DbName/DbLabel (%s)/(%s) does not exist ', 16, -1, @DbName, @DbLabel) RETURN END SELECT @ContentVerticalFilterNo=[dbo].[ContentVerticalFilter].[ContentVerticalFilterNo],@ContentVerticalNo=[dbo].[ContentVerticalFilter].[ContentVerticalNo] FROM dbo.ContentVerticalFilter WITH (NOLOCK) WHERE [dbo].[ContentVerticalFilter].[ContentVerticalFilterID]=@ContentVerticalFilterID IF @ContentVerticalFilterNo IS NULL BEGIN RAISERROR('The Content Vertical Filter (%s) does not exist ', 16, -1, @ContentVerticalFilterID) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[DbCVFilter] WHERE [dbo].[DbCVFilter].[DbVerNo]=@DbVerNo AND [dbo].[DbCVFilter].[ContentVerticalFilterNo]=@ContentVerticalFilterNo) BEGIN RAISERROR('Content Vertical Filter (%s) is already attached to the DbName/DbLabel (%s)/(%s)', 16, -1, @ContentVerticalFilterID, @DbName, @DbLabel) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[ContentVerticalFilter] cvf JOIN [dbo].[DbCVFilter] dbf ON dbf.ContentVerticalFilterNo=cvf.ContentVerticalFilterNo WHERE dbf.DbVerNo = @DbVERNo AND cvf.ContentVerticalNo = @ContentVerticalNo) BEGIN DECLARE @ContentVerticalID VARCHAR(20) SELECT @ContentVerticalID=[dbo].[ContentVerticalType].[ContentVerticalID] FROM dbo.ContentVerticalType WHERE [dbo].[ContentVerticalType].[ContentVerticalNo] = @ContentVerticalNo RAISERROR('Another Content Vertical Filter assotiated with the same Content Vertical Type is already attached to the DbName/DbLabel (%s)/(%s)', 16, -1, @DbName, @DbLabel) RETURN END BEGIN TRY BEGIN TRANSACTION INSERT [dbo].[DbCVFilter] ([dbo].[DbCVFilter].[DbVerNo], [dbo].[DbCVFilter].[ContentVerticalFilterNo]) VALUES (@DbVerNo, @ContentVerticalFilterNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'ContentVertical','Attach CVFilter to database',@ContentVerticalFilterID , @DbName , @DbLabel COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAIP_GetDbFieldGroupLangCaption_70](@DbVerNo int, @FieldGroupNo int, @LangCode varchar(10)) AS BEGIN SELECT [dbo].[DbFieldGroupCaption].[Caption] FROM [dbo].[DbFieldGroupCaption] WHERE [dbo].[DbFieldGroupCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupCaption].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupCaption].[LangCode]=@LangCode END
CREATE PROCEDURE [dbo].[EAUI_InterfaceLanguageDelete_81](@UserID nvarchar(20),@UserIP varchar(15),@InterfaceID varchar(10),@Version varchar(10), @LangCode varchar(10))AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID] =@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version AND [dbo].[InterfaceUserLangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Delete Language', @InterfaceID, @Version, @LangCode COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbParamXmlValues(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS ParamNo, [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[ParamValue], [dbo].[DbParamXmlValues].[SeqNo], [dbo].[DbParamList].[ParamName] AS ParamName FROM [dbo].[DbParamXmlValues] LEFT JOIN [dbo].[DbParamList] ON [dbo].[DbParamList].[ParamNo] = [dbo].[DbParamXmlValues].[ParamNo] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, ParamNo, [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[SeqNo] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCustomerProxy_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255))AS BEGIN BEGIN TRANSACTION -- Remove proxy from all the profiles that use this proxy DECLARE @ParamNoPirmary int DECLARE @ParamNoSec int declare @guestAccessProxyParamNo INT DECLARE @gustAccessAuthTypeParamNo INT SELECT @ParamNoPirmary=dbo.EAIF_GetCustomParamNumber_70('durableLinkPrimaryProxy','P') SELECT @ParamNoSec=dbo.EAIF_GetCustomParamNumber_70('durableLinkSecondaryProxy','P') select @guestAccessProxyParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='guestAccessProxy' select @gustAccessAuthTypeParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='guestAccessAuthType' --- declare @t table(TargetNo varchar(100)) insert into @t select [a].[TargetNo] FROM [dbo].[CustomParamScalarValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo=b.ProfNo WHERE b.CustID=@CustID AND [a].[ParamLevel]='P' AND ([a].[ParamNo]=@ParamNoPirmary OR [a].[ParamNo]=@ParamNoSec) AND [a].[ParamValue]=@ItemName DELETE a FROM [dbo].[CustomParamScalarValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo=b.ProfNo WHERE b.CustID=@CustID AND [a].[ParamLevel]='P' AND ([a].[ParamNo]=@ParamNoPirmary OR [a].[ParamNo]=@ParamNoSec) AND [a].[ParamValue]=@ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') EXEC [dbo].[EAIP_DeleteCustomParamXmlValue_70] @CustNo, 'C', @ParamNo, @ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Delete [dbo].[CustomParamScalarValues] from [dbo].[CustomParamScalarValues] cpsv join (Select a.* from (select cpsv.* from [dbo].[CustomParamScalarValues] cpsv join [dbo].[Profile] p on cpsv.TargetNo=p.ProfNo and [p].[CustID]=@CustID where [cpsv].[ParamLevel]='P' and [cpsv].[ParamNo]=@guestAccessProxyParamNo) a left outer join (select cpsv.* from [dbo].[CustomParamScalarValues] cpsv join [dbo].[Profile] p on cpsv.TargetNo=p.ProfNo and [p].[CustID]=@CustID where [cpsv].[ParamLevel]='P' and [cpsv].[ParamNo] in (@ParamNoPirmary, @ParamNoSec)) b on a.ParamValue=b.ParamValue where b.TargetNo is null) a on cpsv.TargetNo=a.TargetNo and cpsv.ParamLevel=a.ParamLevel and cpsv.ParamNo=a.ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Scalar Profile Parameter', @CustID, guestAccessProxy, null delete from [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[ParamNo] = @gustAccessAuthTypeParamNo and [dbo].[CustomParamScalarValues].[TargetNo] in (select TargetNo from @t) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Scalar Profile Parameter', @CustID, guestAccessAuthType, NULL UPDATE [dbo].[CustomParamEhostConnect] SET [dbo].[CustomParamEhostConnect].[UseProxy]=0, [dbo].[CustomParamEhostConnect].[ProxyID]=null WHERE [dbo].[CustomParamEhostConnect].[CustID] = @CustID AND [dbo].[CustomParamEhostConnect].[ProxyID]=@ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP,'Site/Group','Delete Proxy',@CustID,@ItemName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[UTIL_WaitForReplicationComplete_224] @XactId BIGINT, -- CURRENT_TRANSACTION_ID() can be used to provide the parameter's value @WaitSec SMALLINT = 10 AS BEGIN DECLARE @Start DATETIME = GETDATE(), @DbName NVARCHAR(128) = DB_NAME(), @ReplicationComplete BIT = 0, @CheckLsn NUMERIC(25,0); SELECT @CheckLsn = r.last_commit_lsn FROM sys.dm_hadr_database_replica_states r INNER JOIN sys.databases db ON r.database_id = db.database_id WHERE db.name = @DbName AND r.is_primary_replica = 1 WHILE @ReplicationComplete = 0 AND DATEDIFF(s, @Start, GETDATE()) < @WaitSec BEGIN WAITFOR DELAY '00:00:03' SELECT @ReplicationComplete = CASE WHEN MIN(last_commit_lsn) < @CheckLsn THEN 0 ELSE 1 END FROM sys.dm_hadr_database_replica_states r INNER JOIN sys.databases db ON r.database_id = db.database_id WHERE db.name = @DbName AND last_commit_lsn > 0; END IF @ReplicationComplete = 0 BEGIN DECLARE @CheckLsnStr VARCHAR(25) = CONVERT(VARCHAR(25), @CheckLsn); RAISERROR(N'Replication did not complete for Xact ID %I64i, TranLsn %s', 16, -1, @XactId, @CheckLsnStr); RETURN; END END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceScreens_76] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[DbInterfaceLimiter] FROM [dbo].[DbInterfaceLimiter] AS dil INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = dil.IntfScreenNo WHERE ins.InterfaceID = @InterfaceIDTo AND ins.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[InterfaceLimiterGroup] FROM [dbo].[InterfaceLimiterGroup] AS ilg INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = ilg.IntfScreenNo WHERE ins.InterfaceID = @InterfaceIDTo AND ins.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[DbInterfaceSearchOption] FROM [dbo].[DbInterfaceSearchOption] AS iso INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = iso.IntfScreenNo WHERE ins.InterfaceID = @InterfaceIDTo AND ins.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[DbInterfaceBrowseOption] FROM [dbo].[DbInterfaceBrowseOption] AS ibo INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = ibo.IntfScreenNo WHERE ins.InterfaceID = @InterfaceIDTo AND ins.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceIDTo AND [dbo].[InterfaceScreen].[Version] = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceScreen] ([dbo].[InterfaceScreen].[InterfaceID],[dbo].[InterfaceScreen].[Version],[dbo].[InterfaceScreen].[ScreenID],[dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[AutoAddLimiter],[dbo].[InterfaceScreen].[LimiterShow],[dbo].[InterfaceScreen].[LibSearchOption],[dbo].[InterfaceScreen].[LibBrowseOption],[dbo].[InterfaceScreen].[LibDbLimiters], [dbo].[InterfaceScreen].[LibLocalLimiters],[dbo].[InterfaceScreen].[SearchOptionNote],[dbo].[InterfaceScreen].[BrowseOptionNote],[dbo].[InterfaceScreen].[SeqNo],[dbo].[InterfaceScreen].[AutoAddMDbLimiter]) SELECT @InterfaceIDTo,@VersionTo,[dbo].[InterfaceScreen].[ScreenID],[dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[AutoAddLimiter],[dbo].[InterfaceScreen].[LimiterShow],[dbo].[InterfaceScreen].[LibSearchOption],[dbo].[InterfaceScreen].[LibBrowseOption],[dbo].[InterfaceScreen].[LibDbLimiters], [dbo].[InterfaceScreen].[LibLocalLimiters],[dbo].[InterfaceScreen].[SearchOptionNote],[dbo].[InterfaceScreen].[BrowseOptionNote],[dbo].[InterfaceScreen].[SeqNo],[dbo].[InterfaceScreen].[AutoAddMDbLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceIDFrom AND [dbo].[InterfaceScreen].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @TmpTable TABLE (tmpIntfScreenNo int, tmpScreenID varchar(10)) INSERT INTO @TmpTable(tmpIntfScreenNo, tmpScreenID) SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[ScreenID] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceIDTo AND [dbo].[InterfaceScreen].[Version] = @VersionTo INSERT INTO [dbo].[InterfaceLimiterGroup] ([ilg].[IntfScreenNo],[ilg].[GroupNo],[ilg].[Description]) SELECT tmp.tmpIntfScreenNo, ilg.GroupNo, ilg.Description FROM [dbo].[InterfaceLimiterGroup] AS ilg INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo=ilg.IntfScreenNo INNER JOIN @TmpTable AS tmp ON ins.ScreenID=tmp.tmpScreenID WHERE ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom AND ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbInterfaceLimiter] ([dil].[DbVerNo],[dil].[IntfScreenNo],[dil].[LimiterNo],[dil].[ControlType],[dil].[Show],[dil].[DefValue],[dil].[GroupNo],[dil].[SeqNo]) SELECT dil.DbVerNo,tmp.tmpIntfScreenNo,dil.LimiterNo,dil.ControlType,dil.Show,dil.DefValue,dil.GroupNo,dil.SeqNo FROM [dbo].[DbInterfaceLimiter] AS dil INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = dil.IntfScreenNo INNER JOIN @TmpTable AS tmp ON ins.ScreenID=tmp.tmpScreenID WHERE ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom AND ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbInterfaceSearchOption] ([iso].[DbVerNo],[iso].[IntfScreenNo],[iso].[SearchOptionNo],[iso].[Show],[iso].[SeqNo]) SELECT iso.DbVerNo,tmp.tmpIntfScreenNo,iso.SearchOptionNo,iso.Show,iso.SeqNo FROM [dbo].[DbInterfaceSearchOption] AS iso INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = iso.IntfScreenNo INNER JOIN @TmpTable AS tmp ON ins.ScreenID = tmp.tmpScreenID WHERE ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom AND ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbInterfaceBrowseOption] ([ibo].[DbVerNo],[ibo].[IntfScreenNo],[ibo].[BrowseOptionNo],[ibo].[Show],[ibo].[SeqNo]) SELECT ibo.DbVerNo,tmp.tmpIntfScreenNo,ibo.BrowseOptionNo,ibo.Show,ibo.SeqNo FROM [dbo].[DbInterfaceBrowseOption] AS ibo INNER JOIN [dbo].[InterfaceScreen] AS ins ON ins.IntfScreenNo = ibo.IntfScreenNo INNER JOIN @TmpTable AS tmp ON ins.ScreenID = tmp.tmpScreenID WHERE ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom AND ins.InterfaceID = @InterfaceIDFrom AND ins.Version = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CreateCustomerCustomLink_153] ( @CustID VARCHAR(10) , @PrdOffID VARCHAR(10) ) AS BEGIN DECLARE @SystemCustNo INT DECLARE @CustNo INT DECLARE @i INT DECLARE @Count INT DECLARE @ItemName VARCHAR(255) DECLARE @SystemCustomLinkParamNo INT DECLARE @SystemCustomLinkParamValue XML DECLARE @CustomerCustomLinkParamNo INT DECLARE @xmlString NVARCHAR(MAX) DECLARE @LinkName_Encoded NVARCHAR (255) DECLARE @LinkName_Decoded NVARCHAR (255) --- Data from System CustomLink DECLARE @LinkName VARCHAR(255) , @LinkText NVARCHAR(255) , @BaseURL NVARCHAR(1000) , @reqField VARCHAR(1000) , @linkIcon VARCHAR(500) , @queryString VARCHAR(500) , @windowParams VARCHAR(100) , @windowName VARCHAR(100) , @newWindow VARCHAR(10) , @hideIfFullText VARCHAR(10) , @showIfLocal VARCHAR(10) , @showOnResultList VARCHAR(10) , @showOnDetailDisplay VARCHAR(10) , @showOnPublicationList VARCHAR(10) , @targetUsesRefURL VARCHAR(10) , @showOnLinkSource VARCHAR(10) , @linkSourceID VARCHAR(100) , @MouseOverText VARCHAR(255) , @LinkCategory VARCHAR(100) , @reqFields VARCHAR(1000) , @hideHelperFor VARCHAR(10) , @Instructions VARCHAR(1000) DECLARE @ccXml XML DECLARE @ccXmlTemplate XML SET NOCOUNT ON DECLARE @ItemTable TABLE ( ID INT IDENTITY(1, 1) , ItemName VARCHAR(255) UNIQUE Nonclustered ) SET @i = 1 --Load the customerCustomLink template first SET @ccXmlTemplate = '' SELECT @CustNo = [dbo].[Customer].[CustNo] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID SELECT @SystemCustNo = [dbo].[Customer].[CustNo] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = 'system' SELECT @SystemCustomLinkParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'systemCustomLink' SELECT @CustomerCustomLinkParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'CustomerCustomLink' INSERT INTO @ItemTable ( ItemName ) SELECT [pos].[ItemName] FROM EASUPPORT.dbo.ProductOfferingSystemLinks pos WHERE pos.PrdOffID = @PrdOffID SELECT @Count = COUNT(ID) FROM @ItemTable WHILE ( @i <= @Count ) BEGIN SELECT @ItemName = ItemName FROM @ItemTable WHERE ID = @i SET @ccXml = @ccXmlTemplate; SET @SystemCustomLinkParamValue = NULL SET @LinkName_Encoded = NULL SET @LinkName_Decoded = NULL SELECT @SystemCustomLinkParamValue = [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @SystemCustNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @SystemCustomLinkParamNo AND [dbo].[CustomParamXmlValues].[ItemName] = @ItemName IF @SystemCustomLinkParamValue IS NOT NULL BEGIN SELECT @LinkName = s.n.value('@linkName', 'nvarchar(255)') FROM @SystemCustomLinkParamValue.nodes('systemCustomLink') s ( n ) SET @LinkName_Decoded = REPLACE(@LinkName, '&', '&'); SET @LinkName_Encoded = REPLACE(@LinkName, '&', '&'); IF NOT EXISTS ( SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @CustomerCustomLinkParamNo AND dbo.EAIF_GetXmlAttribValue_70([dbo].[CustomParamXmlValues].[ParamValue], 'linkName') IN (@LinkName, @LinkName_Decoded, @LinkName_Encoded )) BEGIN --Get the XML values from System Custom link first SELECT @LinkName = s.n.value('@linkName', 'nvarchar(255)') , @LinkText = s.n.value('linkText[1][@lang="en"]', 'nvarchar(255)') , @Instructions = s.n.value('instructions[1][@lang="en"]', 'nvarchar(1000)') , @MouseOverText = s.n.value('mouseOverText[1][@lang="en"]', 'nvarchar(255)') , @LinkCategory = s.n.value('@linkCategory', 'varchar(100)') , @BaseURL = s.n.value('@baseURL', 'nvarchar(1000)') , @reqFields = s.n.value('@reqFields', 'varchar(1000)') , @linkIcon = s.n.value('@linkIcon', 'varchar(500)') , @queryString = s.n.value('@queryString', 'nvarchar(500)') , @windowParams = s.n.value('@windowParams', 'varchar(100)') , @windowName = s.n.value('@windowName', 'varchar(100)') , @newWindow = s.n.value('@newWindow', 'varchar(10)') , @hideIfFullText = s.n.value('@hideIfFullText', 'varchar(10)') , @showIfLocal = s.n.value('@showIfLocal', 'varchar(10)') , @showOnResultList = s.n.value('@showOnResultList', 'varchar(10)') , @showOnDetailDisplay = s.n.value('@showOnDetailDisplay', 'varchar(10)') , @showOnPublicationList = s.n.value('@showOnPublicationList', 'varchar(10)') , @targetUsesRefURL = s.n.value('@targetUsesRefURL', 'varchar(10)') , @showOnLinkSource = s.n.value('@showOnLinkSource', 'varchar(10)') , @linkSourceID = s.n.value('@linkSourceID', 'varchar(100)') , @hideHelperFor = s.n.value('@hideHelperFor', 'varchar(100)') FROM @SystemCustomLinkParamValue.nodes('systemCustomLink') s ( n ) -- Update the CustomerCustomLink Xml template with the values extract from System link xml SET @ccXml.modify('replace value of (/customerCustomLink/@linkName)[1] with sql:variable("@LinkName")') SET @ccXml.modify('replace value of (/customerCustomLink/@linkOrigin)[1] with "system"') SET @ccXml.modify('replace value of (/customerCustomLink/@origLinkName)[1] with sql:variable("@LinkName")') SET @ccXml.modify('replace value of (/customerCustomLink/@linkCategory)[1] with sql:variable("@LinkCategory")') SET @ccXml.modify('replace value of (/customerCustomLink/@baseURL)[1] with sql:variable("@BaseURL")') SET @ccXml.modify('replace value of (/customerCustomLink/@reqFields)[1] with sql:variable("@reqFields")') SET @ccXml.modify('replace value of (/customerCustomLink/@linkIcon)[1] with sql:variable("@linkIcon")') SET @ccXml.modify('replace value of (/customerCustomLink/@queryString)[1] with sql:variable("@queryString")') SET @ccXml.modify('replace value of (/customerCustomLink/@windowParams)[1] with sql:variable("@windowParams")') SET @ccXml.modify('replace value of (/customerCustomLink/@windowName)[1] with sql:variable("@windowName")') SET @ccXml.modify('replace value of (/customerCustomLink/@newWindow)[1] with sql:variable("@newWindow")') SET @ccXml.modify('replace value of (/customerCustomLink/@hideIfFullText)[1] with sql:variable("@hideIfFullText")') SET @ccXml.modify('replace value of (/customerCustomLink/@showIfLocal)[1] with sql:variable("@showIfLocal")') SET @ccXml.modify('replace value of (/customerCustomLink/@showOnResultList)[1] with sql:variable("@showOnResultList")') SET @ccXml.modify('replace value of (/customerCustomLink/@showOnDetailDisplay)[1] with sql:variable("@showOnDetailDisplay")') SET @ccXml.modify('replace value of (/customerCustomLink/@showOnPublicationList)[1] with sql:variable("@showOnPublicationList")') SET @ccXml.modify('replace value of (/customerCustomLink/@targetUsesRefURL)[1] with sql:variable("@targetUsesRefURL")') SET @ccXml.modify('replace value of (/customerCustomLink/@showOnCatalogHoldingTable)[1] with "no"') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@reqCatalogHoldingFields)[1] with ""') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@showOnPubFinderResults)[1] with "n"') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@showOnPubFinderDetails)[1] with "n"') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@useProxy)[1] with "n"') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@primaryProxy)[1] with "n"') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@secondaryProxy)[1] with "n"') ---Default SET @ccXml.modify('replace value of (/customerCustomLink/@showOnLinkSource)[1] with sql:variable("@showOnLinkSource")') SET @ccXml.modify('replace value of (/customerCustomLink/@linkSourceID)[1] with sql:variable("@linkSourceID")') SET @ccXml.modify('replace value of (/customerCustomLink/@hideHelperFor)[1] with sql:variable("@hideHelperFor")') SET @ccXml.modify('insert text {sql:variable("@LinkText")} into (/customerCustomLink/linkText)[1][@lang="en"]') SET @ccXml.modify('insert text {sql:variable("@MouseOverText")} into (/customerCustomLink/mouseOverText)[1][@lang="en"]') SET @ccXml.modify('insert text {sql:variable("@Instructions")} into (/customerCustomLink/instructions)[1][@lang="en"]') -- Convert the @ccXml to xmlstring as the procedure expects nvarchar string SET @xmlString = CONVERT(NVARCHAR(MAX), @ccXml, 1); EXEC [dbo].[EAUI_UpdateCustomerCustomLink_70] 'Subscription', '', @CustID, @CustID, @ItemName, @xmlString END --if not exists END --@SystemCustomLinkParamValue IS NOT NULL SELECT @i = @i + 1 END --While loop SET NOCOUNT Off END
CREATE PROCEDURE [dbo].[EAUI_GetProfCustGroupDbListForCopy_104](@ProfNo int, @LangCode varchar(10) )AS BEGIN SELECT pg.GroupNo, ISNULL(pgc.Caption,N'') AS Caption, dbo.EAIF_GetProfCustGroupDbList_86(@ProfNo,pg.GroupNo) AS GroupDbList, pg.Show, pg.SelDefault, pg.SeqNo, CONVERT( varchar, pg.GroupNo) As dbGroup FROM [dbo].[ProfCustGroupList] pg LEFT OUTER JOIN [dbo].[ProfCustGroupCaption] pgc ON pg.ProfNo = pgc.ProfNo AND pg.GroupNo = pgc.GroupNo AND pgc.LangCode=@LangCode WHERE pg.ProfNo = @ProfNo and (LEN(dbo.EAIF_GetProfCustGroupDbList_86(@ProfNo, pg.GroupNo)) > 0 ) ORDER BY [pg].[SeqNo], Caption END
--sql content merged from file: \StoredProcedures\EAUI_AddDatabaseFieldTag_70.sql CREATE PROCEDURE [dbo].[EAUI_AddDatabaseFieldTag_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @FieldTag varchar(2), @Description nvarchar(200), @IndexType varchar(10), @Category int, @FieldNumbers varchar(255), @ThesNumber int=null) AS BEGIN DECLARE @SeqNo int IF EXISTS (SELECT 1 FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName AND [dbo].[DbFieldTag].[FieldTag]=@FieldTag) BEGIN RAISERROR('Tag %s already exists for this database segment. Insert failed.',16,-1,@FieldTag) RETURN END SET @Description=Replace(@Description,N'_',N' ') -- bug in DDSUpdate EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Field', 'Segment:', @SegName,'Field:',@FieldTag SELECT @SeqNo=(ISNULL(MAX([dbo].[DbFieldTag].[SeqNo]),0) + 1) FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName AND [dbo].[DbFieldTag].[Category]=@Category INSERT INTO [dbo].[DbFieldTag] ([dbo].[DbFieldTag].[DbVerNo],[dbo].[DbFieldTag].[SegName],[dbo].[DbFieldTag].[FieldTag],[dbo].[DbFieldTag].[IndexType],[dbo].[DbFieldTag].[Category],[dbo].[DbFieldTag].[FieldNumbers],[dbo].[DbFieldTag].[ThesNumber],[dbo].[DbFieldTag].[SeqNo],[dbo].[DbFieldTag].[Description2]) VALUES (@DbVerNo,@SegName,@FieldTag,@IndexType,@Category,@FieldNumbers,@ThesNumber,@SeqNo,@Description) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert failed for field tag %s and database segment %s %s %s',16,-1,@FieldTag, @DbName, @DbLabel, @SegName) RETURN END END
CREATE PROCEDURE [dbo].[EPCS_GetProfAttributes_70] ( @CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10) ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @CustNo int DECLARE @GroupNo int DECLARE @InterfaceId varchar(10) DECLARE @Version varchar(10) DECLARE @MarketId varchar(20) DECLARE @STMode char(1) DECLARE @ExcludeParamsTable TABLE ( ParamNo int) SET @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SET @GroupNo = dbo.EAIF_GetGroupNo_70(@CustID,@GroupID) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF @ProfNo IS NULL RETURN -- Admin 10.0.Some new parameters have dependency on other parameter /table value. -- If it does not meet the dependency business rules, exclude it from the listing. Insert into @ExcludeParamsTable Select [dbo].[EAIF_GetProfileParamsTobeExcluded_133].[ParamNo] from dbo.EAIF_GetProfileParamsTobeExcluded_133 (@InterfaceID,@Version,@ProfNo,0) --begin of override visual screen if allow visual is off. DECLARE @SearchScreenParamName varchar(20) SET @SearchScreenParamName='searchScreen' DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @VisualSearchScreenNo varchar(10) DECLARE @SearchScreenNo varchar(10) SELECT @xmlText=ISNULL(d.ValueTemplate,'') FROM [dbo].[CustomParamList] l INNER JOIN [dbo].[CustomParamEditDetail] d ON l.ParamNo=d.ParamNo where l.ParamName=@SearchScreenParamName EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText SELECT @VisualSearchScreenNo=thetext FROM OPENXML (@xmlDocHandle, 'itemsCollection/items/item',1) WITH (theinterfaceid varchar(10) '../@interfaceid', thevalue varchar(255) '@text', thetext varchar(255) '@value') where theinterfaceid=@InterfaceID and thevalue='Visual' EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle IF @VisualSearchScreenNo is not null AND dbo.EAIF_GetCustomParamScalarValue_70('visualSearchPermitted',@InterfaceID,@Version,@MarketID,@STMode,@ProfNo,'P')=0 AND @VisualSearchScreenNo=dbo.EAIF_GetCustomParamScalarValue_70(@SearchScreenParamName,@InterfaceID,@Version,@MarketID,@STMode,@ProfNo,'P') SET @SearchScreenNo = '1'--basic ELSE SELECT @SearchScreenNo=dbo.EAIF_GetCustomParamScalarValue_70(@SearchScreenParamName,@InterfaceID,@Version,@MarketID,@STMode,@ProfNo,'P') --end of override visual screen --begin Admin 9.2 release - speical handling of profile parameter 'titleLinkPreference' to support live EpConfig client --This should be removed once the new Table (T) type takes effect. DECLARE @TitleLinkPreferenceValue varchar(100) SET @TitleLinkPreferenceValue = '' DECLARE @ParamNo int SET @ParamNo=dbo.EAIF_GetCustomParamNumber_70('titleLinkPreference','P') DECLARE @ItemsTable TABLE ( ItemID VARCHAR(10), SortValue VARCHAR(255) null) INSERT INTO @ItemsTable(ItemID) SELECT * FROM dbo.EAIF_GetTblParamItemsForProfDB_90(@ParamNo,@ProfNo) SELECT @TitleLinkPreferenceValue=@TitleLinkPreferenceValue+ti.ItemID FROM (SELECT top 30 i.ItemID, ISNULL(p.Value,(ISNULL(iv.Value,g.Value))) AS VALUE FROM [dbo].[CustomParamXmlFields] f with (nolock) INNER JOIN [dbo].[CustomParamTblItems] i with (nolock) ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g with (nolock) ON f.ParamNo=g.ParamNo AND i.ItemID = g.ItemID AND f.FieldNo=g.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv with (nolock) ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] p with (nolock) ON p.TargetNo = @ProfNO AND p.Level ='P' AND g.ParamNo=p.ParamNo AND g.ItemID=p.ItemID AND g.FieldNo=p.FieldNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.ParamNo=@ParamNo AND f.ReturnToClient=1 ORDER BY VALUE) ti --end titleLinkPreference -- added for 10.0 to support ebook / audio book parameters DECLARE @EbookAccessParamNo int DECLARE @AudiobookAccessParamNo int Declare @EONAccessParamNo int SET @EbookAccessParamNo=dbo.EAIF_GetCustomParamNumber_70('accessEbookSiteParam','C') SET @AudiobookAccessParamNo=dbo.EAIF_GetCustomParamNumber_70('accessAudiobookSiteParam','C') SET @EONAccessParamNo=dbo.EAIF_GetCustomParamNumber_70('accessEONSiteParam','C') -- end ebook / audio book parameters -- Profile Level Parameters that do not support "New Features" /* The pubBrowseFieldsToDisplay Parameter requirement has beenb removed. I am commenting out the code used to process that Paramater. I have created the EAIP_ParseIntToXml_133 on AdminDevSql but it has not been checked in or deployed to any other environment. -- if the pubBrowseFieldsToDisplay Parameter is not included in the list of Parameters to be excluded then we need to parse its value -- pubBrowseFieldsToDisplay is set from a CheckBoxList and therefore is being stored as an integer value -- this value will be parsed into the xml that EpConfigService will need and then ignored in the select statement here -- the parsed xml value will be selected with the other xml values below -- if other new parameters will be set using a CheckBoxList then these can follow this same pattern DECLARE @ParsedXmlParamsTable TABLE(ParamName VARCHAR(100), xmlValue NVARCHAR(MAX)) DECLARE @pubBrowseFieldsToDisplayParamName VARCHAR(100) SET @pubBrowseFieldsToDisplayParamName='pubBrowseFieldsToDisplay' SELECT @ParamNo=ParamNo FROM CustomParamList WHERE Paramname=@pubBrowseFieldsToDisplayParamName IF NOT EXISTS (SELECT 1 FROM @ExcludeParamsTable WHERE ParamNo=@ParamNo) INSERT @ParsedXmlParamsTable EXEC EAIP_ParseIntToXml_133 @ProfNo, @pubBrowseFieldsToDisplayParamName */ --10.0. Some new profile parameters have dependency on other parameter / table value. -- exclude the parameters in @ExcludeParamsTable ( these do not meet the dependency rules). SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(cpd.DefValue,cpl.DefValue)) as 'ParamValue' FROM [dbo].[CustomParamList] cpl LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@ProfNo AND csv.ParamLevel='P' AND cpl.ParamNo=csv.ParamNo LEFT OUTER JOIN @ExcludeParamsTable ep ON ep.ParamNo = cpl.ParamNo INNER JOIN [dbo].[InterfaceParamList] ipl ON cpl.ParamNo=ipl.ParamNo WHERE ipl.InterfaceID=@InterfaceID AND ipl.Version=@Version AND ParamType IN ('N', 'B','S', 'M') AND cpl.ParamName<>@SearchScreenParamName --AND cpl.ParamName<>@DisplayNewFeatureLinkParamName --AND cpl.ParamName<>@pubBrowseFieldsToDisplayParamName AND ipl.EditLevel<>-1 AND ep.ParamNo is null UNION ALL SELECT @SearchScreenParamName AS ParamName, 'N' As ParamType, @SearchScreenNo AS ParamValue UNION ALL --speical case for titleLinkPreference, as it was converted from 'S' to 'T' type, until the live Epconfig --clients are updated we need this here. SELECT 'titleLinkPreference' AS ParamName, 'S' As ParamType, @TitleLinkPreferenceValue AS ParamValue UNION ALL -- Group Level Parameters SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(cpd.DefValue,N'')) as 'ParamValue' FROM [dbo].[CustomParamList] cpl LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID='all' AND cpd.Version='all' AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@GroupNo AND csv.ParamLevel='G' AND cpl.ParamNo=csv.ParamNo WHERE cpl.ParamLevel='G' UNION ALL -- Customer Level Parameters SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(cpd.DefValue,N'')) as 'ParamValue' FROM [dbo].[CustomParamList] cpl LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID='all' AND cpd.Version='all' AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@CustNo AND csv.ParamLevel='C' AND cpl.ParamNo=csv.ParamNo WHERE cpl.ParamLevel='C' AND cpl.ParamName in ('enforceSimUsage','hasLinkSource','allowClustersOnEITIntf','logStatistics','allowUnlimitedAlerts', 'serveStaticFilesFromWebServer', 'logPersonalUserLevelTransactions', 'numPersUserAccounts' ,'enablePersonalUserLevelReporting', 'usesIPWhiteList') UNION ALL -- Site Level Parameters for ebook. They are Customer level parameters and have NO interface level defaults/customization. -- external customer(s) NEED valid subscription to ebook for the parameters to be included; Internal customers get it all the time. SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(t.DefValue, cpl.DefValue)) as 'ParamValue' FROM [dbo].[CustomParamList] cpl INNER JOIN [dbo].[Customer] c ON c.CustNo = @CustNo LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@CustNo AND csv.ParamLevel='C' AND cpl.ParamNo=csv.ParamNo LEFT JOIN [dbo].[CustomParamScalarValues] csve ON csve.TargetNo=@CustNo AND csve.ParamLevel='C' AND csve.ParamNo=@EbookAccessParamNo LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] t ON t.ParamNo =cpl.ParamNo AND t.CustType = c.CustType WHERE cpl.ParamLevel='C' AND ((c.CustType <> 'I' AND csve.ParamValue = '1' AND cpl.ParamName like '%ebook%') OR (c.CustType = 'I' AND cpl.ParamName like '%ebook%' )) UNION ALL -- Site Level Parameters for audiobook. They are Customer level parameters and have NO interface level defaults/customization. -- external customer(s) NEED valid subscription to audiobook for the parameters to be included; Internal customers get it all the time. SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(t.DefValue, cpl.DefValue)) as 'ParamValue' FROM [dbo].[CustomParamList] cpl INNER JOIN [dbo].[Customer] c ON c.CustNo = @CustNo LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@CustNo AND csv.ParamLevel='C' AND cpl.ParamNo=csv.ParamNo LEFT JOIN [dbo].[CustomParamScalarValues] csva ON csva.TargetNo=@CustNo AND csva.ParamLevel='C' AND csva.ParamNo=@AudiobookAccessParamNo LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] t ON t.ParamNo =cpl.ParamNo AND t.CustType = c.CustType WHERE cpl.ParamLevel='C' AND ((c.CustType <> 'I' AND csva.ParamValue = '1' AND cpl.ParamName like '%audiobook%') OR (c.CustType = 'I' AND cpl.ParamName like '%audiobook%')) UNION ALL -- Site Level Parameters for EON. They are Customer level parameters and have NO interface level defaults/customization. -- external customer(s) NEED valid subscription to EON for the parameters to be included; Internal customers get it all the time. SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(t.DefValue, cpl.DefValue)) as 'ParamValue' FROM [dbo].[CustomParamList] cpl INNER JOIN [dbo].[Customer] c ON c.CustNo = @CustNo LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@CustNo AND csv.ParamLevel='C' AND cpl.ParamNo=csv.ParamNo LEFT JOIN [dbo].[CustomParamScalarValues] csva ON csva.TargetNo=@CustNo AND csva.ParamLevel='C' AND csva.ParamNo=@EONAccessParamNo LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] t ON t.ParamNo =cpl.ParamNo AND t.CustType = c.CustType WHERE cpl.ParamLevel='C' AND ((c.CustType <> 'I' AND csva.ParamValue = '1' AND cpl.ParamName = 'eonNewSessionRedirectUrl') OR (c.CustType = 'I' AND cpl.ParamName = 'eonNewSessionRedirectUrl')) -- XML Parameters Union All Select l.ParamName, l.ParamType, ISNULL(v.ParamValue,d.DefValue) as val FROM [dbo].[CustomParamList] l LEFT OUTER JOIN [dbo].[CustomParamXmlValues] v ON l.ParamNo=v.ParamNo AND [v].[TargetNo]=@ProfNo INNER JOIN [dbo].[CustomParamXmlDefaults] d ON l.ParamNo=d.ParamNo WHERE d.InterfaceID=@InterfaceID AND d.Version=@Version /* The pubBrowseFieldsToDisplay Parameter requirement has beenb removed. I am commenting out the code used to process that Paramater. I have created the EAIP_ParseIntToXml_133 on AdminDevSql but it has not been checked in or deployed to any other environment. -- select any integer values from CheckBoxLists that were parsed into xml UNION ALL SELECT ParamName, 'X', xmlValue AS val FROM @ParsedXmlParamsTable */ END
CREATE Procedure [dbo].[Auth_GetProfiles_99] (@CustID varchar(10), @GroupID varchar(10), @SiteID varchar(25), @AuthType varchar(10), @MobileFirst bit=0) as Begin Declare @ProfNoTable table (ProfNo int) Declare @SiteID_p varchar(25) SET @SiteID_p = @SiteID /* Parse @SiteID (interface) and get the InterfaceVersion (if provided) */ DECLARE @Version varchar(10) set @Version='' IF CHARINDEX( '-',@SiteID )>0 BEGIN SET @Version =SUBSTRING(@SiteID, CHARINDEX( '-',@SiteID )+1, LEN(@SiteID)) SET @SiteID_p = SUBSTRING(@SiteID, 1, CHARINDEX( '-',@SiteID )-1) END --IF LEN(@Version)=0 -- SET @Version='live' -- default Version to 'live' if none given SET NOCOUNT ON Declare @TempProfiles table (ProfNo int, ProfID varchar(10), ProfName nvarchar(100), SiteID varchar(10), MarketID varchar(10), STMode char(1), SiteUrl nvarchar(255), PassingMode varchar(10), ProfPwd varchar(10), DefLangCode varchar(10), DefView varchar(2000), InterfaceID varchar(10), Version varchar(10),NewWin bit, SeqNo int, IsMobile BIT, VersionOrder INT, MD5TokenSalt VARCHAR(255), HideInterface bit) IF @SiteID <> '' BEGIN INSERT into @TempProfiles(ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteUrl,PassingMode,ProfPwd, DefLangCode, DefView,InterfaceID,Version,NewWin,SeqNo,IsMobile,VersionOrder,MD5TokenSalt,HideInterface) Select b.ProfNo, b.ProfID, b.ProfName, a.SiteID, b.MarketID, b.STMode, dbo.EAIF_MakeUrlSecure_86( dbo.EAIF_ConvertSiteURLToEhIS_97(b.ProfNo,IsNull(b.URL,a.SiteURL), null,0), dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'useHttpsAuthentication')) AS SiteURL, a.PassingMode, b.ProfPwd, b.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'defaultView') AS DefView, a.InterfaceID, a.Version, a.NewWin, b.SeqNo, a.IsMobile, CASE when b.Version = @Version Then 0 Else 1 End as VersionOrder, a.MD5TokenSalt, a.HideInterface From [dbo].[InterfaceVersion] AS a INNER JOIN [dbo].[Profile] AS b ON a.InterfaceID= b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[Interface] AS i ON a.InterfaceID=i.InterfaceID Where (a.SiteID = @SiteID_p OR a.InterfaceID=@SiteID_p) --AND (a.Version = @Version) AND b.CustID = @CustID AND b.GroupID = @GroupID AND a.SiteURL <>'' AND (Exists (select 1 from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo]=b.ProfNo and ([dbo].[ProfDatabase].[Mode] is null OR [dbo].[ProfDatabase].[Mode]<>'X') and [dbo].[ProfDatabase].[Enable]=1 and ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], getdate())<0)) OR i.ClientType<>'web') AND a.InterfaceType <> 1 --Order By b.SeqNo,b.ProfName END ELSE Insert @TempProfiles(ProfNo, ProfID, ProfName, SiteID, MarketID, STMode, SiteUrl,PassingMode,ProfPwd, DefLangCode, DefView,InterfaceID,Version,NewWin,SeqNo,IsMobile,VersionOrder,MD5TokenSalt,HideInterface) Select b.ProfNo, b.ProfID, b.ProfName, a.SiteID, b.MarketID, b.STMode, dbo.EAIF_MakeUrlSecure_86( dbo.EAIF_ConvertSiteURLToEhIS_97(b.ProfNo,IsNull(b.URL,a.SiteURL), null,0), dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'useHttpsAuthentication')) AS SiteURL, a.PassingMode, b.ProfPwd, b.DefLangCode, dbo.EAIF_GetProfileParamScalarValue_70(b.ProfNo, 'defaultView') AS DefView,a.InterfaceID, a.Version,a.NewWin, b.SeqNo, a.IsMobile , 0 AS VersionOrder, a.MD5TokenSalt, a.HideInterface FROM [dbo].[InterfaceVersion] AS a INNER JOIN [dbo].[Profile] AS b ON a.InterfaceID= b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[Interface] AS i ON a.InterfaceID=i.InterfaceID Where b.CustID = @CustID AND b.GroupID = @GroupID AND a.SiteURL <>'' AND (Exists (select 1 from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo]=b.ProfNo and ([dbo].[ProfDatabase].[Mode] is null OR [dbo].[ProfDatabase].[Mode]<>'X') and [dbo].[ProfDatabase].[Enable]=1 and ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], getdate())<0)) OR i.ClientType<>'web') AND a.InterfaceType <> 1 --Order By b.SeqNo,b.ProfName if @AuthType='guest' Begin Declare @GuestAccessParamNo int select @GuestAccessParamNo = dbo.EAIF_GetCustomParamNumber_70 ('guestAccessAuthType', 'P') Insert @ProfNoTable Select t.ProfNo from @TempProfiles t INNER JOIN [dbo].[CustomParamDefaults] cpd WITH (INDEX(PK_CustomParamDefaults)) ON cpd.ParamNo=@GuestAccessParamNo AND t.InterfaceID = cpd.InterfaceID AND t.Version = cpd.Version AND t.MarketID = cpd.MarketID AND t.STMode = cpd.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo = t.ProfNo AND cpsv.ParamLevel='P' AND cpsv.ParamNo = @GuestAccessParamNo where ISNULL(cpsv.ParamValue,cpd.DefValue) <> '' Delete @TempProfiles where ProfNo not in (Select ProfNo from @ProfNoTable) End IF @MobileFirst = 0 IF LEN(@Version) = 0 SELECT ProfNo , ProfID , ProfName , SiteID , MarketID , STMode , SiteUrl , PassingMode , ProfPwd , DefLangCode , DefView , InterfaceID , Version , NewWin , SeqNo , IsMobile, MD5TokenSalt, HideInterface FROM @TempProfiles ORDER BY SeqNo , ProfName ELSE SELECT ProfNo , ProfID , ProfName , SiteID , MarketID , STMode , SiteUrl , PassingMode , ProfPwd , DefLangCode , DefView , InterfaceID , Version , NewWin , SeqNo , IsMobile , MD5TokenSalt, HideInterface FROM @TempProfiles ORDER BY VersionOrder , SeqNo , ProfName ELSE IF LEN(@Version) = 0 SELECT ProfNo , ProfID , ProfName , SiteID , MarketID , STMode , SiteUrl , PassingMode , ProfPwd , DefLangCode , DefView , InterfaceID , Version , NewWin , SeqNo , IsMobile , MD5TokenSalt, HideInterface FROM @TempProfiles ORDER BY VersionOrder , IsMobile DESC , SeqNo , ProfName ELSE SELECT ProfNo , ProfID , ProfName , SiteID , MarketID , STMode , SiteUrl , PassingMode , ProfPwd , DefLangCode , DefView , InterfaceID , Version , NewWin , SeqNo , IsMobile , MD5TokenSalt, HideInterface FROM @TempProfiles ORDER BY IsMobile DESC , SeqNo , ProfName End
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceLanguageListForAdd_81](@InterfaceID varchar(10),@Version varchar(10))AS BEGIN SELECT ll.LangCode,ll.Description+ '('+ll.LangCode+')' as Description FROM [dbo].[LangList] ll LEFT Outer JOIN [dbo].[InterfaceUserLangList] ill ON ll.LangCode = ill.LangCode AND ill.InterfaceID =@InterfaceID AND ill.Version=@Version WHERE ill.InterfaceID is null ORDER BY ll.SeqNo END
CREATE PROCEDURE [dbo].[EAIS_GetEOCustUserList_71] AS BEGIN DECLARE @CParamNo smallint, @UParamNo smallint DECLARE @EOSubTable TABLE (EACustID varchar(10), EOCustCode nvarchar(50), EOUserName nvarchar(75)) SET @CParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineCustID','P') SET @UParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineUserID','P') INSERT INTO @EOSubTable SELECT DISTINCT c.CustID, IsNULL(bb.ParamValue,b.DefValue) , IsNull(dd.ParamValue,d.DefValue) FROM [dbo].[Profile] c LEFT JOIN [dbo].[CustomParamDefaults] b ON b.ParamNo=@CParamNo AND b.InterfaceID=c.InterfaceID AND b.MarketID=c.MarketID AND b.STMode=c.STMode LEFT JOIN [dbo].[CustomParamScalarValues] bb ON bb.ParamNo=@CParamNo AND bb.TargetNo=c.ProfNo AND bb.ParamLevel='P' LEFT JOIN [dbo].[CustomParamDefaults] d ON d.ParamNo=@UParamNo AND d.InterfaceID=c.InterfaceID AND d.MarketID=c.MarketID AND d.STMode=c.STMode LEFT JOIN [dbo].[CustomParamScalarValues] dd ON dd.ParamNo=@UParamNo AND dd.TargetNo=c.ProfNo AND dd.ParamLevel='P' WHERE IsNULL(bb.ParamValue,b.DefValue)<> '' AND IsNull(dd.ParamValue,d.DefValue) <> '' SELECT * FROM @EOSubTable END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalDate](@ColNo int, @TitleNo int) AS BEGIN SELECT [dbo].[LocalDate].[FromDate], [dbo].[LocalDate].[ToDate] FROM dbo.LocalDate where [dbo].[LocalDate].[ColNo]=@ColNo and [dbo].[LocalDate].[TitleNo]=@TitleNo END
CREATE PROCEDURE [dbo].[EAUI_GetDbLimiterSequence_70] (@DbVerNo int) AS BEGIN SELECT dl.LimiterNo, dl.SeqNo, ll.LimiterId, dc.Caption FROM [dbo].[DbLimiter] dl JOIN [dbo].[LimiterList] ll ON (dl.LimiterNo = ll.LimiterNo) JOIN [dbo].[DbLimiterCaption] dc ON (dl.LimiterNo = dc.LimiterNo AND dl.DbVerNo = dc.DbVerNo) WHERE dc.LangCode = 'en' AND dl.DbVerNo = @DbVerNo ORDER BY dl.SeqNo END
-- removed email updated from this procedure -- @Email varchar(255) CREATE PROCEDURE [dbo].[EAUI_UpdateInternalCustomer_100](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @LogStatistics char(1)) AS BEGIN SET @CustType = UPPER(@CustType) IF NOT (@CustType = 'I' OR @CustType = 'P') BEGIN RAISERROR('The CustID "%s" is not Internal or Partner.', 16, -1, @CustID) RETURN END IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID) BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Internal Customer & Partners', 'Modify Internal or Partner Customer', @CustID, @CustName, @CustType, @MarketID UPDATE [dbo].[Customer] SET [dbo].[Customer].[CustName] = @CustName, [dbo].[Customer].[MarketID] = @MarketID, [dbo].[Customer].[CustType] = @CustType, [dbo].[Customer].[TimeStamp] = CURRENT_TIMESTAMP WHERE [dbo].[Customer].[CustID] = @CustID EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logStatistics', @LogStatistics END ELSE BEGIN RAISERROR('The CustID "%s" does not exist.', 16, -1, @CustID) RETURN END END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseGroups_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION DELETE dbg FROM [dbo].[DbGroup] dbg JOIN #TempDbListTable t on dbg.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbGroup] SELECT t.UpperDbVerNo, GroupNo FROM [dbo].[DbGroup] dbg JOIN #TempDbListTable t ON dbg.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateFieldElement_70](@UserID nvarchar(20), @UserIP varchar(15), @FieldElementNo int, @Description nvarchar(255)) AS BEGIN IF EXISTS(SELECT 1 FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementNo]=@FieldElementNo) BEGIN UPDATE [dbo].[FieldElementList] SET [dbo].[FieldElementList].[Description]=@Description WHERE [dbo].[FieldElementList].[FieldElementNo]=@FieldElementNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Field Customization', 'Update Element Description', 'New Description', @Description END END
CREATE FUNCTION dbo.EAIF_GetProfDbLimiterCaptions_70(@ProfNo int, @DbVerNo int, @LimiterNo int) RETURNS varchar(8000) AS BEGIN DECLARE @Captions varchar(8000) SET @Captions='' SELECT @Captions = @Captions + ''+a.Caption +' ' FROM [dbo].[ProfDbLimiterCaption] a WHERE a.ProfNo=@ProfNo AND [a].[DbVerNo]=@DbVerNo AND [a].[LimiterNo]=@LimiterNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCurrency_164] AS BEGIN SELECT [dbo].[Currency].[CurrencyCode], [dbo].[Currency].[Description] FROM [dbo].[Currency] ORDER BY [dbo].[Currency].[SeqNo]; END
CREATE PROCEDURE [dbo].[EAIP_AttachCVTypeToInterface_162](@UserID nvarchar(20),@UserIP varchar(30),@InterfaceID varchar(10),@Version varchar(10), @CVTypeIdList varchar(8000)) AS BEGIN DECLARE @InvalidList VARCHAR(8000) SET @InvalidList='' IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version) BEGIN RAISERROR('The Interface/Version (%s)/(%s) does not exist ', 16, -1, @InterfaceID, @Version) RETURN END SELECT @InvalidList=@InvalidList + a.Item + ', ' FROM dbo.EAIF_GetItemTable_70(@CVTypeIdList, '+') a LEFT OUTER JOIN dbo.ContentVerticalType b ON a.Item=b.ContentVerticalID WHERE b.ContentVerticalID IS NULL IF LEN(@InvalidList) > 0 BEGIN SET @InvalidList = SUBSTRING(@InvalidList, 1, LEN(@InvalidList)-1) RAISERROR('Content Vertical Type(s) (%s) do not exist ', 16, -1, @InvalidList) RETURN END SELECT @InvalidList=@InvalidList + a.Item + ', ' FROM dbo.EAIF_GetItemTable_70(@CVTypeIdList, '+') a JOIN dbo.ContentVerticalType b ON a.Item=b.ContentVerticalID JOIN [dbo].[InterfaceCVType] c ON b.ContentVerticalNo=c.ContentVerticalNo AND c.InterfaceID=@InterfaceID AND c.Version=@Version IF LEN(@InvalidList) > 0 BEGIN SET @InvalidList = SUBSTRING(@InvalidList, 1, LEN(@InvalidList)-1) RAISERROR('Content Vertical Type(s) (%s) are already attached to the Interface/Version', 16, -1, @InvalidList) RETURN END BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceCVType] ([dbo].[InterfaceCVType].[InterfaceID], [dbo].[InterfaceCVType].[Version], [dbo].[InterfaceCVType].[ContentVerticalNo]) SELECT @InterfaceID, @Version, b.ContentVerticalNo FROM dbo.EAIF_GetItemTable_70(@CVTypeIdList, '+') a JOIN dbo.ContentVerticalType b ON a.Item=b.ContentVerticalID DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = SUBSTRING(@CVTypeIdList,1,1024) IF DATALENGTH(@CVTypeIdList)>1025 SET @Plist2 = SUBSTRING(@CVTypeIdList,1025,2000) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'CVTypes','Attach CVTypes to Interface', @InterfaceID, @Version, @Plist1, @Plist2 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAIP_GetDBFieldsByTags_88](@ShortDBName Varchar(20), @Label Varchar(20), @TagList Varchar(8000)) AS BEGIN -- assuming field numbers are the same in all segments SELECT DISTINCT dt.FieldTag, dt.FieldNumbers FROM [dbo].[DbFieldTag] dt INNER JOIN [dbo].[DbList] dl ON dt.DbVerNo = dl.DbVerNo INNER JOIN dbo.EAIF_GetItemTable_70(@TagList, ',') tl ON dt.FieldTag = tl.Item WHERE dl.DbName = @ShortDBName AND dl.DbLabel = @Label END
CREATE PROCEDURE [dbo].[EAUI_InterfaceLanguageUpdate_81](@UserID nvarchar(20),@UserIP varchar(15),@InterfaceID varchar(10),@Version varchar(10), @LangCode varchar(10), @Description nvarchar(100), @SeqNo int)AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[InterfaceUserLangList] SET [dbo].[InterfaceUserLangList].[LangDisplayName]=@Description, [dbo].[InterfaceUserLangList].[SeqNo]=@SeqNo WHERE [dbo].[InterfaceUserLangList].[InterfaceID] =@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version AND [dbo].[InterfaceUserLangList].[LangCode]=@LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Update Language', @InterfaceID, @Version, @LangCode COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbPickupLocation(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbPickupLocation].[LocationID], [dbo].[DbPickupLocation].[DisplayName], [dbo].[DbPickupLocation].[SeqNo] FROM [dbo].[DbPickupLocation] WHERE [dbo].[DbPickupLocation].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbPickupLocation].[LocationID], [dbo].[DbPickupLocation].[DisplayName], [dbo].[DbPickupLocation].[SeqNo] FOR XML RAW('r') ) END
/*********************************************************************************/ /*** updated - added delete groupSSText for all groups in consortia, def#224 **/ CREATE PROCEDURE [dbo].[EAUI_DeleteCustomerService_70]( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255))AS BEGIN BEGIN TRANSACTION -- Remove Select Service from all thegroups that use this branding DECLARE @ParamNo int SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('groupSSText','G') DELETE FROM [dbo].[CustomParamScalarValues] WHERE ([dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT [dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@CustID) OR [dbo].[CustomParamScalarValues].[TargetNo] IN (SELECT c.GroupNo FROM dbo.CustomerGroup AS a INNER JOIN dbo.UserGroup AS c ON a.ChildID=c.CustID WHERE a.ParentID=@CustID)) AND [dbo].[CustomParamScalarValues].[ParamLevel]='G' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamScalarValues].[ParamValue]=@ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') EXEC [dbo].[EAIP_DeleteCustomParamXmlValue_70] @CustNo, 'C', @ParamNo, @ItemName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Delete "Select Service" Item', @CustID, @ItemName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[Z3950_GetProfileTargets](@CustId varchar(10), @GroupId varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ItemName varchar(255) DECLARE @profBrandingNo int SET @profBrandingNo=dbo.EAIF_GetCustomParamNumber_70('profZ3950Targets','P') DECLARE @NovelistTable table(VendorID int, VendorName varchar(255), IPAddress varchar(30), Port varchar(10), DbName varchar(50), UserName varchar(35), Password varchar(35), LinkText varchar(255)) DECLARE @XmlTable table(ItemIndex int identity(1,1), XmlText varchar(8000)) INSERT INTO @XmlTable(XmlText) SELECT b.ParamValue FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamXmlValues] b ON a.ProfNo=b.TargetNo WHERE a.CustID=@CustId AND a.GroupID=@GroupId AND a.ProfID=@ProfID AND b.ParamNo=@profBrandingNo AND [b].[ParamLevel]='P' DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int DECLARE @ItemCount int, @ItemIndex int SELECT @ItemCount = MAX(ItemIndex) FROM @XmlTable SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @xmlText=XmlText FROM @XmlTable WHERE ItemIndex = @ItemIndex --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText -- Execute a SELECT statement that uses the OPENXML rowset provider. INSERT INTO @NovelistTable SELECT a.vendorId, b.VendorName, a.ipAddress, a.port, a.dbName, a.userName, a.password, a.linkText FROM OPENXML (@xmlDocHandle, '/profZ3950Target',1) WITH (vendorId int, ipAddress varchar(30), port varchar(10), dbName varchar(50), userName varchar(35), password varchar(35), linkText varchar(255)) a INNER JOIN [dbo].[Z3950Vendors] b ON a.VendorID=b.VendorID EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END SELECT * FROM @NovelistTable ORDER BY VendorName END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceSearchThemeDetails_83] (@InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20), @SearchString varchar(1500), @Image varchar(255), @ParentThemeID varchar(20), @FeatureName varchar(255), @CustomAttributes xml, @SeqNo int, @Show bit)AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTheme].[Version]= @Version AND [dbo].[InterfaceSearchTheme].[ThemeID]=@ThemeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceSearchTheme] ([dbo].[InterfaceSearchTheme].[InterfaceID], [dbo].[InterfaceSearchTheme].[Version], [dbo].[InterfaceSearchTheme].[ThemeID],[dbo].[InterfaceSearchTheme].[SearchString], [dbo].[InterfaceSearchTheme].[ParentThemeID], [dbo].[InterfaceSearchTheme].[Image],[dbo].[InterfaceSearchTheme].[SeqNo],[dbo].[InterfaceSearchTheme].[Show], [dbo].[InterfaceSearchTheme].[CustomAttributes]) VALUES(@InterfaceID, @Version, @ThemeID, @SearchString, @ParentThemeID, @Image, @SeqNo, @Show, @CustomAttributes) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabase_131]( @OldDbVerNo int, @DbName varchar(10), @NewDbLabel varchar(10), @BasicParams bit=1, @Authorities bit=1, @Descriptions bit=1, @DocTypes bit=1, @Forms bit=1, @Limiters bit=1, @SegmentFileInfo bit=1, @SortOptions bit=1, @Subjects bit=1, @DbFields bit=1, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit =1, @TOCs bit=1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1, @RtacItems bit = 0, @SubsetDbs bit = 0, @SearchConceptMapping BIT = 1, @UserID varchar(20) = '', @UserIP varchar(15) = '', @PromoteDbSubsetsForParent BIT=0) AS BEGIN DECLARE @DbType smallint DECLARE @OldDbLabel varchar(10) DECLARE @DisplayName nvarchar(100) DECLARE @DbGroup varchar(20) DECLARE @ContentType smallint DECLARE @MultiSegment smallint DECLARE @DbCategory char(1) DECLARE @EnforceSimUsage bit DECLARE @ShowStats bit DECLARE @ShowOnDDSConsole bit DECLARE @WebClient bit DECLARE @WinClient bit DECLARE @CharClient bit DECLARE @Z3950Client bit DECLARE @EPXBuild bit DECLARE @EDABuild bit Declare @IncludeWhenAutoAdd bit DECLARE @SourceType char(1) Declare @PhysicalDbName varchar(10) Declare @PhysicalDbVerNo int Declare @SourceSubsetDsFamilyName varchar(10) Declare @TargetPhysicalDsFamilyName varchar(10) Declare @NonSearchableDb bit Declare @ArchiveProfSettings bit SELECT @OldDbLabel =[dbo].[DbList].[DbLabel], @DisplayName =[dbo].[DbList].[DisplayName], @DbType =[dbo].[DbList].[DbType], @DbCategory =[dbo].[DbList].[DbCategory], @DbGroup =[dbo].[DbList].[DbGroup], @ContentType =[dbo].[DbList].[ContentType], @MultiSegment =[dbo].[DbList].[MultiSegment], @EnforceSimUsage=[dbo].[DbList].[EnforceSimUsage], @ShowStats =[dbo].[DbList].[ShowStats], @ShowOnDDSConsole=[dbo].[DbList].[ShowOnDDSConsole], @WebClient =[dbo].[DbList].[WebClient], @WinClient =[dbo].[DbList].[WinClient], @CharClient =[dbo].[DbList].[CharClient], @Z3950Client =[dbo].[DbList].[Z3950Client], @EPXBuild =[dbo].[DbList].[EPXBuild], @EDABuild =[dbo].[DbList].[EDABuild], @IncludeWhenAutoAdd = [dbo].[DbList].[IncludeWhenAutoAdd], @SourceType =[dbo].[DbList].[SourceType], @NonSearchableDb = [dbo].[DbList].[NonSearchableDb], @ArchiveProfSettings = [dbo].[DbList].[ArchiveProfSettings] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@OldDbVerNo IF @OldDbLabel = @NewDbLabel -- Nothing to do RETURN Begin Try BEGIN TRANSACTION if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) Begin Select @PhysicalDbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=(Select [dbo].[DbSubset].[PhysDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) if not exists (Select 1 from [dbo].[DbList] with (NOLOCK) where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel) Begin RAISERROR ('Could not promote %s to %s. The Physical Db, %s, does not exist on the new Label',16,-1,@DbName,@NewDbLabel, @PhysicalDbName) return end else begin Select @SourceSubsetDsFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@OldDbVerNo Select @TargetPhysicalDsFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if @SourceSubsetDsFamilyName <> @TargetPhysicalDsFamilyName Begin RAISERROR ('Could not promote %s to %s. The Physical DsFamilyName, %s, on the new Label does not match the Subset DsFamilyName, %s, on the old Label',16,-1,@DbName,@NewDbLabel,@TargetPhysicalDsFamilyName,@SourceSubsetDsFamilyName) return End end end IF EXISTS ( SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @NewDbLabel ) BEGIN EXEC dbo.EAIP_PromoteDatabaseDetails_131 @OldDbVerno, @OldDbLabel, @NewDbLabel, @DbName, @DbType, @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields, @SearchOptions, @BrowseOptions, @AuthFilter, @Topics, @TOCs, @Groups, @Customizers, @Clusters, @MultiDbAuthorities, @ToolbarItems, @RtacItems, @SubsetDbs, @SearchConceptMapping, @UserID, @UserIP IF (@@ERROR <> 0) Begin RAISERROR ('Promote Database failed for %s %s',-16,1,@DbName,@NewDbLabel) RETURN End END ELSE BEGIN -- New database Declare @DsFamilyName varchar(10) if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) select @DsFamilyName = [dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@OldDbVerNo else set @DsFamilyName = @DbName EXEC [dbo].[EAIP_AddDatabase_133] @DbName, @NewDbLabel, @DisplayName,@DsFamilyName,@DbGroup,@DbCategory,@DbType,@ContentType,@MultiSegment, @EnforceSimUsage,@ShowStats,@ShowOnDDSConsole,@WebClient,@WinClient,@CharClient,@Z3950Client,@EPXBuild,@EDABuild,@IncludeWhenAutoAdd,@SourceType,@NonSearchableDb,@ArchiveProfSettings IF (@@ERROR <> 0) BEGIN RAISERROR ('Could not add records to dbList for the target database %s %s.',-16,1,@DbName,@NewDbLabel) RETURN END -- All parameters prmoted EXEC dbo.EAIP_PromoteDatabaseDetails_131 @OldDbVerno, @OldDbLabel, @NewDbLabel, @DbName, @DbType, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @RtacItems, @SubsetDbs, @SearchConceptMapping, @UserID, @UserIP IF (@@ERROR <> 0) BEGIN RAISERROR ('Promote New Database failed for %s %s',-16,1,@DbName,@NewDbLabel) RETURN END END /* Promoting to live always promotes to liveqc */ /* Call this same procedure again for the liveQC label*/ IF (@NewDbLabel = 'live') if (exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) AND @PromoteDbSubsetsForParent=0) OR not exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) BEGIN EXEC dbo.EAIP_PromoteDatabase_131 @OldDbVerNo, @DbName, 'liveQC', @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields, @SearchOptions, @BrowseOptions, @AuthFilter, @Topics,@TOCs, @Groups, @Customizers, @Clusters, @MultiDbAuthorities, @ToolbarItems, @RtacItems, @SubsetDbs, @SearchConceptMapping, @UserID, @UserIP IF (@@ERROR <> 0) BEGIN RAISERROR ('Promote New Database failed for %s %s',-16,1,@DbName,@NewDbLabel) RETURN END END IF @PromoteDbSubsetsForParent=0 BEGIN Declare @NewSubsetDbVerNo int Declare @NewPhysicalDbVerNo INT if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) Begin Select @NewSubsetDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@NewDbLabel Select @NewPhysicalDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo) update [dbo].[DbSubset] set [MergeSearches]=a.MergeSearches, [DBDefSearchExprType]=a.DBDefSearchExprType, [DBDefSearchExpression]=a.DBDefSearchExpression from (select [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@OldDbVerNo) a where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo else Insert [dbo].[DbSubset] select @NewSubsetDbVerNo, @NewPhysicalDbVerNo, [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@OldDbVerNo END End COMMIT TRANSACTION End try Begin CATCH IF @@Trancount > 0 ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End catch END
--sql content merged from file: \StoredProcedures\EAUI_GetProfCustGroupNo_92.sql CREATE PROCEDURE [dbo].[EAUI_GetProfCustGroupNo_92] (@ProfNo int, @GroupCaption nvarchar(255)) AS BEGIN Select [dbo].[ProfCustGroupCaption].[GroupNo] FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[LangCode]='en' and [dbo].[ProfCustGroupCaption].[Caption]=@GroupCaption END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseForm_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @FormNumber int, @Category char(1), @FormName varchar(100), @Encoding varchar(10)) AS BEGIN DECLARE @FormNumberAsText varchar(10) SELECT @FormNumberAsText = convert(varchar(10),@FormNumber) IF EXISTS (SELECT 1 FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo AND [dbo].[DbForm].[FormNumber]=@FormNumber) BEGIN RAISERROR('Form number %s already exists for this database. Insert failed.',16,-1,@FormNumberAsText) RETURN END INSERT INTO [dbo].[DbForm]( [dbo].[DbForm].[DbVerNo], [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding], [dbo].[DbForm].[Category] ) VALUES (@DbVerNo, @FormNumber, @FormName, @Encoding, @Category) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert failed for form number %s and database %s, %s',16,-1,@FormNumberAsText, @DbName, @DbLabel) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Form','Number:', @FormNumberAsText,'Name:',@FormName END
CREATE PROCEDURE [dbo].[EPCS_GetProfAttributesSimpl_86] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @profNo int DECLARE @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @STMode char(1) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID and [dbo].[Profile].[GroupID]=@GroupID and [dbo].[Profile].[ProfID]=@ProfID SELECT cpl.ParamName, cpl.ParamType, ISNULL(csv.ParamValue, ISNULL(cpd.DefValue,cpl.DefValue)) as 'ParamValue' FROM [dbo].[CustomParamList] cpl LEFT JOIN [dbo].[CustomParamDefaults] cpd ON cpl.ParamNo=cpd.ParamNo AND cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version AND cpd.MarketID=@MarketID AND cpd.STMode=@STMode LEFT JOIN [dbo].[CustomParamScalarValues] csv ON csv.TargetNo=@ProfNo AND csv.ParamLevel='P' AND cpl.ParamNo=csv.ParamNo INNER JOIN [dbo].[InterfaceParamList] ipl ON cpl.ParamNo=ipl.ParamNo WHERE ipl.InterfaceID=@InterfaceID AND ipl.Version=@Version AND [cpl].[ParamType] IN ('N', 'B','S') AND cpl.ParamName in ('crossRefColID','eonlinePermitted','eonlineCustID','eonlineUserID','ppvPermitted','smartLinksUsesCrossRef') AND ipl.EditLevel<>-1 END
CREATE PROCEDURE [dbo].[AUTH_GetProfiles_MultiAffiliation] (@CustIdList VARCHAR(MAX), @GroupIdList VARCHAR(MAX), @SiteID varchar(10), @AuthType varchar(10), @MobileFirst bit=0) AS BEGIN DECLARE @ItemValueTable TABLE (CustId nvarchar(255), GroupId nvarchar(255), RowNumber int) DECLARE @MaxRow int, @curRow INT, @curCustId VARCHAR(20), @curGroupId VARCHAR(20) INSERT INTO @ItemValueTable(CustId, GroupId, RowNumber) SELECT * FROM [dbo].[EAIF_GetItemValueTable_WithRowNumber](@CustIdList,@GroupIdList, ',') SELECT @MaxRow= MAX(RowNumber) FROM @ItemValueTable SELECT @CurRow = 1 --ProfNo, ProfId, ProfName, SiteId, MarketId, StMode, SiteUrl, PassingMode, ProfPwd, DefLangCode, DefView,InterfaceId,Verision,NewWin,SeqNo,IsMobile Declare @TempProfiles table (ProfNo int, ProfID varchar(10), ProfName nvarchar(100), SiteID varchar(10), MarketID varchar(10), STMode char(1), SiteUrl nvarchar(255), PassingMode varchar(10), ProfPwd varchar(10), DefLangCode varchar(10), DefView varchar(2000), InterfaceID varchar(10), Version varchar(10),NewWin bit, SeqNo int, IsMobile BIT,MD5TokenSalt VARCHAR(255), hideInterface bit) --need to loop through the list of customer groups in the correct order and get the profiles --done in a loop because we dont have time to create a complex getProfiles method that would work with multiple cust/groups WHILE @CurRow <= @maxRow BEGIN SELECT @curCustId = CustId, @curGroupId = groupId FROM @ItemValueTable WHERE RowNumber = @CurRow INSERT INTO @TempProfiles EXEC [dbo].[Auth_GetProfiles_99] @curCustId, @curGroupId, @SiteID, @AuthType, @MobileFirst --if we found one then we are done IF @@ROWCOUNT >0 BEGIN SELECT t.*, @curCustId AS [CustId], @curGroupId AS [GroupId] FROM @TempProfiles t RETURN END SELECT @CurRow = @CurRow + 1 END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceLimiterGroups_76] (@ScreenNo int) AS BEGIN SELECT [dbo].[InterfaceLimiterGroup].[GroupNo], [dbo].[InterfaceLimiterGroup].[Description] FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo]=@ScreenNo ORDER BY [dbo].[InterfaceLimiterGroup].[GroupNo] END
CREATE Procedure [dbo].[EAIS_GetEOCustUserListLatestUpdates_91] AS BEGIN SELECT distinct p.CustID, dbo.EAIF_GetCustomParamScalarValue_70('eonlineCustID', p.InterfaceID, p.Version, p.MarketID, p.STMode, p.ProfNo, 'P') AS EOnlineCustID, dbo.EAIF_GetCustomParamScalarValue_70('eonlineUserID', p.InterfaceID, p.Version, p.MarketID, p.STMode, p.ProfNo, 'P') AS EOnlineUserID FROM [dbo].[EJSCustUpdates] u INNER JOIN [dbo].[Profile] p ON u.ProfNo = p.ProfNo END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalHoldingInfo]( @CustomerID varchar(10), @CollectionID varchar(50), @ISSN1 varchar(20), @ISSN2 varchar(20), @ISSN3 varchar(20), @ISSN4 varchar(20), @ISSN5 varchar(20), @ISSN6 varchar(20), @ISSN7 varchar(20), @ISSN8 varchar(20), @ISSN9 varchar(20), @ISSN10 varchar(20) ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID SELECT [m].[ISSN], [d].[FromDate], [d].[ToDate], [l].[Subscribe] FROM [dbo].[MasterTitle] m INNER JOIN [dbo].[LocalTitle] l ON l.TitleNo = m.TitleNo LEFT OUTER JOIN [dbo].[LocalDate] d ON l.TitleNo = d.TitleNo AND d.ColNo = @ColNo WHERE l.ColNo = @ColNo AND m.ISSN IN ( @ISSN1, @ISSN2, @ISSN3, @ISSN4, @ISSN5, @ISSN6, @ISSN7, @ISSN8, @ISSN9, @ISSN10) ORDER BY m.Title, m.ISSN END
CREATE PROCEDURE [dbo].[EAUI_GetDbLimitersForAdd_76] (@DbVerNo int, @ScreenNo int, @GroupNo int ) AS BEGIN DECLARE @DbLabel varchar(10) SELECT @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo IF @DbLabel NOT IN ('live','liveQC','rebuild','rebuildQC') SET @DbLabel='custom' SELECT ll.LimiterNo, ll.LimiterId + N':' + ll.Description + N'(' + lct.ControlName+ N')' As Value FROM [dbo].[DbLimiter] dl LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo = dil.DbVerNo AND dl.LimiterNo = dil.LimiterNo AND dil.IntfScreenNo = @ScreenNo INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType WHERE ll.DbLabel = @DbLabel AND dl.DbVerNo = @DbVerNo AND dil.LimiterNo is null ORDER BY ll.LimiterId END
CREATE PROCEDURE [dbo].[EAUI_UpdateInternalCustomer_151](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @LogStatistics char(1), @EnableUsageConsolidation char(1)) AS BEGIN SET @CustType = UPPER(@CustType) IF NOT (@CustType = 'I' OR @CustType = 'P') BEGIN RAISERROR('The CustID "%s" is not Internal or Partner.', 16, -1, @CustID) RETURN END IF EXISTS(SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID) BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Internal Customer & Partners', 'Modify Internal or Partner Customer', @CustID, @CustName, @CustType, @MarketID UPDATE [dbo].[Customer] SET [dbo].[Customer].[CustName] = @CustName, [dbo].[Customer].[MarketID] = @MarketID, [dbo].[Customer].[CustType] = @CustType, [dbo].[Customer].[TimeStamp] = CURRENT_TIMESTAMP WHERE [dbo].[Customer].[CustID] = @CustID EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'logStatistics', @LogStatistics EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID, 'enableUsageConsolidation', @EnableUsageConsolidation END ELSE BEGIN RAISERROR('The CustID "%s" does not exist.', 16, -1, @CustID) RETURN END END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseGroups_80](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbGroup] WHERE [dbo].[DbGroup].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbGroup] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbGroup].[GroupNo] FROM [dbo].[DbGroup] WHERE [dbo].[DbGroup].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateFieldGroup_70](@UserID nvarchar(20), @UserIP varchar(15), @FieldGroupNo int, @Description nvarchar(255)) AS BEGIN IF EXISTS(SELECT 1 FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo) BEGIN UPDATE [dbo].[FieldGroupList] SET [dbo].[FieldGroupList].[Description]=@Description WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Field Customization', 'Update Group Description', 'New Description', @Description END END
-- EAIF_GetProfDbLimiterCaptions_76 -- called from EPCS_GetProfDbLimiters_76 CREATE FUNCTION [dbo].[EAIF_GetProfDbLimiterCaptions_76](@ProfNo int, @IntfScreenNo int, @DbVerNo int, @LimiterNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) Declare @SourceType char(1) SET @Captions=N'' Select @SourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo if @SourceType in ('M') Begin SELECT @Captions = @Captions + N''+a.Caption +N' ' FROM [dbo].[MDbLimitersExternalSourceCaption] a --left outer join ProfMDbLimitersExternalSourceCaption b --on a.LangCode=b.LangCode and a.LimiterNo=b.LimiterNo and b.ProfNo=@ProfNo AND b.IntfScreenNo=@IntfScreenNo where a.LimiterNo=@LimiterNo End else Begin SELECT @Captions = @Captions + N''+a.Caption+N' ' from [dbo].[ProfDbLimiterCaption2] a WHERE a.ProfNo=@ProfNo AND [a].[IntfScreenNo]=@IntfScreenNo AND [a].[DbVerNo]=@DbVerNo AND [a].[LimiterNo]=@LimiterNo End RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCustCatalogNotificationSettings_142](@CustID varchar(10)) AS BEGIN Declare @Consortia bit Declare @CustType char(1) Select @Consortia=[dbo].[Customer].[Consortium], @CustType=[dbo].[Customer].[CustType] from [dbo].[Customer] Where [dbo].[Customer].[CustID]=@CustID IF @Consortia = 1 /* For Consortium customer, include the details of all its Child Customers, Owned catalog only */ SELECT ROW_NUMBER() OVER (ORDER BY cc.CustID,cc.DbName) AS RowID,cc.CustID as CustId,c.CustName, cc.DbName as Catalog, ISNULL(cn.EmailAddresses,'') as email, ISNULL(cn.EmailSubjectLine,'') as emailSubjectLine FROM [dbo].[CustomerGroup] cg JOIN EASUPPORT.dbo.CustomerCatalogs cc ON cg.ChildID=cc.CustID JOIN [dbo].[Customer] c ON c.CustID=cc.CustID JOIN [dbo].[DbList] d on d.DbName=cc.DbName AND d.DbLabel='live' --- Get the catalogs in 'live' label only. LEFT OUTER JOIN [dbo].[CustCatalogNotificationConfig] cn ON cc.CustID=cn.CustID AND cc.DbName=cn.DbName WHERE cc.CustID = cc.SubscriberID AND cg.ParentID=@CustID AND d.DbName like 'cat%' -- EADM-5500 : restrict the list to catalogs only (skip IR's). ELSE /* Consortia = 0 Get Owned Catalogs only */ SELECT ROW_NUMBER() OVER (ORDER BY cc.CustID,cc.DbName) AS RowID,cc.CustID as CustId,c.CustName, cc.DbName as Catalog, ISNULL(cn.EmailAddresses,'') as email, ISNULL(cn.EmailSubjectLine,'') as emailSubjectLine FROM EASUPPORT.dbo.CustomerCatalogs cc JOIN [dbo].[Customer] c ON c.CustID=cc.CustID JOIN [dbo].[DbList] d on d.DbName=cc.DbName AND d.DbLabel='live' --- Get the catalogs in 'live' label only. LEFT OUTER JOIN [dbo].[CustCatalogNotificationConfig] cn ON cc.CustID=cn.CustID AND cc.DbName=cn.DbName WHERE cc.CustID=@CustID AND cc.CustID = cc.SubscriberID AND d.DbName like 'cat%' -- EADM-5500 : restrict the list to catalogs only (skip IR's). END
CREATE PROCEDURE [dbo].[EAIP_AttachInterfaceLanguages_161] ( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @LangCodeList varchar(8000) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @SeqNo int=(select MAX([dbo].[InterfaceUserLangList].[SeqNo])+1 FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceUserLangList].[Version]=@Version) DECLARE @LangCodes TABLE (LangCode NVARCHAR(10),SeqNum int) INSERT INTO @LangCodes SELECT [dbo].[EAIF_GetEnumValueTable_70].[Item] ,[dbo].[EAIF_GetEnumValueTable_70].[Num] from dbo.EAIF_GetEnumValueTable_70(@LangCodeList,'+', @SeqNo, 1) DECLARE @langId VARCHAR (10)=(SELECT top 1 LangCode FROM @LangCodes WHERE LangCode IN (SELECT [dbo].[InterfaceUserLangList].[LangCode] FROM [dbo].[InterfaceUserLangList] WHERE [dbo].[InterfaceUserLangList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceUserLangList].[Version] =@Version)) IF @langId IS NOT NULL BEGIN RAISERROR('The LangCode:''%s'' already exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1,@langId, @InterfaceID, @Version) RETURN END SET @langId =(SELECT top 1 LangCode FROM @LangCodes WHERE LangCode NOT IN (SELECT [dbo].[LangList].[LangCode] FROM [dbo].[LangList])) IF @langId IS NOT NULL BEGIN RAISERROR('The Language ''%s'' does not exist.',16,-1,@langId) RETURN END BEGIN TRANSACTION IF @SeqNo IS NULL SET @SeqNo=1 INSERT INTO [dbo].[InterfaceUserLangList] ([dbo].[InterfaceUserLangList].[InterfaceID], [dbo].[InterfaceUserLangList].[Version], [dbo].[InterfaceUserLangList].[LangCode], [dbo].[InterfaceUserLangList].[LangDisplayName], [dbo].[InterfaceUserLangList].[SeqNo]) SELECT @InterfaceID, @Version,a.LangCode,ll.Description, a.SeqNum FROM [dbo].[LangList] AS ll INNER JOIN @LangCodes AS a ON ll.LangCode = a.LangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Attach Language', @InterfaceID, @Version, @LangCodeList COMMIT TRANSACTION END
CREATE PROCEDURE dbo.EAIP_GetDbGroupList_80(@DbVerNo int) AS BEGIN /** This Procedure is used by EACopy **/ SELECT DISTINCT GL.GroupID , GL.GroupNotes , dbo.EAIF_GroupLangAndCaptions_80(GL.GroupNo) AS Captions , ISNULL(dbo.EAIF_GroupLangAndMouseOverTexts_80(GL.GroupNo), '') AS MouseOverTexts FROM dbo.GroupList AS GL INNER JOIN dbo.DbGroup AS DG ON DG.GroupNo = GL.GroupNo WHERE DG.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_InterfaceToolbarItemAttachDatabases_77] (@UserID nvarchar(20),@UserIP varchar(30), @IntfToolbarItem int, @DbVerNoList varchar(8000))AS BEGIN DECLARE @ItemName varchar(10) DECLARE @Interface varchar(30) SELECT @Interface=[dbo].[InterfaceToolbar].[InterfaceID]+','+[dbo].[InterfaceToolbar].[Version], @ItemName=[dbo].[InterfaceToolbar].[ItemName] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceToolbarDb] ( [dbo].[InterfaceToolbarDb].[IntfToolbarItem],[dbo].[InterfaceToolbarDb].[DbVerNo] ) SELECT @IntfToolbarItem, CONVERT(int,a.Item) FROM dbo.EAIF_GetItemTable_70(@DbVerNoList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@DbVerNoList,1,1024),'+',',') IF DATALENGTH(@DbVerNoList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@DbVerNoList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Attach ToolbarItem database', @Interface ,@ItemName, @Plist1,@Plist2 COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbPublisher(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbPublisher].[DbName], [dbo].[DbPublisher].[PublisherName], [dbo].[DbPublisher].[PubID], [dbo].[Publisher].[PublisherName] AS DefPublisherName FROM [dbo].[DbPublisher] LEFT JOIN [dbo].[Publisher] ON [dbo].[Publisher].[PID] = [dbo].[DbPublisher].[PubID] WHERE [dbo].[DbPublisher].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbPublisher].[DbName], [dbo].[DbPublisher].[PublisherName], [dbo].[DbPublisher].[PubID] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteCustomLink_70](@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ItemName varchar(255))AS BEGIN DECLARE @CustNo int DECLARE @ParamNoSystem int DECLARE @ParamNoCustomer int DECLARE @ParamNoProf int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNoSystem=dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C') SELECT @ParamNoCustomer=dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT @ParamNoProf=dbo.EAIF_GetCustomParamNumber_70('profCustomLinks', 'P') BEGIN TRANSACTION IF @CustID = 'system' DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNoSystem AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName ELSE DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNoCustomer AND [dbo].[CustomParamXmlValues].[ItemName]= @ItemName -- delete all derived links DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNoCustomer AND [dbo].[CustomParamXmlValues].[ItemName] like @ItemName +':%' -- remove links from profiles DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNoProf AND ([dbo].[CustomParamXmlValues].[ItemName] = @ItemName OR [dbo].[CustomParamXmlValues].[ItemName] like @ItemName +':%') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Delete Custom Link Item', @CustID, @ItemName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[Z3950_GetVendorDetail](@VendorID varchar(10)) AS BEGIN SELECT [dbo].[Z3950Vendors].[VendorName], [dbo].[Z3950Vendors].[CallType], [dbo].[Z3950Vendors].[XSL], [dbo].[Z3950Vendors].[SearchMask] FROM [dbo].[Z3950Vendors] WHERE [dbo].[Z3950Vendors].[VendorID]=@VendorID END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceSearchThemeDetailsCaptions_83] (@InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20), @LangCode varchar(10), @Caption nvarchar(255), @ImageAltText nvarchar(255), @Description nvarchar(1500)) AS BEGIN DECLARE @InterfaceThemeNo smallint SET @InterfaceThemeNo = (SELECT [dbo].[InterfaceSearchTheme].[InterfaceThemeNo] FROM [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTheme].[Version]=@Version AND [dbo].[InterfaceSearchTheme].[ThemeID]=@ThemeID) IF (@InterfaceThemeNo IS NULL OR @InterfaceThemeNo = 0) RETURN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceSearchThemeCaption] WHERE [dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo]=@InterfaceThemeNo AND [dbo].[InterfaceSearchThemeCaption].[LangCode]=@LangCode) BEGIN UPDATE [dbo].[InterfaceSearchThemeCaption] SET [dbo].[InterfaceSearchThemeCaption].[Caption] = @Caption, [dbo].[InterfaceSearchThemeCaption].[ImageAltText]=@ImageAltText, [dbo].[InterfaceSearchThemeCaption].[Description]=@Description WHERE [dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo]=@InterfaceThemeNo AND [dbo].[InterfaceSearchThemeCaption].[LangCode]=@LangCode END ELSE BEGIN INSERT INTO [dbo].[InterfaceSearchThemeCaption] ([dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo], [dbo].[InterfaceSearchThemeCaption].[LangCode], [dbo].[InterfaceSearchThemeCaption].[Caption], [dbo].[InterfaceSearchThemeCaption].[ImageAltText], [dbo].[InterfaceSearchThemeCaption].[Description]) VALUES (@InterfaceThemeNo, @LangCode, @Caption, @ImageAltText, @Description) END END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabase_141]( @OldDbVerNo int, @DbName varchar(10), @NewDbLabel varchar(10), @BasicParams bit=1, @Authorities bit=1, @Descriptions bit=1, @DocTypes bit=1, @Forms bit=1, @Limiters bit=1, @SegmentFileInfo bit=1, @SortOptions bit=1, @Subjects bit=1, @DbFields bit=1, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit =1, @TOCs bit=1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1, @RtacItems bit = 0, @SubsetDbs bit = 0, @PickupLocations BIT = 0, @SearchConceptMapping BIT = 1, @DSParameters bit=0, @UserID varchar(20) = '', @UserIP varchar(15) = '', @PromoteDbSubsetsForParent BIT=0) AS BEGIN DECLARE @DbType smallint DECLARE @OldDbLabel varchar(10) DECLARE @DisplayName nvarchar(100) DECLARE @DbGroup varchar(20) DECLARE @ContentType smallint DECLARE @MultiSegment smallint DECLARE @DbCategory char(1) DECLARE @EnforceSimUsage bit DECLARE @ShowStats bit DECLARE @ShowOnDDSConsole bit DECLARE @WebClient bit DECLARE @WinClient bit DECLARE @CharClient bit DECLARE @Z3950Client bit DECLARE @EPXBuild bit DECLARE @EDABuild bit Declare @IncludeWhenAutoAdd bit DECLARE @SourceType char(1) Declare @PhysicalDbName varchar(10) Declare @PhysicalDbVerNo int Declare @SourceSubsetDsFamilyName varchar(10) Declare @TargetPhysicalDsFamilyName varchar(10) Declare @NonSearchableDb bit Declare @ArchiveProfSettings bit SELECT @OldDbLabel =[dbo].[DbList].[DbLabel], @DisplayName =[dbo].[DbList].[DisplayName], @DbType =[dbo].[DbList].[DbType], @DbCategory =[dbo].[DbList].[DbCategory], @DbGroup =[dbo].[DbList].[DbGroup], @ContentType =[dbo].[DbList].[ContentType], @MultiSegment =[dbo].[DbList].[MultiSegment], @EnforceSimUsage=[dbo].[DbList].[EnforceSimUsage], @ShowStats =[dbo].[DbList].[ShowStats], @ShowOnDDSConsole=[dbo].[DbList].[ShowOnDDSConsole], @WebClient =[dbo].[DbList].[WebClient], @WinClient =[dbo].[DbList].[WinClient], @CharClient =[dbo].[DbList].[CharClient], @Z3950Client =[dbo].[DbList].[Z3950Client], @EPXBuild =[dbo].[DbList].[EPXBuild], @EDABuild =[dbo].[DbList].[EDABuild], @IncludeWhenAutoAdd = [dbo].[DbList].[IncludeWhenAutoAdd], @SourceType =[dbo].[DbList].[SourceType], @NonSearchableDb = [dbo].[DbList].[NonSearchableDb], @ArchiveProfSettings = [dbo].[DbList].[ArchiveProfSettings] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@OldDbVerNo IF @OldDbLabel = @NewDbLabel -- Nothing to do RETURN BEGIN TRANSACTION Begin Try if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) Begin Select @PhysicalDbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=(Select [dbo].[DbSubset].[PhysDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) if not exists (Select 1 from [dbo].[DbList] with (NOLOCK) where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel) Begin ROLLBACK TRAN RAISERROR ('Could not promote %s to %s. The Physical Db, %s, does not exist on the new Label',16,-1,@DbName,@NewDbLabel, @PhysicalDbName) return end else begin Select @SourceSubsetDsFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@OldDbVerNo Select @TargetPhysicalDsFamilyName=[dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if @SourceSubsetDsFamilyName <> @TargetPhysicalDsFamilyName Begin ROLLBACK TRAN RAISERROR ('Could not promote %s to %s. The Physical DsFamilyName, %s, on the new Label does not match the Subset DsFamilyName, %s, on the old Label',16,-1,@DbName,@NewDbLabel,@TargetPhysicalDsFamilyName,@SourceSubsetDsFamilyName) return End end end IF EXISTS ( SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @NewDbLabel ) BEGIN EXEC dbo.EAIP_PromoteDatabaseDetails_141 @OldDbVerno, @OldDbLabel, @NewDbLabel, @DbName, @DbType, @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields, @SearchOptions, @BrowseOptions, @AuthFilter, @Topics, @TOCs, @Groups, @Customizers, @Clusters, @MultiDbAuthorities, @ToolbarItems, @RtacItems, @SubsetDbs, @PickupLocations, @SearchConceptMapping, @DSParameters, @UserID, @UserIP IF (@@ERROR <> 0) BEGIN ROLLBACK TRAN RAISERROR ('Promote Database failed for %s %s',-16,1,@DbName,@NewDbLabel) RETURN End END ELSE BEGIN -- New database Declare @DsFamilyName varchar(10) if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) select @DsFamilyName = [dbo].[DbList].[DSFamilyName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@OldDbVerNo else set @DsFamilyName = @DbName EXEC [dbo].[EAIP_AddDatabase_133] @DbName, @NewDbLabel, @DisplayName,@DsFamilyName,@DbGroup,@DbCategory,@DbType,@ContentType,@MultiSegment, @EnforceSimUsage,@ShowStats,@ShowOnDDSConsole,@WebClient,@WinClient,@CharClient,@Z3950Client,@EPXBuild,@EDABuild,@IncludeWhenAutoAdd,@SourceType,@NonSearchableDb,@ArchiveProfSettings IF (@@ERROR <> 0) BEGIN ROLLBACK TRAN RAISERROR ('Could not add records to dbList for the target database %s %s.',-16,1,@DbName,@NewDbLabel) RETURN END -- All parameters prmoted EXEC dbo.EAIP_PromoteDatabaseDetails_141 @OldDbVerno, @OldDbLabel, @NewDbLabel, @DbName, @DbType, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @RtacItems, @SubsetDbs,@PickupLocations, @SearchConceptMapping, @DSParameters, @UserID, @UserIP IF (@@ERROR <> 0) BEGIN ROLLBACK TRAN RAISERROR ('Promote New Database failed for %s %s',-16,1,@DbName,@NewDbLabel) RETURN END END /* Promoting to live always promotes to liveqc */ /* Call this same procedure again for the liveQC label*/ IF (@NewDbLabel = 'live') if (exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) AND @PromoteDbSubsetsForParent=0) OR not exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) BEGIN EXEC dbo.EAIP_PromoteDatabase_141 @OldDbVerNo, @DbName, 'liveQC', @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields, @SearchOptions, @BrowseOptions, @AuthFilter, @Topics,@TOCs, @Groups, @Customizers, @Clusters, @MultiDbAuthorities, @ToolbarItems, @RtacItems, @SubsetDbs, @PickupLocations, @SearchConceptMapping, @DSParameters, @UserID, @UserIP IF (@@ERROR <> 0) BEGIN ROLLBACK TRAN RAISERROR ('Promote New Database failed for %s %s',-16,1,@DbName,@NewDbLabel) RETURN END END IF @PromoteDbSubsetsForParent=0 BEGIN Declare @NewSubsetDbVerNo int Declare @NewPhysicalDbVerNo INT if exists (Select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @OldDbVerNo) Begin Select @NewSubsetDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@NewDbLabel Select @NewPhysicalDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo) update [dbo].[DbSubset] set [MergeSearches]=a.MergeSearches, [DBDefSearchExprType]=a.DBDefSearchExprType, [DBDefSearchExpression]=a.DBDefSearchExpression from (select [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@OldDbVerNo) a where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo else Insert [dbo].[DbSubset] select @NewSubsetDbVerNo, @NewPhysicalDbVerNo, [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@OldDbVerNo END End COMMIT TRANSACTION End try Begin CATCH IF @@Trancount > 0 ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); RETURN End catch END
CREATE PROCEDURE dbo.EAUI_GetProfCustWidgetDetails_97 (@WidgetNo int) AS BEGIN SELECT [pcw].[WidgetID], [pcw].[ProfNo], [pcw].[Type], [pcw].[Label], [pcw].[Height], ISNULL([pcw].[CustomHTML],''), ISNULL([pcw].[URL],''), [pcw].[DefOpen], [pcw].[Show], ISNULL (pcw.SeqNo,1), [pcw].[DisplayScreen] FROM [dbo].[ProfCustomWidgets] pcw left outer join [dbo].[StringValueMap] svm on pcw.DisplayScreen=svm.FieldCode and svm.FieldName='DisplayScreen' WHERE [pcw].[WidgetID]=@WidgetNo END
CREATE PROCEDURE [dbo].[EAUI_AddDatabasePickupLocation_141] ( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @ID nvarchar(255), @DisplayName nvarchar(255) ) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] from dbo.DbList WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @@ROWCOUNT=0 BEGIN RAISERROR('Database name( %s ) label( %s ) does not exist',16,-1, @DbName, @DbLabel) RETURN END IF EXISTS (SELECT 1 FROM dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@DbVerNo AND [dbo].[DbPickupLocation].[LocationID]=@ID) BEGIN RAISERROR('ID %s already exists for this database. Insert failed.',16,-1,@ID) RETURN END BEGIN TRY EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add PickupLocation', '', @ID INSERT INTO dbo.DbPickupLocation ( [dbo].[DbPickupLocation].[DbVerNo], [dbo].[DbPickupLocation].[LocationID], [dbo].[DbPickupLocation].[DisplayName] ) VALUES (@DbVerNo, @ID, @DisplayName) END TRY BEGIN CATCH DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorSeverity = ERROR_SEVERITY() , @ErrorState = ERROR_STATE(); RAISERROR ('Failed to insert ID %s to database %s, %s', -- Message text. @ErrorSeverity, -- Severity. @ErrorState, -- State. @ID, @DbName, @DbLabel ); END CATCH END
CREATE PROCEDURE [dbo].[EPCS_GetProfBranding_70](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @ProfNo int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) DECLARE @profBrandingNo int, @customerBrandingNo int SET @profBrandingNo=dbo.EAIF_GetCustomParamNumber_70('profBranding','P') SET @customerBrandingNo=dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') SELECT b.ParamValue FROM [dbo].[CustomParamScalarValues] a INNER JOIN [dbo].[CustomParamXmlValues] b ON b.ItemName = cast(a.ParamValue as varchar) WHERE a.TargetNo = @ProfNo AND a.ParamLevel = 'P' AND a.ParamNo = @profBrandingNo AND b.ParamNo = @customerBrandingNo AND b.ParamLevel = 'C' END
--sql content merged from file: \StoredProcedures\AUTH_GetRefreshedLibrariesForProduct_99.sql CREATE PROCEDURE [dbo].[AUTH_GetRefreshedLibrariesForProduct_99](@LastRefreshed varchar(20), @MarketID varchar(10), @Product varchar(10)) AS BEGIN DECLARE @ThresholdDate DATETIME = DATEADD(hh, 1, GETDATE()); -- one hour ahead of now SET @ThresholdDate = DATETIMEFROMPARTS(DATEPART(yyyy, @ThresholdDate), DATEPART(mm, @ThresholdDate), DATEPART(dd, @ThresholdDate), DATEPART(hh, @ThresholdDate), 0, 0, 0); -- zeroing minutes, seconds, and milliseconds IF (@MarketID='' OR @MarketID='Any') SET @MarketID = NULL; SELECT c.CustID, ISNULL(pc.DisplayName, c.CustName)AS DisplayName, c.MarketID, ISNULL(pc.ProductAllowed, d.ProductAllowed) as ProductAllowed , d.Product , CONVERT(varchar, CASE WHEN pc.TimeStamp IS NULL THEN c.TimeStamp WHEN pc.TimeStamp > c.TimeStamp THEN pc.TimeStamp ELSE c.TimeStamp END, 120 ) AS [TimeStamp] INTO #tempResult FROM [dbo].[Customer] c WITH (NOLOCK) JOIN [dbo].[CustomParamProductConfigurationDefault] d WITH (NOLOCK) ON c.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[CustomParamProductConfiguration] pc WITH (NOLOCK) ON c.CustID=pc.CustID AND d.Product = pc.Product WHERE c.Status = 'a' and c.CustType <> 'I' AND (c.MarketID = @MarketID OR @MarketID IS NULL ) AND d.Product = @Product AND (pc.TimeStamp >= @LastRefreshed OR c.TimeStamp >= @LastRefreshed OR @LastRefreshed IS NULL); --AND (pc.ProductAllowed=1 OR (pc.ProductAllowed IS NULL AND d.ProductAllowed=1 )) SELECT * FROM #tempResult T WHERE EXISTS (SELECT 1 FROM [dbo].[ProfDatabase] WITH (NOLOCK) INNER JOIN [dbo].[Profile] WITH (NOLOCK) ON [dbo].[Profile].[ProfNo] = [dbo].[ProfDatabase].[ProfNo] WHERE [dbo].[Profile].[CustID] = T.CustID AND [dbo].[ProfDatabase].[Enable] = 1 AND ([dbo].[ProfDatabase].[AccessEndDate] is null OR [dbo].[ProfDatabase].[AccessEndDate] >= @ThresholdDate ) ) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceList_70](@NotIncludeInterfaceType char, @IncludeLive bit) AS BEGIN IF (@IncludeLive = 1) BEGIN SELECT a.InterfaceID, a.Version, a.SiteID, a.SiteURL ,c.InterfaceName FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[Interface] b ON a.InterfaceID=b.InterfaceID INNER JOIN [dbo].[InterfaceLanguage] c ON a.InterfaceID=c.InterfaceID AND a.Version=c.Version WHERE c.LangCode='en' AND b.InterfaceType<>@NotIncludeInterfaceType AND a.InterfaceID <> 'all' ORDER BY a.InterfaceID, a.Version END ELSE BEGIN SELECT a.InterfaceID, a.Version, a.SiteID, a.SiteURL ,c.InterfaceName FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[Interface] b ON a.InterfaceID=b.InterfaceID INNER JOIN [dbo].[InterfaceLanguage] c ON a.InterfaceID=c.InterfaceID AND a.Version=c.Version WHERE c.LangCode='en' AND b.InterfaceType<>@NotIncludeInterfaceType AND a.InterfaceID <> 'all' AND a.Version <> 'live' ORDER BY a.InterfaceID, a.Version END END
CREATE PROCEDURE [dbo].[EAIS_GetEOResyncDate_70] AS BEGIN SELECT dbo.EAIF_GetAdminParamValue_70('eoResyncDate') END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalTitle](@ColNo int, @ISSN varchar(20)) AS BEGIN SET NOCOUNT ON DECLARE @TitleNo int DECLARE @DateCount int SELECT @TitleNo = [dbo].[MasterTitle].[TitleNo] From [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[ISSN]=@ISSN SELECT @DateCount = COUNT(*) FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo SELECT lt.TitleNo, lt.Subscribe, lt.Notes, ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage', @DateCount as 'DateCount' FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo WHERE lt.ColNo=@ColNo AND lt.TitleNo=@TitleNo END
--sql content merged from file: \Functions\EAIF_GetChildInterfaceParams_92.sql CREATE FUNCTION dbo.EAIF_GetChildInterfaceParams_92(@ParamNo int) RETURNS @ItemTable TABLE (Item int) AS BEGIN INSERT INTO @ItemTable SELECT cp.ParamNo FROM [dbo].[CustomParamList] cp WHERE [cp].[ParentParamNo] = @ParamNo ORDER BY cp.ParamNo desc RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbLimitersForAddExcludedAutoAdd_77] (@DbVerNo int, @ScreenNo int, @GroupNo int ) AS BEGIN DECLARE @DbLabel varchar(10) SELECT @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo IF @DbLabel NOT IN ('live','liveQC','rebuild','rebuildQC') SET @DbLabel='custom' SELECT ll.LimiterNo, ll.LimiterId + N':' + ll.Description + N'(' + lct.ControlName+ N')' As Value FROM [dbo].[DbLimiter] dl LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo = dil.DbVerNo AND dl.LimiterNo = dil.LimiterNo AND dil.IntfScreenNo = @ScreenNo INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType WHERE ll.DbLabel = @DbLabel AND dl.DbVerNo = @DbVerNo AND dl.ResFlag = 0 AND dil.LimiterNo is null ORDER BY ll.LimiterId END
CREATE PROCEDURE [dbo].[EAUI_UpdateMasterTitle_70]( @UserID nvarchar(20), @UserIP varchar(15), @TitleNo int, @Title nvarchar(430), @ISSN varchar(20), @eISSN varchar(20), @EBSCOResId varchar(10), @ejsJournalID varchar(10), @ConserNo varchar(10), @MID varchar(10), @DocType varchar(10), @PLinksAllowed bit) AS BEGIN IF @ISSN = '' SET @ISSN = null IF @eISSN = '' SET @eISSN = null IF @EBSCOResId = '' SET @EBSCOResId = null IF @ejsJournalID = '' SET @ejsJournalID = null IF @ConserNo = '' SET @ConserNo = null IF @MID = '' SET @MID = null SET @ISSN = replace(@ISSN,'-','') EXEC [dbo].[EAIP_UpdateMasterTitle_70] @TitleNo, @Title, @ISSN, @eISSN, @EBSCOResId,@ejsJournalID,@ConserNo,@MID, @DocType, 'ui', @PLinksAllowed EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Titles', 'Edit Master Title', @Title, @ISSN, @DocType, @eISSN, @EBSCOResId END
Create PROCEDURE [dbo].[EAIP_PromoteDatabaseIcons_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION Delete dbi from [dbo].[DbIcon] dbi join #TempDbListTable t on dbi.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbIcon] Select t.UpperDbVerNo, IconBitmap From [dbo].[DbIcon] dbi join #TempDbListTable t on dbi.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateFunFact_70](@UserID nvarchar(20), @UserIP varchar(15),@FactNo int, @Title nvarchar(100), @Fact nvarchar(1000), @Image varchar(50)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[FunFacts] Where [dbo].[FunFacts].[FactNo]=@FactNo) BEGIN UPDATE [dbo].[FunFacts] SET [dbo].[FunFacts].[Title]=@Title, [dbo].[FunFacts].[Fact]=@Fact, [dbo].[FunFacts].[Image]=@Image Where [dbo].[FunFacts].[FactNo]=@FactNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Fun Facts', 'Edit Fun Fact', @FactNo, @Title END ELSE BEGIN DECLARE @NextFactNo int SELECT @NextFactNo=max([dbo].[FunFacts].[FactNo])+1 FROM [dbo].[FunFacts] INSERT INTO [dbo].[FunFacts] ([dbo].[FunFacts].[FactNo],[dbo].[FunFacts].[InterfaceID], [dbo].[FunFacts].[Title], [dbo].[FunFacts].[Fact], [dbo].[FunFacts].[Image]) VALUES (@NextFactNo, 'SAS',@Title,@Fact,@Image) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Fun Facts', 'Add Fun Fact', @NextFactNo, @Title END END
CREATE FUNCTION [dbo].[EAIF_GetProfDottedName_70](@ProfNo int) RETURNS varchar(40) AS BEGIN RETURN ISNULL((SELECT [dbo].[Profile].[CustID]+'.'+[dbo].[Profile].[GroupID]+'.'+[dbo].[Profile].[ProfID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo),'Uknown') END
CREATE PROCEDURE [dbo].[EAUI_GetCustCollListBrowseByColId_70](@CustID varchar(20), @ColId nvarchar(50)) AS BEGIN SELECT a.ColNo, a.ColID, a.ColName, Owned=CASE a.SharedFrom WHEN 0 THEN 'Yes' ELSE 'No' END, Owner=IsNull(b.CustID,'Self'), a.Notes, Hidden=CASE a.Hidden WHEN 1 THEN 'Yes' ELSE 'No' END, a.LastUpdateDate FROM [dbo].[Collection] a LEFT OUTER JOIN [dbo].[Collection] b ON a.SharedFrom = b.ColNo WHERE a.CustID = @CustID AND a.ColID >= @ColId AND a.IsDeleted = 0 ORDER BY a.ColID END
-- This procedure will create shell for catalog and IR when that is created in subscription procedure -- If shell template does not exist it will create empty database shell CREATE PROCEDURE [dbo].[EAIP_CopyCatalogShell_132] ( @CatDbName VARCHAR(10), @CatDisplayName NVARCHAR(100), @CatDbLabel VARCHAR(10), @SourceType CHAR(1), @TemplateDbName VARCHAR(10), @LogUserId NVARCHAR(20), @LogUserIp VARCHAR(15) ) AS BEGIN SET NOCOUNT ON; DECLARE @CatTemplateDbLabel VARCHAR(10); -- Following is predefined template name, label SELECT @CatTemplateDbLabel = 'rebuildQC'; IF EXISTS ( SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @TemplateDbName AND [dbo].[DbList].[DbLabel] = @CatTemplateDbLabel ) BEGIN DECLARE @CatalogShell TABLE ( ShellConfig XML ); --Retrieve catalog shell INSERT INTO @CatalogShell EXEC dbo.EACOPY_AUTO_GetXmlDbInfo @TemplateDbName, @CatTemplateDbLabel; --DECLARE @ExcludeList XML = NULL; DECLARE @ShellConfigXml XML; SELECT @ShellConfigXml = ShellConfig FROM @CatalogShell; -- Use the shell configuration to create data for newly created catalog EXECUTE dbo.EACOPY_LoadFromXmlDbInfo_99 @CopyToDbName = @CatDbName, @CopyToDbLabel = @CatDbLabel, @xmlDoc = @ShellConfigXml, @ExcludeList = NULL, @AllowObjectUpdate = 'Y', -- to avoid checks @AllowCopyAcrossVersions = 'N', -- set to Y if avoids checks @UserId = @LogUserId, @UserIp = @LogUserIp, @verbose = 'N' -- Verbose logging not needed -- Set DisplayName after copy UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @CatDisplayName WHERE [dbo].[DbList].[DbName] = @CatDbName AND [dbo].[DbList].[DbLabel] = @CatTemplateDbLabel UPDATE dbo.DbDocType SET [TargetDb]=@CatDbName FROM dbo.DbDocType dbdt JOIN dbo.DbList dbl ON dbdt.DbVerNo=dbl.DbVerNo AND dbl.DbName=@CatDbName AND dbl.DbLabel = @CatTemplateDbLabel END ELSE --catalog template missing, create empty shell EXEC [dbo].[EAIP_AddDatabase_133] @DbName = @CatDbName, @DbLabel = 'rebuildQC', @DisplayName = @CatDisplayName, @DSFamilyName = @CatDbName, @DbGroup = null, @DbCategory = 'l', @DbType = 1, @ContentType = 1, @MultiSegment = 0, @EnforceSimUsage = 0, @ShowStats = 1, @ShowOnDDSConsole = 1, @WebClient = 1, @WinClient = 0, @CharClient = 0, @Z3950Client = 1, @EPXBuild = 0, @EDABuild = 1, @IncludeWhenAutoAdd = 0, @SourceType = @SourceType END
CREATE PROCEDURE dbo.EAIP_GetDbInterfaceBrowseOptions_76(@DbVerNo int) AS BEGIN /***stored procedure is used by EACopy utility***/ SELECT INS.InterfaceID , INS.Version , INS.ScreenID , BOL.BrowseOptionId , DIBO.Show , DIBO.SeqNo FROM dbo.InterfaceScreen AS INS INNER JOIN dbo.DbInterfaceBrowseOption AS DIBO ON DIBO.IntfScreenNo = INS.IntfScreenNo INNER JOIN dbo.BrowseOptionList AS BOL ON DIBO.BrowseOptionNo = BOL.BrowseOptionNo WHERE DIBO.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_InterfaceToolbarItemsReorder_77] (@UserID nvarchar(20),@UserIP varchar(30), @IntfToolbarItemList varchar(8000),@SeqNoList varchar(8000))AS BEGIN DECLARE @Interface varchar(30) SELECT @Interface=[a].[InterfaceID]+','+[a].[Version] FROM [dbo].[InterfaceToolbar] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@IntfToolbarItemList, @SeqNoList,'+') b ON a.IntfToolbarItem=b.Item If @Interface is null SET @Interface ='' BEGIN TRANSACTION UPDATE [dbo].[InterfaceToolbar] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[InterfaceToolbar] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@IntfToolbarItemList, @SeqNoList,'+') b ON a.IntfToolbarItem=CONVERT(int, b.Item) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Reorder ToolbarItems',@Interface,'' COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbRTACInfo(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbRTACInfo].[Enable], [dbo].[DbRTACInfo].[Config], [dbo].[DbRTACInfo].[Translation], [dbo].[DbRTACInfo].[ILSIntegration] FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbRTACInfo].[Enable], [dbo].[DbRTACInfo].[ILSIntegration] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabase_70] (@UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo IF @DbLabel = 'live' BEGIN IF EXISTS (SELECT 1 FROM EASUPPORT.dbo.ProductPackage WHERE [EASUPPORT].[dbo].[ProductPackage].[ProductID]=@DbName) BEGIN RAISERROR('Please detach this product from the product offerings, first', 16,-1) RETURN END END IF @DbLabel ='rebuildQC' AND EXISTS (SELECT 1 FROM EASUPPORT.dbo.DbAutoGeneratedNameDetails WHERE [EASUPPORT].[dbo].[DbAutoGeneratedNameDetails].[TemplateDbName]=@DbName ) BEGIN RAISERROR('Cannot delete Catalog/IR Template from rebuildQC, this is template database used in creating Catalog/IR shell for new subscriptions.', 16,-1) RETURN END IF EXISTS (SELECT 1 FROM EASUPPORT.dbo.CustomerCatalogs WHERE [EASUPPORT].[dbo].[CustomerCatalogs].[DbName]=@DbName) BEGIN IF EXISTS (SELECT 1 FROM EASUPPORT.dbo.CustomerCatalogs cc JOIN EASUPPORT.dbo.CustSubscription cs ON cs.SubscriptionNo = cc.SubscriptionNo AND cs.SubscriberID = cc.SubscriberID WHERE cc.DbName = @DbName) BEGIN RAISERROR('Cannot delete a Catalog with active Subscriptions.', 16,-1) RETURN END ELSE IF @DbLabel = 'live' OR (NOT EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] != @DbLabel)) BEGIN DELETE [dbo].[CustCatalogNotificationConfig] WHERE [dbo].[CustCatalogNotificationConfig].[DbName] = @DbName; DELETE EASUPPORT.dbo.CustomerCatalogs WHERE [EASUPPORT].[dbo].[CustomerCatalogs].[DbName] = @DbName; END END EXEC [dbo].[EAIP_DeleteDatabase_70] @DbVerNo EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Database', 'Delete Database', @DbName, @DbLabel END
CREATE PROCEDURE [dbo].[Z3950_GetVendorForms](@VendorID varchar(10)) AS BEGIN SELECT [dbo].[Z3950Forms].[FormID], [dbo].[Z3950Forms].[FormText] FROM [dbo].[Z3950Forms] WHERE [dbo].[Z3950Forms].[VendorID]=@VendorID END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceSearchThemes_83] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceSearchTheme].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceSearchTheme] ([dbo].[InterfaceSearchTheme].[InterfaceID], [dbo].[InterfaceSearchTheme].[Version], [dbo].[InterfaceSearchTheme].[ThemeID],[dbo].[InterfaceSearchTheme].[SearchString],[dbo].[InterfaceSearchTheme].[Image],[dbo].[InterfaceSearchTheme].[SeqNo],[dbo].[InterfaceSearchTheme].[Show], [dbo].[InterfaceSearchTheme].[CustomAttributes]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceSearchTheme].[ThemeID], [dbo].[InterfaceSearchTheme].[SearchString], [dbo].[InterfaceSearchTheme].[Image], [dbo].[InterfaceSearchTheme].[SeqNo], [dbo].[InterfaceSearchTheme].[Show], [dbo].[InterfaceSearchTheme].[CustomAttributes] FROM [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceSearchTheme].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceSearchThemeCaption] ([dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo],[ftm].[LangCode],[ftm].[Caption],[ftm].[ImageAltText],[ftm].[Description]) SELECT ins.InterfaceThemeNo, ftm.LangCode, ftm.Caption, ftm.ImageAltText, ftm.Description FROM [dbo].[SearchTheme] AS s INNER JOIN [dbo].[InterfaceSearchTheme] AS ins ON s.ThemeID =ins.ThemeID INNER JOIN ( SELECT infs.ThemeID, ifcs.LangCode, ifcs.Caption, ifcs.ImageAltText, ifcs.Description FROM [dbo].[SearchTheme] AS st INNER JOIN [dbo].[InterfaceSearchTheme] AS infs ON st.ThemeID =infs.ThemeID INNER JOIN [dbo].[InterfaceSearchThemeCaption] AS ifcs ON infs.InterfaceThemeNo = ifcs.InterfaceThemeNo WHERE infs.InterfaceID = @InterfaceIDFrom AND infs.Version = @VersionFrom AND LEN(ISNULL(ifcs.LangCode, '')) > 0 ) AS ftm ON s.ThemeID =ftm.ThemeID WHERE ins.InterfaceID = @InterfaceIDTo AND ins.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseAuthorities_70](@OldDbVerNo int, @OldDbLabel varchar(10), @NewDbVerNo int, @NewDbLabel varchar(10), @BasicParams bit, @Forms bit, @Limiters bit, @SegmentFileInfo bit, @SortOptions bit, @Subjects bit, @DbFields bit, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit =1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1) AS BEGIN IF NOT EXISTS (SELECT 1 FROM #PromoteDatbases a INNER JOIN dbo.DbAuthority b ON a.DbVerNo=b.MainDbVerNo WHERE b.MainDbVerNo = @NewDbVerNo AND a.[DbVerNo] IN(SELECT c.AuthDbVerNo FROM dbo.DbSubset a INNER JOIN dbo.DbAuthority c ON a.SubsetDbVerNo=c.MainDbVerNo WHERE a.SubsetDbVerNo = @OldDbVerNo)) BEGIN DECLARE A_CURSOR CURSOR FOR SELECT a.AuthDbVerNo, b.DbName FROM [dbo].[DbAuthority] a INNER JOIN [dbo].[DbList] b ON a.AuthDbVerNo=b.DbVerNo WHERE a.MainDbVerNo=@OldDbVerNo AND b.DbType <> 4 BEGIN TRANSACTION BEGIN TRY BEGIN DECLARE @tempDbVerNo int DECLARE @tempDbName varchar(10) OPEN A_CURSOR FETCH NEXT FROM A_CURSOR INTO @tempDbVerNo, @tempDbName WHILE (@@FETCH_STATUS = 0) BEGIN EXEC [dbo].[EAIP_PromoteDatabase_141] @tempDbVerNo, @tempDbName, @NewDbLabel, @BasicParams, 0, 0, 0, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields, @SearchOptions,@BrowseOptions,@AuthFilter,@Topics,0,@Groups, @Customizers , @Clusters, @MultiDbAuthorities,@ToolbarItems, 0, 1, 0, 1 FETCH NEXT FROM A_CURSOR INTO @tempDbVerNo, @tempDbName END CLOSE A_CURSOR DEALLOCATE A_CURSOR END /* Remove any existing authorities for the promotion TARGET*/ DELETE FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo]=@NewDbVerNo /* Now add the appropriate records to the DbAuthority table for the TARGET db*/ INSERT INTO [dbo].[DbAuthority] ( [A1].[MainDbVerNo], [A1].[AuthDbVerNo], [A1].[OwnedFlag], [A1].[SeqNo]) SELECT @NewDbVerNo AS MainDbVerNo, L2.DbVerNo AS AuthDbVerNo, A1.OwnedFlag, A1.SeqNo FROM [dbo].[DbAuthority] A1 INNER JOIN [dbo].[DbList] L1 ON A1.AuthDbVerNo=L1.DbVerNo INNER JOIN [dbo].[DbList] L2 ON L1.DbName=L2.DbName WHERE A1.MainDbVerNo=@OldDbVerNo AND L2.DbLabel=@NewDbLabel COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION CLOSE A_CURSOR DEALLOCATE A_CURSOR DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); RETURN END CATCH END END
--sql content merged from file: \StoredProcedures\EAUI_GetProfDbDisplayDetails_92.sql CREATE PROCEDURE [dbo].[EAUI_GetProfDbDisplayDetails_92] (@ProfNo int,@DBVerNo int) AS BEGIN Declare @ResultProfNo int Declare @ResultDbVerNo int Declare @CustomizedResourceType nvarchar(255) Declare @CustomizedShortDescription nvarchar(2000) Declare @CustomizedDisplayName nvarchar(255) Declare @IsShortDescriptionDefault bit Declare @IsResourceTypeDefault bit Declare @IsDisplayNameDefault bit Declare @DbName varchar(10) Declare @DefaultDisplayName nvarchar(100) Declare @DefaultVendor nvarchar(100) Declare @DefaultResourceType nvarchar(255) Declare @DefaultDisplay nvarchar(255) Declare @SourceType char(1) set @IsShortDescriptionDefault=0 -- This proc reads only the customized description; DAL gets the default desc. BEGIN -- Get the Customized Profile Db Details Select @CustomizedResourceType=[dbo].[ProfileDbDisplayDetails].[ProfDbResourceType], @CustomizedShortDescription=[dbo].[ProfileDbDisplayDetails].[ProfDbShortDescription], @CustomizedDisplayName=[dbo].[ProfileDbDisplayDetails].[ProfDbDisplayName] FROM [dbo].[ProfileDbDisplayDetails] Where [dbo].[ProfileDbDisplayDetails].[ProfNo] = @ProfNo and [dbo].[ProfileDbDisplayDetails].[DbVerNo]=@DBVerNo -- Get the default (Global or system level) Resource type from the DbParamScalarValues SELECT @DefaultResourceType=dbo.EAIF_GetDbParamScalarValue_70(@DBVerNo, 'ResourceType') -- Get the Db Display name and Vendor Name (Default values) for the database SELECT @DefaultDisplayName=d.DisplayName+ N' ('+d.DbName+N')', @DbName=d.DbName, @DefaultDisplay=d.DisplayName, @DefaultVendor=(CASE d.SourceType WHEN 'M' THEN es.VendorName WHEN 'D' THEN svm.Description END) , @SourceType=d.SourceType FROM [dbo].[DbList] d LEFT OUTER JOIN [dbo].[DbListExternalSource] es on (d.DbVerNo=es.DbVerNo) LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') WHERE d.DbVerNo=@DbVerNo IF (@CustomizedResourceType IS NULL and @DefaultResourceType is not null) SET @IsResourceTypeDefault = 1 ELSE SET @IsResourceTypeDefault = 0 if (@CustomizedDisplayName IS NULL and @DefaultDisplay is not null) set @IsDisplayNameDefault=1 else set @IsDisplayNameDefault=0 /* Note : Logic to get Default ShortDescription (if any) is in Data access layer */ END Select @ProfNo as ProfNo, @DBVerNo as DbVerNo, @DefaultDisplayName as DisplayName, ISNULL(@DefaultVendor,N'') as VendorName, @IsResourceTypeDefault As IsResourceTypeDefault, ISNULL(@CustomizedResourceType,@DefaultResourceType) as ResourceType, @IsShortDescriptionDefault as IsShortDescriptionDefault, ISNULL(@CustomizedShortDescription,N'') as DbShortDescription, @DbName, isnull(@CustomizedDisplayName,@DefaultDisplay) as CustomizedDisplayName, @IsDisplayNameDefault as IsDisplayNameDefault, @SourceType as SourceType END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseSegment_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @SegDescription nvarchar(100)) AS BEGIN DECLARE @SeqNo int IF EXISTS (SELECT 1 FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@SegName) BEGIN RAISERROR('Segment %s already exists for this database. Insert failed.',16,-1,@SegName) RETURN END SELECT @SeqNo=(ISNULL(MAX([dbo].[DbSegment].[SeqNo]),0) + 1) FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Segment', '', @SegName INSERT INTO [dbo].[DbSegment] ( [dbo].[DbSegment].[DbVerNo], [dbo].[DbSegment].[SegName], [dbo].[DbSegment].[SegDescription], [dbo].[DbSegment].[SeqNo] ) VALUES (@DbVerNo, @SegName, @SegDescription, @SeqNo) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert failed for segment %s and database %s, %s',16,-1,@SegName, @DbName, @DbLabel) RETURN END END
CREATE PROCEDURE [dbo].[EPCS_GetProfCatalogHoldingTblCaptions_104] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @LangCode varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID Select d.DbName as shortName,d.DbLabel as dbLabel, dbo.EAIF_GetProfCatalogHoldingTblCaptions_104(@ProfNo,d.DbVerNo,@LangCode) as Captions FROM [dbo].[ProfDatabase] pd inner join [dbo].[DbList] d on (d.DbVerNo = pd.DbVerNo and d.SourceType = 'C') WHERE pd.ProfNo=@ProfNo and pd.Enable=1 AND d.DbName like 'cat%' AND (pd.Mode is null or pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0) order by pd.SeqNo END
CREATE PROCEDURE [dbo].[AUTH_GetRefreshedLibraryInfoForProduct_99](@LastRefreshed varchar(20), @MarketID varchar(10), @Product varchar(10)) AS BEGIN SELECT c.CustID, ISNULL(pc.DisplayName, c.CustName)AS DisplayName, [c].[MarketID], ISNULL(pc.ProductAllowed,0) as ProductAllowed, a.City,a.State,a.PostalCode,a.CountryID, pc.Product, CONVERT(varchar, pc.TimeStamp, 120) AS [TimeStamp] FROM [dbo].[Customer] c JOIN [dbo].[CustomParamProductConfiguration] pc ON c.CustID=pc.CustID JOIN [dbo].[CustAddress] a ON c.CustID=a.CustID WHERE (c.MarketID = @MarketID OR @MarketID='' OR @MarketID IS NULL OR @MarketID='Any') AND pc.Product = @Product AND (pc.TimeStamp>=@LastRefreshed OR @LastRefreshed IS NULL) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceList_81] AS BEGIN SELECT [dbo].[InterfaceLanguage].[InterfaceID]+'-'+[dbo].[InterfaceLanguage].[Version] AS Interface, [dbo].[InterfaceLanguage].[InterfaceName]+' ('+ [dbo].[InterfaceLanguage].[InterfaceID]+'-'+[dbo].[InterfaceLanguage].[Version]+')' AS InterfaceName FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[LangCode]='en' ORDER BY InterfaceName END
CREATE PROCEDURE [dbo].[EAIS_InitCollection_70] ( @CustID varchar(10), @ColID nvarchar(50), @Options varchar(20), @ColName nvarchar(50)=@ColID ) AS BEGIN DECLARE @ColNo int DECLARE @IsNew int SELECT @ColNo=[dbo].[Collection].[ColNo], @IsNew=0 FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted] = 0 IF @ColNo IS NULL BEGIN SELECT @IsNew=1 EXEC [dbo].[EAIPO_AddCollection_70] @CustID, @ColID, @ColName, 0, null, 0, 0, @ColNo=@ColNo OUTPUT END IF @ColNo is NOT null BEGIN -- Parse the options IF CharIndex('f',@Options) > 0 -- Force Recreate UPDATE [dbo].[Collection] SET [dbo].[Collection].[ForceRecreate] = 1 WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[ForceRecreate] = 0 IF CharIndex('e',@Options) > 0 -- EBSCO Online UPDATE [dbo].[Collection] SET [dbo].[Collection].[Eonline] = 1 WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[Eonline]=0 IF CharIndex('h',@Options) > 0 -- Hidden UPDATE [dbo].[Collection] SET [dbo].[Collection].[Hidden] = 1 WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[Hidden] = 0 IF CharIndex('r',@Options) > 0 -- Importing in Replace mode BEGIN -- Mark the current titles and dates for deletion later UPDATE [dbo].[LocalTitle] SET [dbo].[LocalTitle].[Status]='d' WHERE [dbo].[LocalTitle].[ColNo]=@ColNo UPDATE [dbo].[LocalDate] SET [dbo].[LocalDate].[Status]='d' WHERE [dbo].[LocalDate].[ColNo]=@ColNo END END SELECT @ColNo, @IsNew END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalTitleInfo]( @CustomerID varchar(10), @CollectionID varchar(50), @ISSN1 varchar(20), @ISSN2 varchar(20), @ISSN3 varchar(20), @ISSN4 varchar(20), @ISSN5 varchar(20), @ISSN6 varchar(20), @ISSN7 varchar(20), @ISSN8 varchar(20), @ISSN9 varchar(20), @ISSN10 varchar(20) ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID AND [dbo].[Collection].[IsDeleted] = 0 SELECT m.ISSN, m.Title, [d].[FromDate], [d].[ToDate], [lt].[Subscribe], lt.Notes, ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage' FROM [dbo].[LocalDate] d RIGHT OUTER JOIN [dbo].[MasterTitle] m ON d.TitleNo = m.TitleNo AND d.ColNo = @ColNo INNER JOIN [dbo].[LocalTitle] lt ON lt.TitleNo = m.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo WHERE lt.ColNo = @ColNo AND m.ISSN IN ( @ISSN1, @ISSN2, @ISSN3, @ISSN4, @ISSN5, @ISSN6, @ISSN7, @ISSN8, @ISSN9, @ISSN10) ORDER BY m.Title, m.ISSN END
--sql content merged from file: \Functions\EAIF_GetCustGroupDbInsertValues_92.sql CREATE FUNCTION [dbo].[EAIF_GetCustGroupDbInsertValues_92]( @DbList varchar(8000), @Sep char(1), @StartNum int=1, @Increment int=1) RETURNS @EItemTable TABLE (Num int,MergeFlag int,Item varchar(255)) AS BEGIN DECLARE @DotPos int DECLARE @Item varchar(255) DECLARE @Ind int Select @Ind=0 SELECT @DotPos=charindex(@Sep,@DbList) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item=left(@DbList,@DotPos-1) SELECT @Ind=(SELECT Case db.SourceType WHEN 'D' THEN 1 ELSE 0 END FROM [dbo].[DbList] db WHERE db.DbVerNo=Convert(int,@Item)) INSERT INTO @EItemTable VALUES(@StartNum,@Ind,@Item) SELECT @DbList=substring(@DbList,@DotPos+1,8000) SELECT @DotPos=charindex(@Sep,@DbList) SELECT @StartNum = @StartNum+@Increment END -- INSERT INTO @EItemTable VALUES(@StartNum,@Ind,@DbList) RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbLimiterUse_70] (@LimiterNo int) AS BEGIN SELECT b.DbName, b.DisplayName,d.LimiterId, c.Caption,a.SearchString FROM [dbo].[DbLimiter] a JOIN [dbo].[DbList] b ON a.DbVerNo=b.DbVerNo JOIN [dbo].[DbLimiterCaption] c ON a.DbVerNo=c.DbVerNo AND a.LimiterNo=c.LimiterNo JOIN [dbo].[LimiterList] d ON a.LimiterNo=d.LimiterNo WHERE a.LimiterNo = @LimiterNo AND c.LangCode='en' ORDER BY b.DbName END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileDbLimiterFoAllDbs_76] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ScreenNo int, @LimiterNo int, @ControlDefault varchar(255), @Caption nvarchar(255), ----MBCS: ProfMDbLimitersExternalSourceCaption - Caption; Changed size from 100 to 255 @Show int, @LangCode varchar(10), @SeqNo int) AS BEGIN DECLARE @DbVerNo int Declare @MDbLimiterExternalSourceNo int Declare @DbLabel varchar(10) Declare @LimiterID varchar(10) Declare @SourceType char(1) Declare @ExternalsHandled bit set @ExternalsHandled=0 DECLARE @AutoAddLmiter bit SELECT @AutoAddLmiter=[dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo IF @AutoAddLmiter=1 DECLARE C1_M CURSOR FOR SELECT dl.DbVerNo FROM [dbo].[ProfDatabase] pdb INNER JOIN [dbo].[DbLimiter] dl ON pdb.DbVerNo = dl.DbVerNo WHERE pdb.ProfNo = @ProfNo AND dl.LimiterNo = @LimiterNo Union Select dbl.DbVerNo from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo and dbl.SourceType='M' Where pdb.ProfNo=@ProfNo ELSE DECLARE C1_M CURSOR FOR SELECT dl.DbVerNo FROM [dbo].[ProfDatabase] pdb INNER JOIN [dbo].[DbInterfaceLimiter] dl ON pdb.DbVerNo = dl.DbVerNo WHERE pdb.ProfNo = @ProfNo AND dl.IntfScreenNo=@ScreenNo AND dl.LimiterNo = @LimiterNo Union Select dbl.DbVerNo from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo and dbl.SourceType='M' Where pdb.ProfNo=@ProfNo FOR READ ONLY OPEN C1_M FETCH NEXT FROM C1_M INTO @DbVerNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAUI_UpdateProfileDbLimiter_76] @UserID, @UserIP, @ProfNo, @DbVerNo, @ScreenNo, @LimiterNo, @ControlDefault, @Caption, @Show, @LangCode, @SeqNo Select @LimiterID=[dbo].[LimiterList].[LimiterId] from [dbo].[LimiterList] where [dbo].[LimiterList].[LimiterNo]=@LimiterNo Select @DbLabel=[dbo].[DbList].[DbLabel], @SourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo If @SourceType='M' and @ExternalsHandled=0 If exists (Select 1 from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID and [dbo].[MDbLimitersExternalSource].[DbLabel]=@DbLabel) Begin Select @MDbLimiterExternalSourceNo=[dbo].[MDbLimitersExternalSource].[LimiterNo] from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID and [dbo].[MDbLimitersExternalSource].[DbLabel]=@DbLabel exec [dbo].[EAUI_UpdateProfMDbLimitersExternalSource_102] @UserID, @UserIP, @ProfNo, @ScreenNo, @MDbLimiterExternalSourceNo, @LangCode, @Show, @Caption, @ControlDefault, @SeqNo set @ExternalsHandled=1 End FETCH NEXT FROM C1_M INTO @DbVerNo END END CLOSE C1_M DEALLOCATE C1_M END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseLimiters_161] ( @NewDbLabel varchar(10), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit ) AS BEGIN BEGIN TRY BEGIN TRANSACTION /* Make LimiterList, LimiterDefaults, LimiterDetail all upto date*/ DECLARE @NewLabel varchar(10) DECLARE @LimiterMap table (OldLimNo int PRIMARY KEY, NewLimNo int) Set @NewLabel=@NewDbLabel IF @NewDbLabel NOT IN ('live','liveQC','rebuild','rebuildQC') SET @NewLabel = 'custom' -- all other labels share custom limiters /* Freshen up LimiterList Data */ UPDATE c SET c.LimiterType=b.LimiterType, c.ControlType=b.ControlType, c.ControlSize=b.ControlSize, c.LogicalOpCode=b.LogicalOpCode, c.SearchString=b.SearchString, c.Description=b.Description, c.Notes=b.Notes, c.BitFlag1=b.BitFlag1, c.BitFlag2=b.BitFlag2, c.BitFlag3=b.BitFlag3, c.BitFlag4=b.BitFlag4, c.BitFlag5=b.BitFlag5, c.BitFlag6=b.BitFlag6, c.BitFlag7=b.BitFlag7, c.BitFlag8=b.BitFlag8, c.EnableQueryMask = b.EnableQueryMask, c.QueryMaskId = b.QueryMaskId, c.IsListContentsGrouped = b.IsListContentsGrouped, c.ListItemUniqueId = b.ListItemUniqueId, c.HelpUrl=b.HelpUrl FROM [dbo].[DbLimiter] a INNER JOIN #TempDbListTable t ON t.LowerDbVerNo=a.DbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo INNER JOIN [dbo].[LimiterList] c ON b.LimiterId=c.LimiterId and c.DbLabel=@NewLabel /* Add the Limiters for new label */ INSERT INTO [dbo].[LimiterList]([b].[LimiterId], [b].[DbLabel], [b].[LimiterType], [b].[ControlType], [b].[ControlSize], [b].[LogicalOpCode], [b].[SearchString], [b].[Description], [b].[Notes], [b].[BitFlag1], [b].[BitFlag2], [b].[BitFlag3], [b].[BitFlag4], [b].[BitFlag5], [b].[BitFlag6], [b].[BitFlag7], [b].[BitFlag8], [b].[EnableQueryMask], [b].[QueryMaskId],[b].[IsListContentsGrouped],[b].[ListItemUniqueId]) SELECT b.LimiterId, @NewLabel, b.LimiterType, b.ControlType, b.ControlSize, b.LogicalOpCode, b.SearchString, b.Description, b.Notes, b.BitFlag1, b.BitFlag2, b.BitFlag3, b.BitFlag4, b.BitFlag5, b.BitFlag6, b.BitFlag7, b.BitFlag8, b.EnableQueryMask, b.QueryMaskId,b.IsListContentsGrouped,b.ListItemUniqueId FROM [dbo].[DbLimiter] a INNER JOIN #TempDbListTable t ON t.LowerDbVerNo=a.DbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo WHERE b.LimiterId NOT IN ( SELECT [dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[DbLabel]=@NewLabel) /* Create an in-memory Old and New Limiter Mapping table */ INSERT INTO @LimiterMap SELECT distinct a.LimiterNo, c.LimiterNo FROM [dbo].[DbLimiter] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo INNER JOIN [dbo].[LimiterList] c ON b.LimiterId=c.LimiterId AND c.DbLabel=@NewLabel /****** Database Limiters ****** Remove Database specific Limiters: DbLimiters */ DELETE Dbl FROM [dbo].[DbLimiter] Dbl INNER JOIN #TempDbListTable t ON dbl.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) /* Populate it with promoted database limiters */ INSERT INTO [dbo].[DbLimiter] SELECT t.UpperDbVerNo AS DbVerNo, c.NewLimNo, a.ResFlag, a.SearchString, a.SeqNo,a.DefValue FROM [dbo].[DbLimiter] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN @LimiterMap c ON a.LimiterNo=c.OldLimNo /** DbLimiter Details*/ DELETE Dld FROM [dbo].[DbLimiterDetail] Dld INNER JOIN #TempDbListTable t ON Dld.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbLimiterDetail] SELECT t.UpperDbVerNo AS DbVerNo, c.NewLimNo, ControlTemplate FROM [dbo].[DbLimiterDetail] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN @LimiterMap c ON a.LimiterNo=c.OldLimNo /****** LIMITER CAPTIONS ******/ DELETE Dlc FROM [dbo].[DbLimiterCaption] Dlc INNER JOIN #TempDbListTable t ON Dlc.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbLimiterCaption] SELECT t.UpperDbVerNo AS DbVerNo, c.NewLimNo, LangCode, Caption, MouseOverText FROM [dbo].[DbLimiterCaption] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN @LimiterMap c ON a.LimiterNo=c.OldLimNo /** DbInterfaceLimiter*/ DELETE Dil FROM [dbo].[DbInterfaceLimiter] Dil INNER JOIN #TempDbListTable t ON Dil.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbInterfaceLimiter] SELECT t.UpperDbVerNo AS DbVerNo,IntfScreenNo, c.NewLimNo, ControlType,Show,DefValue,GroupNo,SeqNo, DefPosn, ColNum FROM [dbo].[DbInterfaceLimiter] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INNER JOIN @LimiterMap c ON a.LimiterNo=c.OldLimNo /* Remove Customized Profile Database Limiters that are not found in DbLimiters */ DELETE a FROM [dbo].[ProfDbLimiter2] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE a.LimiterNo NOT IN (SELECT LimiterNo FROM [dbo].[DbLimiter] d INNER JOIN #TempDbListTable t ON d.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) ) /* Remove Customized Profile Database Limiters that are not found in DbLimiters */ DELETE a FROM [dbo].[ProfDbLimiterDbOrder] a INNER JOIN #TempDbListTable t ON a.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE a.LimiterNo NOT IN (SELECT LimiterNo FROM [dbo].[DbLimiter] d INNER JOIN #TempDbListTable t ON d.DbVerNo=t.UpperDbVerNo) and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateGlobalCluster_102] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(20), @XPath varchar(4000), @XPathEnh varchar(4000), @Notes nvarchar(1000), @Tag varchar(20), @Caption nvarchar(255),@LangCode varchar(10), @Show bit, @MinDisplay int, @MaxDisplay int, @MaxPercentageResults int, @CaseConversion tinyint, @AutoAdd2Interfaces bit) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[GlobalCluster] SET [dbo].[GlobalCluster].[Tag]=@Tag, [dbo].[GlobalCluster].[Notes] = @Notes, [dbo].[GlobalCluster].[XPath] = @XPath, [dbo].[GlobalCluster].[XPathEnh] = @XPathEnh, [dbo].[GlobalCluster].[MinDisplay] = @MinDisplay, [dbo].[GlobalCluster].[MaxDisplay] = @MaxDisplay, [dbo].[GlobalCluster].[Show] = @Show, [dbo].[GlobalCluster].[MaxPercentageResults] = @MaxPercentageResults, [dbo].[GlobalCluster].[CaseConversion] = @CaseConversion, [dbo].[GlobalCluster].[AutoAdd2Interfaces] = @AutoAdd2Interfaces WHERE [dbo].[GlobalCluster].[ID]=@ID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID]=@ID AND [dbo].[GlobalClusterCaption].[LangCode]=@LangCode) UPDATE [dbo].[GlobalClusterCaption] SET [dbo].[GlobalClusterCaption].[Caption]=@Caption WHERE [dbo].[GlobalClusterCaption].[ID]=@ID AND [dbo].[GlobalClusterCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[GlobalClusterCaption]([dbo].[GlobalClusterCaption].[ID], [dbo].[GlobalClusterCaption].[LangCode], [dbo].[GlobalClusterCaption].[Caption]) VALUES (@ID, @LangCode, @Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Update Global Cluster', @ID COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetProfFieldDefaults_70](@ProfNo int, @DbVerNo int, @FieldGroupNo int) RETURNS varchar(8000) AS BEGIN DECLARE @OutputModeDefaults varchar(8000) SET @OutputModeDefaults='' SELECT @OutputModeDefaults = @OutputModeDefaults + ' ' END' FROM [dbo].[ProfFieldGroupDefaults] WHERE [dbo].[ProfFieldGroupDefaults].[ProfNo]=@ProfNo AND [dbo].[ProfFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[ProfFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo RETURN @OutputModeDefaults + '
--modified 2012.01.12 by jjalbert to only count "available" connectors CREATE PROCEDURE [dbo].[EAUI_GetCustExternalSourceCounts_102] @CustID VARCHAR(10) AS DECLARE @free int = 0 dECLARE @paid int = 0 SELECT @free=COUNT(*) FROM [dbo].[DbList] d JOIN [dbo].[DbListExternalSource] de ON (de.DbVerNo = d.DbVerNo) JOIN [dbo].[CustExternalDbList] cd ON (cd.DbVerNo = de.DbVerNo) JOIN [dbo].[Customer] c ON (c.CustNo = cd.CustNo) WHERE d.DbLabel = 'live' AND de.Free = 1 And c.CustID=@CustID AND cd.Status = 'A' SELECT @paid=COUNT(*) FROM [dbo].[DbList] d JOIN [dbo].[DbListExternalSource] de ON (de.DbVerNo = d.DbVerNo) JOIN [dbo].[CustExternalDbList] cd ON (cd.DbVerNo = de.DbVerNo) JOIN [dbo].[Customer] c ON (c.CustNo = cd.CustNo) WHERE d.DbLabel = 'live' AND de.Free = 0 And c.CustID=@CustId AND cd.Status = 'A' SELECT @free as free, @paid as paid
--sql content merged from file: \StoredProcedures\EAIP_CopyCluster_80.sql CREATE PROCEDURE [dbo].[EAIP_CopyCluster_102] (@ID varchar(20), @DbLabel varchar(10), @XPath varchar(4000), @XPathEnh varchar(4000), @Tag varchar(20), @MinDisplay smallint, @MaxDisplay smallint, @Show bit, @CaptionLangList nvarchar(max), @SeqNo int, @AutoAdd2Db bit, @Notes NVarchar(1000), @MaxPercentageResults tinyint, @CaseConversion tinyint, @AutoAdd2Interfaces bit) AS /** procedure is used by EACopy **/ BEGIN IF @MinDisplay=-1 SET @MinDisplay = null IF @MaxDisplay=-1 SET @MaxDisplay = null IF @MaxPercentageResults=-1 SET @MaxPercentageResults = null --IF @SeqNo = -1 --SET @SeqNo = NULL -- check for custom db label IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' -- check if we're updating an existing record or if we have to insert a new one IF EXISTS (SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @ID) BEGIN UPDATE [dbo].[GlobalCluster] SET [dbo].[GlobalCluster].[XPath]=@XPath, [dbo].[GlobalCluster].[XPathEnh]=@XPathEnh, [dbo].[GlobalCluster].[Tag]=@Tag, [dbo].[GlobalCluster].[Notes] = @Notes, [dbo].[GlobalCluster].[Show]=@Show, [dbo].[GlobalCluster].[MinDisplay]=@MinDisplay, [dbo].[GlobalCluster].[MaxDisplay]=@MaxDisplay, [dbo].[GlobalCluster].[MaxPercentageResults] = @MaxPercentageResults, [dbo].[GlobalCluster].[CaseConversion] = @CaseConversion, [dbo].[GlobalCluster].[AutoAdd2Interfaces] = @AutoAdd2Interfaces WHERE [dbo].[GlobalCluster].[ID] = @ID -- add the captions IF @CaptionLangList<> dbo.EAIF_ClustersLangAndCaptions_80(@ID) EXEC [dbo].[EAIP_CopyClusterCaptions_80] @ID,@CaptionLangList END ELSE BEGIN INSERT INTO [dbo].[GlobalCluster] ([dbo].[GlobalCluster].[ID], [dbo].[GlobalCluster].[XPath], [dbo].[GlobalCluster].[XPathEnh], [dbo].[GlobalCluster].[Tag], [dbo].[GlobalCluster].[Notes], [dbo].[GlobalCluster].[Show], [dbo].[GlobalCluster].[MinDisplay], [dbo].[GlobalCluster].[MaxDisplay], [dbo].[GlobalCluster].[MaxPercentageResults], [dbo].[GlobalCluster].[CaseConversion], [dbo].[GlobalCluster].[AutoAdd2Interfaces]) VALUES (@ID, @XPath, @XPathEnh, @Tag, @Notes, @Show, @MinDisplay, @MaxDisplay, @MaxPercentageResults, @CaseConversion, @AutoAdd2Interfaces) -- if the clusters weren't added, don't try to add the captions IF @@ERROR <> 0 RETURN -- add the captions EXEC [dbo].[EAIP_CopyClusterCaptions_80] @ID,@CaptionLangList END -- if the data is for a specific database label, update the ClusterList table IF @DbLabel <> '' BEGIN -- check if updating existing record or inserting new one IF EXISTS (SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel) BEGIN UPDATE [dbo].[ClusterList] SET [dbo].[ClusterList].[SeqNo]=@SeqNo,[dbo].[ClusterList].[AutoAdd2Db]=@AutoAdd2Db WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel END ELSE BEGIN INSERT INTO [dbo].[ClusterList]([dbo].[ClusterList].[ClustId], [dbo].[ClusterList].[DbLabel], [dbo].[ClusterList].[SeqNo], [dbo].[ClusterList].[AutoAdd2Db]) VALUES (@ID, @DBLabel, @SeqNo, @AutoAdd2Db) END END END
CREATE PROCEDURE dbo.EAIP_GetDbInterfaceDocTypeList_77(@DbVerNo int) AS BEGIN /**procedure is used by EPCopy**/ SELECT IDT.InterfaceID , IDT.Version , DTL.DocTypeID , IDT.SortOption , IDT.SearchImage , IDT.ResultImage , IDT.DefValue , IDT.SeqNo , dbo.EAIF_InterfaceDocTypeLangAndCaptions_77(IDT.IntfDocTypeNo) AS Captions , dbo.EAIF_InterfaceDocTypeLangAndMouseOverTexts_77(IDT.IntfDocTypeNo) AS MouseOverTexts FROM dbo.DocTypeList AS DTL INNER JOIN dbo.InterfaceDocType AS IDT ON DTL.DocTypeNo = IDT.DocTypeNo INNER JOIN dbo.DbDocType AS DDT ON DTL.DocTypeNo = DDT.DocTypeNo WHERE DDT.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_LocalTitleListExists_102] ( @ColNo int, @Origin as nvarchar(430) = N'' ) AS BEGIN DECLARE @SharedColNo int = 0 SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 IF @SharedColNo<>0 SELECT @ColNo=@SharedColNo DECLARE @RecExists bit; SET @Origin = LTRIM(RTRIM(@Origin)) if (@Origin = '') BEGIN IF EXISTS ( SELECT 1 FROM [dbo].[LocalTitle] l WHERE l.ColNo = @ColNo) SELECT @RecExists = 1; ELSE SELECT @RecExists = 0; END ELSE BEGIN IF EXISTS ( SELECT 1 FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON m.TitleNo = l.TitleNo WHERE l.ColNo = @ColNo and m.Title like @Origin + N'%') SELECT @RecExists = 1; ELSE SELECT @RecExists = 0; END SELECT @RecExists; END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbSearchContextMapping(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbSearchContextMapping].[ContextName], [dbo].[DbSearchContextMapping].[ConceptName], [dbo].[DbSearchContextMapping].[SearchTag] FROM [dbo].[DbSearchContextMapping] WHERE [dbo].[DbSearchContextMapping].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbSearchContextMapping].[ContextName], [dbo].[DbSearchContextMapping].[ConceptName], [dbo].[DbSearchContextMapping].[SearchTag] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseBibMap_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @BibField int) AS BEGIN DELETE FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName AND [dbo].[DbBibMap].[BibField] = @BibField DECLARE @BibFieldAsText varchar(20) SELECT @BibFieldAsText=CONVERT(varchar,@BibField) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Bib Map', 'Segment:', @SegName,'Field:',@BibFieldAsText END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceTopicCaptions_77] (@IntfTopicNo int, @CaptionLangList nvarchar(max), @MouseOverLangList nvarchar(max), @PhotoAltLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN --Begin of Captions and Mouse over texts init DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(max) DECLARE @MouseOverList nvarchar(max) DECLARE @MLangList varchar(max) DECLARE @PhotoAltList nvarchar(max) DECLARE @PAlangList varchar(max) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim nchar(3) SET @LangDelim =N'|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=convert(varchar(max), SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList)) ) SET @MouseOverList=SUBSTRING(@MouseOverLangList, 1, CHARINDEX(@LangDelim,@MouseOverLangList)-1) SET @MLangList=convert(varchar(max), SUBSTRING(@MouseOverLangList, CHARINDEX(@LangDelim,@MouseOverLangList)+3, LEN(@MouseOverLangList)) ) SET @PhotoAltList=SUBSTRING(@PhotoAltLangList, 1, CHARINDEX(@LangDelim,@PhotoAltLangList)-1) SET @PAlangList=convert(varchar(max),SUBSTRING(@PhotoAltLangList, CHARINDEX(@LangDelim,@PhotoAltLangList)+3, LEN(@PhotoAltLangList)) ) --End of Captions and Mouse over texts init DELETE FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo]=@IntfTopicNo IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceTopicCaption]([dbo].[InterfaceTopicCaption].[IntfTopicNo],[dbo].[InterfaceTopicCaption].[LangCode],[dbo].[InterfaceTopicCaption].[Caption],[dbo].[InterfaceTopicCaption].[MouseOverText], [dbo].[InterfaceTopicCaption].[PhotoAltText]) SELECT @IntfTopicNo, cp.Value, ISNULL(cp.Item, N''), ISNULL(mo.Item,N''), ISNULL(pa.Item,N'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp LEFT OUTER JOIN dbo.EAIF_GetItemValueTable_70( @MouseOverList,@MLangList,@ValDelim) mo ON cp.Value=mo.Value AND cp.Item <>N'' LEFT OUTER JOIN dbo.EAIF_GetItemValueTable_70(@PhotoAltList,@PAlangList,@ValDelim) pa ON cp.Value=pa.Value AND cp.Item <>N'' WHERE cp.Value<>'' END
CREATE PROCEDURE EAIP_PromoteDatabaseDetails_131(@OldDbVerno int, @OldDbLabel varchar(10), @NewDbLabel varchar(10), @DbName varchar(10), @DbType int, @BasicParams bit=1, @Authorities bit=1, @Descriptions bit=1, @DocTypes bit=1, @Forms bit=1, @Limiters bit=1, @SegmentFileInfo bit=1, @SortOptions bit=1, @Subjects bit=1, @DbFields bit=1, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit = 1, @TOCs bit=1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1, @RtacItems bit = 0, @SubsetDbs bit = 0, @SearchConceptMapping BIT = 1, @UserID nvarchar(20) = '', @UserIP varchar(15) = '') AS BEGIN Begin try DECLARE @NewDbVerNo int DECLARE @EnforceSimUsage bit SELECT @NewDbVerNo=DbVerNo,@EnforceSimUsage=EnforceSimUsage FROM dbo.DbList WHERE DbLabel=@NewDbLabel AND @DbName=DbName /* UPDATE dbo.DbList */ /* DbName, DbLabel, DSFamilyName are intentionally not overwritten */ /* EnforceSimUsage is handled separately below */ /* All other fields should be updated*/ if exists (Select 1 from dbo.DbSubset where SubsetDbVerNo = @OldDbVerno) or (@SubsetDbs = 1) UPDATE b SET DisplayName=a.DisplayName, DbGroup=a.DbGroup,DbType=a.DbType,ContentType=a.ContentType, LastUpdateDate=GETDATE(),MultiSegment=a.MultiSegment, ShowStats=a.ShowStats,ShowOnDDSConsole=a.ShowOnDDSConsole, WebClient=a.WebClient,WinClient=a.WinClient,CharClient=a.CharClient,Z3950Client=a.Z3950Client, InterfaceID=a.InterfaceID, DbCategory=a.DbCategory,EPXBuild=a.EPXBuild,EDABuild=a.EDABuild, IncludeWhenAutoAdd=a.IncludeWhenAutoAdd, DSFamilyName=a.DSFamilyName, NonSearchableDb=a.NonSearchableDb, ArchiveProfSettings=a.ArchiveProfSettings FROM dbo.DbList b CROSS JOIN dbo.DbList a WHERE b.DbVerNo = @NewDbVerNo AND a.DbVerNo=@OldDbVerno Else UPDATE b SET DisplayName=a.DisplayName, DbGroup=a.DbGroup,DbType=a.DbType,ContentType=a.ContentType, LastUpdateDate=GETDATE(),MultiSegment=a.MultiSegment, ShowStats=a.ShowStats,ShowOnDDSConsole=a.ShowOnDDSConsole, WebClient=a.WebClient,WinClient=a.WinClient,CharClient=a.CharClient,Z3950Client=a.Z3950Client, InterfaceID=a.InterfaceID, DbCategory=a.DbCategory,EPXBuild=a.EPXBuild,EDABuild=a.EDABuild, IncludeWhenAutoAdd=a.IncludeWhenAutoAdd, NonSearchableDb=a.NonSearchableDb, ArchiveProfSettings=a.ArchiveProfSettings FROM dbo.DbList b CROSS JOIN dbo.DbList a WHERE b.DbVerNo = @NewDbVerNo AND a.DbVerNo=@OldDbVerno IF @SubsetDbs=1 -- Database being promoted should have all subsets present in source label that are associated with this database in target label. IF EXISTS (SELECT * FROM ( SELECT dbl2.DbName FROM dbo.DbList dbl JOIN dbo.DbSubset dbs ON dbl.DbVerNo=dbs.PhysDbVerNo JOIN dbo.DbList dbl2 ON dbs.SubsetDbVerNo=dbl2.DbVerNo WHERE dbl.DbVerNo=@NewDbVerNo) a LEFT OUTER JOIN (SELECT dbl2.DbName FROM dbo.DbList dbl JOIN dbo.DbSubset dbs ON dbl.DbVerNo=dbs.PhysDbVerNo JOIN dbo.DbList dbl2 ON dbs.SubsetDbVerNo=dbl2.DbVerNo WHERE dbl.DbVerNo=@OldDbVerno) b ON a.DbName=b.DbName WHERE b.DbName IS NULL) RAISERROR ('Database being promoted has some associated subset database(s) in %s label that do not exist as subset for this database in current label, please make sure these subset(s) are removed from target label as well before promoting it.',16,-1,@NewDbLabel) -- EADM-3911 fix: If the promoted database has no subsets databases in the current label, however the same database has -- subset databases (Parent + subsets) in the target label, then raise an error. IF EXISTS (SELECT 1 FROM dbo.DbSubset WHERE PhysDbVerNo = @NewDbVerNo) AND NOT EXISTS (SELECT 1 FROM dbo.DbSubset WHERE PhysDbVerNo = @OldDbVerno) RAISERROR ('Database being promoted has some associated subset database(s) in %s label that do not exist as subset for this database in current label, please make sure these subset(s) are removed from target label as well before promoting it.',16,-1,@NewDbLabel) -- If promoted Database is not a SubsetDB on the lower label but it is on the upper label then make it not a SubsetDb on the upper lable as well IF EXISTS (SELECT 1 FROM dbo.DbSubset WHERE SubsetDbVerNo=@NewDbVerNo) AND NOT EXISTS (SELECT 1 FROM dbo.DbSubset WHERE SubsetDbVerNo=@OldDbVerno) BEGIN declare @PhysDbVerNo int=0 select @PhysDbVerNo = PhysDbVerNo from dbo.DbSubset where SubsetDbVerNo=@NewDbVerNo delete dbo.DbSubset where SubsetDbVerNo=@NewDbVerNo delete dbo.DbParamScalarValues from dbo.DbParamScalarValues s inner join dbo.DbParamList l on l.ParamNo= s.ParamNo where s.DbVerNo=@NewDbVerNo and l.InheritFromPhysical=1 delete dbo.DbCluster where DbVerNo=@NewDbVerNo delete dbo.DbSort where DbVerNo=@NewDbVerNo delete dbo.DbServerParams where DbVerNo=@NewDbVerNo insert into dbo.DbParamScalarValues(DbVerNo, ParamNo, ParamValue) select @NewDbVerNo, l.ParamNo, s.ParamValue from dbo.DbParamScalarValues s inner join dbo.DbParamList l on l.ParamNo= s.ParamNo where s.DbVerNo = @PhysDbVerNo and l.InheritFromPhysical=1 insert into dbo.DbCluster(DbVerNo, ClustNo, Enable, DbSearchTag) select @NewDbVerNo, ClustNo, Enable, DbSearchTag from dbo.DbCluster where DbVerNo = @PhysDbVerNo insert into dbo.DbSort(DbVerNo, SortID, SortName, SortField, SeqNo) select @NewDbVerNo, SortID, SortName, SortField, SeqNo from dbo.DbSort where DbVerNo = @PhysDbVerNo insert into dbo.DbServerParams(DbVerNo, Threads, WaitForRequest, DefSearchInstances, MaxSearchInstances,DefRetrieveInstances, MaxRetrieveInstances, DefFormatInstances, MaxFormatInstances, DefFullTextInstances, MaxFullTextInstances, DefThesaurusInstances, MaxThesaurusInstances, MaxFuzzyTerms, MaxBooleanTerms, MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers, MaxRecords) select @NewDbVerNo, Threads, WaitForRequest, DefSearchInstances, MaxSearchInstances,DefRetrieveInstances, MaxRetrieveInstances, DefFormatInstances, MaxFormatInstances, DefFullTextInstances, MaxFullTextInstances, DefThesaurusInstances, MaxThesaurusInstances, MaxFuzzyTerms, MaxBooleanTerms, MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers, MaxRecords from dbo.DbServerParams where DbVerNo = @PhysDbVerNo END /* Enforce Sim Usage only gets overwritten if it was disabled to begin with Avoids unintentional disabling of this feature during promotion */ IF (@EnforceSimUsage=0) UPDATE a SET EnforceSimUsage=b.EnforceSimUsage FROM dbo.DbList a CROSS JOIN dbo.DbList b WHERE a. DbVerNo=@NewDbVerNo AND b.DbVerNo=@OldDbVerno /* DbIcon */ DELETE FROM dbo.DbIcon WHERE DbVerNo=@NewDbVerNo INSERT INTO dbo.DbIcon (DbVerNo, IconBitmap) SELECT @NewDbVerNo AS DbVerNo,IconBitMap FROM dbo.DbIcon WHERE DbVerNo=@OldDbVerno /* BasicParams */ IF (@BasicParams = 1) EXEC dbo.EAIP_PromoteDatabaseScalarParams_70 @OldDbVerno, @NewDbVerNo /* AUTHORITIES */ IF ( @DbType = 1 AND @Authorities=1) BEGIN /* Only regular databases have authorities */ EXEC dbo.EAIP_PromoteDatabaseAuthorities_70 @OldDbVerno, @OldDbLabel, @NewDbVerNo, @NewDbLabel, 1, 1, 1, 1, 1, 0, @DbFields, @SearchOptions,@BrowseOptions, @AuthFilter, @Topics,@Groups,@Customizers,@Clusters,@MultiDbAuthorities,@ToolbarItems EXEC dbo.EAIP_PromoteMultiDbAuthoritiesForRegularDb_90 @OldDbVerno, @OldDbLabel, @NewDbVerNo, @NewDbLabel END /* MultiDb Authorities */ IF (@DbType != 1 AND @MultiDbAuthorities = 1) EXEC dbo.EAIP_PromoteMultiDbAuthoritiesForAuthority_90 @OldDbVerno, @NewDbVerNo /* Forms */ IF (@Forms = 1 ) EXEC dbo.EAIP_PromoteDatabaseForms_70 @OldDbVerno, @NewDbVerNo /* Limiters */ IF (@Limiters=1) EXEC dbo.EAIP_PromoteDatabaseLimiters_70 @OldDbVerno, @NewDbVerNo /* SegmentFileInfo */ IF (@SegmentFileInfo = 1 ) EXEC dbo.EAIP_PromoteDatabaseSegmentFileInfo_70 @OldDbVerno, @NewDbVerNo /* SortOptions */ IF (@SortOptions = 1) EXEC dbo.EAIP_PromoteDatabaseSortOptions_70 @OldDbVerno, @NewDbVerNo /* DocTypes */ IF (@DocTypes = 1 ) EXEC dbo.EAIP_PromoteDatabaseDocTypes_77 @OldDbVerno, @NewDbVerNo /* Descriptions */ IF (@Descriptions = 1 ) BEGIN EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'shortDescription' EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'longDescription' EXEC dbo.EAIP_PromoteDatabaseScalarParam_100 @OldDbVerno, @NewDbVerNo, 'ResourceType' END /* Subjects */ IF (@Subjects = 1 ) EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'dbSubjects' /* DbFields */ IF (@DbFields=1) EXEC dbo.EAIP_PromoteDatabaseFields_70 @OldDbVerno, @NewDbVerNo /* BrowseOptions */ IF (@BrowseOptions=1) EXEC dbo.EAIP_PromoteDatabaseBrowseOptions_70 @OldDbVerno, @NewDbVerNo /* SearchOptions */ IF (@SearchOptions=1) EXEC dbo.EAIP_PromoteDatabaseSearchOptions_70 @OldDbVerno, @NewDbVerNo IF (@AuthFilter =1) EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'authorityFilters' /*Topics*/ IF (@Topics =1) EXEC dbo.EAIP_PromoteDatabaseTopics_77 @OldDbVerno, @NewDbVerNo IF (@TOCs =1) EXEC dbo.EAIP_PromoteDatabaseTOCs_80 @OldDbVerno, @NewDbVerNo --Subject Groups IF (@Groups =1) EXEC dbo.EAIP_PromoteDatabaseGroups_80 @OldDbVerno, @NewDbVerNo --Rel. Ranking items: Customizers, RR Weight Fields, Field match IF (@Customizers = 1) BEGIN EXEC dbo.EAIP_PromoteDatabaseCustomizer_88 @OldDbVerno, @NewDbVerNo, @UserID, @UserIP EXEC EAIP_PromoteDatabaseFeatures_96 'rrw', @OldDbVerno, @NewDbVerNo EXEC EAIP_PromoteDatabaseFeatures_96 'fmt', @OldDbVerno, @NewDbVerNo END --Clusters IF (@Clusters = 1) EXEC dbo.EAIP_PromoteDatabaseClusters_89 @OldDbVerno, @NewDbVerNo, @UserID, @UserIP --ToolbarItems IF (@ToolbarItems = 1) EXEC dbo.EAIP_PromoteDatabaseToolbarItems_100 @OldDbVerno, @NewDbVerNo -- RTAC items IF (@RtacItems=1) EXEC EAIP_PromoteDatabaseRtacItems_101 @OldDbVerno, @NewDbVerNo -- subset dbs if @SubsetDbs =1 Begin Delete dbo.DbSubset where PhysDbVerNo=@NewDbVerNo exec EAIP_PromoteDbSubsets_103 @OldDbVerno, @NewDbLabel, @UserID, @UserIP END -- search concept mapping data IF (@SearchConceptMapping=1) EXEC EAIP_PromoteDatabaseSearchConceptMapping_131 @OldDbVerno, @NewDbVerNo End try BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE dbo.EAUI_GetProfFieldGroupDefaultsList_70 ( @ProfNo int , @DbVerNo int , @OutputMode varchar(10) ) AS BEGIN DECLARE @MarketId varchar(20) DECLARE @LangCode varchar(10) SELECT @MarketId = P.MarketID , @LangCode = P.DefLangCode FROM dbo.Profile AS P WHERE P.ProfNo = @ProfNo SELECT DFG.FieldGroupNo , dbo.EAIF_GetDbFieldGroupCaption_70(DFG.DbVerNo, DFG.FieldGroupNo, @LangCode) AS GroupCaption , COALESCE(PFGD.DefValue, DFGD.DefValue, 0) AS Defaults FROM [dbo].[DbFieldGroup] AS DFG LEFT OUTER JOIN [dbo].[ProfFieldGroupDefaults] AS PFGD ON DFG.DbVerNo = PFGD.DbVerNo AND DFG.FieldGroupNo = PFGD.FieldGroupNo AND PFGD.ProfNo = @ProfNo AND PFGD.DbVerNo = @DbVerNo AND PFGD.OutputMode = @OutputMode LEFT OUTER JOIN [dbo].[DbFieldGroupDefaults] AS DFGD ON DFG.DbVerNo = DFGD.DbVerNo AND DFG.FieldGroupNo = DFGD.FieldGroupNo AND DFGD.OutputMode = @OutputMode AND DFGD.MarketID = @MarketId WHERE DFG.DbVerNo = @DbVerNo ORDER BY DFG.FieldGroupNo ASC END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseSortOption_141]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @SortID varchar(10), @SortName nvarchar(20), @SortField varchar(100), @Hide bit) AS BEGIN DECLARE @SeqNo int Declare @DbName varchar(10) Declare @DbLabel varchar(10) IF EXISTS (SELECT 1 FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo AND [dbo].[DbSort].[SortID]=@SortID) BEGIN RAISERROR('Sort option %s already exists for this database. Insert failed.',16,-1,@SortID) RETURN END BEGIN TRY SELECT @DbName = [DBL].[DbName], @DbLabel = [DBL].[DbLabel], @SeqNo = (ISNULL(MAX([DBS].[SeqNo]),0) + 1) FROM [dbo].[DbList] DBL LEFT OUTER JOIN [dbo].[DbSort] DBS ON DBL.DbVerNo = DBS.DbVerNo WHERE DBL.DbVerNo = @DbVerNo GROUP BY [DBL].[DbName], [DBL].[DbLabel] INSERT INTO [dbo].[DbSort] ([dbo].[DbSort].[DbVerNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[Hide]) VALUES (@DbVerNo, @SortID, @SortName, @SortField, @SeqNo, @Hide) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Sort Option','Sort ID:', @SortID, 'Sort key:', @SortField End Try Begin catch RAISERROR('Insert failed for sort option %s and database %s, %s',16,-1,@SortID, @DbName, @DbLabel) End catch END
CREATE PROCEDURE [dbo].[EPCS_GetProfCustFeatures_102] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10))AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @WRK_ProfCustFeatures Table ( InterfaceFeatureNo int ) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID Insert into @WRK_ProfCustFeatures Select distinct i.InterfaceFeatureNo From [dbo].[InterfaceFeatureList] i left outer join [dbo].[ProfFeatureValues] v on (v.ProfNo=@ProfNo and v.InterfaceFeatureNo=i.InterfaceFeatureNo) left outer join [dbo].[ProfFeatureSelMode] s on (s.ProfNo = @ProfNo and s.InterfaceFeatureNo=i.InterfaceFeatureNo) Where i.InterfaceID=@InterfaceID and i.Version=@Version and (v.InterfaceFeatureNo is not null or s.InterfaceFeatureNo is not null) SELECT l.FeatureName, l.ScreenID, l.FeatureType,l.DbDependant, ISNULL(ISNULL(s.VisibleItemCount,l.VisibleItemCount),0) AS VisibleItemCount, ISNULL(ISNULL(s.SelectionMode,l.SelectionMode),'R')AS SelectionMode, f.FieldName, f.FieldLevel,f.FieldType FROM [dbo].[InterfaceFeatureList] l inner join [dbo].[InterfaceFeatureFields] f on (f.InterfaceFeatureNo = l.InterfaceFeatureNo) inner join @WRK_ProfCustFeatures w on (w.InterfaceFeatureNo = l.InterfaceFeatureNo) left outer join [dbo].[ProfFeatureSelMode] s on (s.ProfNo = @ProfNo and s.InterfaceFeatureNo = l.InterfaceFeatureNo) WHERE l.InterfaceID = @InterfaceID AND l.Version=@Version ORDER BY l.FeatureName SELECT l.FeatureName,cast (i.ItemNo as varchar(5)) as ItemNo, ISNULL(v.FieldValueXml,i.FieldValueXml) as FieldValueXml, ISNULL(v.SeqNo,i.SeqNo) as SeqNo FROM [dbo].[InterfaceFeatureList] l inner join [dbo].[InterfaceFeatureValues] i on (i.InterfaceFeatureNo = l.InterfaceFeatureNo) inner join @WRK_ProfCustFeatures w on (w.InterfaceFeatureNo = l.InterfaceFeatureNo) left outer join [dbo].[ProfFeatureValues] v on (v.ProfNo=@ProfNo and v.InterfaceFeatureNo = i.InterfaceFeatureNo and v.ItemNo=i.ItemNo and v.ItemType='D') WHERE l.InterfaceID = @InterfaceID AND l.Version=@Version AND (ISNULL(v.Show,i.Show)=1) UNION ALL SELECT l.FeatureName,cast(v.ItemNo as varchar(5)) AS ItemNo, v.FieldValueXml,v.SeqNo FROM [dbo].[ProfFeatureValues] v inner join @WRK_ProfCustFeatures w on (w.InterfaceFeatureNo = v.InterfaceFeatureNo) inner join [dbo].[InterfaceFeatureList] l on (l.InterfaceFeatureNo=v.InterfaceFeatureNo and l.InterfaceID = @InterfaceID AND l.Version=@Version) left outer join [dbo].[InterfaceFeatureValues] ifv on (ifv.InterfaceFeatureNo=v.InterfaceFeatureNo and ifv.ItemNo=v.ItemNo) Where v.ProfNo=@ProfNo and v.ItemType = 'D' and (v.Show is null OR v.Show =1) AND ifv.ItemNo is NULL UNION ALL SELECT l.FeatureName,cast(v.ItemNo as varchar(5))+ v.ItemType AS ItemNo, v.FieldValueXml,v.SeqNo FROM [dbo].[ProfFeatureValues] v inner join [dbo].[InterfaceFeatureList] l on (l.InterfaceFeatureNo=v.InterfaceFeatureNo and l.InterfaceID = @InterfaceID AND l.Version=@Version) inner join @WRK_ProfCustFeatures w on (w.InterfaceFeatureNo = v.InterfaceFeatureNo) Where v.ProfNo=@ProfNo and v.ItemType = 'C' and (v.Show is null OR v.Show=1) ORDER BY l.FeatureName,SeqNo END
CREATE PROCEDURE [dbo].[AUTH_GetUserGroupParams_100](@CustID varchar(10), @GroupID varchar(10), @GetCustomAuth bit=0, @AuthType varchar(10)='') AS BEGIN IF @CustID IS NULL OR @GroupID IS NULL RETURN If not exists (select 1 from [dbo].[UserGroup] where [dbo].[UserGroup].[CustID]=@CustID and [dbo].[UserGroup].[GroupID]=@GroupID) return DECLARE @CustAuthUrl varchar(255) SET @CustAuthUrl='' SELECT @CustAuthUrl=(CASE WHEN @GetCustomAuth=0 THEN '' ELSE ISNULL([dbo].[AuthCustom].[UrlParam],'') END) FROM [dbo].[AuthCustom] WHERE [dbo].[AuthCustom].[CustID]= @CustID AND [dbo].[AuthCustom].[AuthType]= @AuthType SELECT @CustID AS CustID, @GroupID As GroupID, dbo.EAIF_GetGroupParamScalarValue_70(@CustID,@GroupID,'cookiesAllowed') AS UseCookie, @CustAuthUrl AS CustAuthUrl END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceListSortedByID_70](@InterfaceID varchar(10)) AS BEGIN SELECT a.InterfaceID, a.Version, a.SiteID, a.SiteURL , b.InterfaceName FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID=b.InterfaceID AND a.Version=b.Version WHERE b.LangCode='en' AND a.InterfaceID >= @InterfaceID AND a.InterfaceID <> 'all' ORDER BY a.InterfaceID, a.Version END
CREATE PROCEDURE [dbo].[EAIS_InitDbTopics_80](@DbName varchar(10),@DbLabel varchar(10),@Options varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName) BEGIN RAISERROR ('Database %s does not exist',16,-1,@DbName) RETURN END IF CharIndex('r',@Options) > 0 BEGIN IF @DbLabel='' DELETE dt FROM [dbo].[DbTopic] dt INNER JOIN [dbo].[DbList] dl ON dt.DbVerNo = dl.DbVerNo WHERE dl.DbName =@DbName ELSE DELETE dt FROM [dbo].[DbTopic] dt INNER JOIN [dbo].[DbList] dl ON dt.DbVerNo = dl.DbVerNo WHERE dl.DbName =@DbName AND dl.DbLabel=@DbLabel END END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalTitleInfoEps]( @TitleNo int, @ColNo int ) AS BEGIN SELECT m.ISSN, m.Title, [d].[FromDate], [d].[ToDate], [lt].[Subscribe], lt.Notes, lt.SummaryHoldings, lt.CallNumber, ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage' FROM [dbo].[LocalDate] d RIGHT OUTER JOIN [dbo].[LocalTitle] lt ON d.TitleNo = lt.TitleNo AND d.ColNo = @ColNo INNER JOIN [dbo].[MasterTitle] m ON lt.TitleNo = m.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo WHERE lt.ColNo = @ColNo AND lt.TitleNo = @TitleNo END
CREATE FUNCTION [dbo].[EAIF_GetCustomerSelectServiceValue_161] (@CustID VARCHAR(10)) RETURNS @ServiceParamValue TABLE ( ServiceValue VARCHAR(8000), ItemName VARCHAR(255) ) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') INSERT INTO @ServiceParamValue([dbo].[EAIF_GetCustomerSelectServiceValue_161].[ItemName],[dbo].[EAIF_GetCustomerSelectServiceValue_161].[ServiceValue]) SELECT [dbo].[CustomParamXmlValues].[ItemName], CONVERT(xml, [dbo].[CustomParamXmlValues].[ParamValue]).value('(/selectServiceText/@name)[1]','varchar(max)') FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbLimiterValues_70] ( @DbVerNo int) AS BEGIN SELECT dc.Caption, ISNULL(dc.MouseOverText,'') AS MouseOverText, dl.SearchString FROM [dbo].[DbLimiterCaption] dc JOIN [dbo].[DbLimiter] dl ON (dc.LimiterNo = dl.LimiterNo AND dc.DbVerNo = dl.DbVerNo) WHERE dc.DbVerNo = @DbVerNo AND dc.LangCode = 'en' END
CREATE Procedure [dbo].[EAUI_UpdateProfileFeatureDetails_102] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @ItemNo int, @ItemType char(1), @FieldsXML nvarchar(max), @SelectionMode char(1), @VisibleItemCount smallint, @FieldLevel char(1) ) AS Begin DECLARE @LoggingProfile varchar(30), @InterfaceID varchar(20), @Version varchar(10), @IntfSelMode char(1), @IntfVisibleItemCount smallint, @FeatureType char(1) SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) -- Get the Interface Defaults for selectionMode, VisibleCount SELECT @IntfSelMode = [dbo].[InterfaceFeatureList].[SelectionMode], @IntfVisibleItemCount= [dbo].[InterfaceFeatureList].[VisibleItemCount], @FeatureType=[dbo].[InterfaceFeatureList].[FeatureType] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo] = @InterfaceFeatureNo Begin Try Begin Transaction EXEC [dbo].[EAIP_UpdateProfileFeatureValues_102] @UserID,@UserIP,@ProfNo,@InterfaceFeatureNo,@ItemNo ,@ItemType, @FieldsXML IF (@FieldLevel = 'F' and @ItemNo= 0 and @FeatureType = 'M') BEGIN IF (@SelectionMode = @IntfSelMode and @VisibleItemCount = @IntfVisibleItemCount) EXEC [dbo].[EAIP_DeleteProfFeatureSelMode_102] @UserID, @UserIP, @ProfNo,@InterfaceFeatureNo ELSE EXEC [dbo].[EAIP_AddModifyProfFeatureSelMode_102] @UserID, @UserIP, @ProfNo,@InterfaceFeatureNo,@SelectionMode,@VisibleItemCount END Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseLimiters_70] ( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRANSACTION /* Make LimiterList, LimiterDefaults, LimiterDetail all upto date*/ DECLARE @NewLabel varchar(10) DECLARE @LimiterMap table (OldLimNo int PRIMARY KEY, NewLimNo int) SELECT @NewLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@NewDbVerNo IF @NewLabel NOT IN ('live','liveQC','rebuild','rebuildQC') SET @NewLabel = 'custom' -- all other labels share custom limiters /* Freshen up LimiterList Data */ UPDATE c SET c.LimiterType=b.LimiterType, c.ControlType=b.ControlType, c.ControlSize=b.ControlSize, c.LogicalOpCode=b.LogicalOpCode, c.SearchString=b.SearchString, c.Description=b.Description, c.Notes=b.Notes, c.BitFlag1=b.BitFlag1, c.BitFlag2=b.BitFlag2, c.BitFlag3=b.BitFlag3, c.BitFlag4=b.BitFlag4, c.BitFlag5=b.BitFlag5, c.BitFlag6=b.BitFlag6, c.BitFlag7=b.BitFlag7, c.BitFlag8=b.BitFlag8, c.EnableQueryMask = b.EnableQueryMask, c.QueryMaskId = b.QueryMaskId, c.IsListContentsGrouped = b.IsListContentsGrouped, c.ListItemUniqueId = b.ListItemUniqueId, c.HelpUrl=b.HelpUrl FROM [dbo].[DbLimiter] a INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo INNER JOIN [dbo].[LimiterList] c ON b.LimiterId=c.LimiterId WHERE a.DbVerNo=@OldDbVerNo AND c.DbLabel=@NewLabel /* Add the Limiters for new label */ INSERT INTO [dbo].[LimiterList]([b].[LimiterId], [b].[DbLabel], [b].[LimiterType], [b].[ControlType], [b].[ControlSize], [b].[LogicalOpCode], [b].[SearchString], [b].[Description], [b].[Notes], [b].[BitFlag1], [b].[BitFlag2], [b].[BitFlag3], [b].[BitFlag4], [b].[BitFlag5], [b].[BitFlag6], [b].[BitFlag7], [b].[BitFlag8], [b].[EnableQueryMask], [b].[QueryMaskId],[b].[IsListContentsGrouped],[b].[ListItemUniqueId]) SELECT b.LimiterId, @NewLabel, b.LimiterType, b.ControlType, b.ControlSize, b.LogicalOpCode, b.SearchString, b.Description, b.Notes, b.BitFlag1, b.BitFlag2, b.BitFlag3, b.BitFlag4, b.BitFlag5, b.BitFlag6, b.BitFlag7, b.BitFlag8, b.EnableQueryMask, b.QueryMaskId,b.IsListContentsGrouped,b.ListItemUniqueId FROM [dbo].[DbLimiter] a INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo=b.LimiterNo WHERE a.DbVerNo=@OldDbVerNo AND b.LimiterId NOT IN ( SELECT [dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[DbLabel]=@NewLabel) /* Create an in-memory Old and New Limiter Mapping table */ INSERT INTO @LimiterMap SELECT a.LimiterNo, c.LimiterNo FROM [dbo].[DbLimiter] a INNER JOIN [dbo].[LimiterList] b ON a.LimiterNo = b.LimiterNo INNER JOIN [dbo].[LimiterList] c ON b.LimiterId = c.LimiterId WHERE a.DbVerNo = @OldDbVerNo AND c.DbLabel = @NewLabel /****** Database Limiters ****** Remove Database specific Limiters: DbLimiters */ DELETE FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* Populate it with promoted database limiters */ INSERT INTO [dbo].[DbLimiter] SELECT @NewDbVerNo AS DbVerNo, c.NewLimNo, a.ResFlag, a.SearchString, a.SeqNo, a.DefValue FROM [dbo].[DbLimiter] a INNER JOIN @LimiterMap c ON a.LimiterNo = c.OldLimNo WHERE a.DbVerNo = @OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /** DbLimiter Details*/ DELETE FROM [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbLimiterDetail] SELECT @NewDbVerNo AS DbVerNo, c.NewLimNo, ControlTemplate FROM [dbo].[DbLimiterDetail] a INNER JOIN @LimiterMap c ON a.LimiterNo = c.OldLimNo WHERE a.DbVerNo = @OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /****** LIMITER CAPTIONS ******/ DELETE FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbLimiterCaption] SELECT @NewDbVerNo AS DbVerNo, c.NewLimNo, LangCode, Caption, MouseOverText FROM [dbo].[DbLimiterCaption] a INNER JOIN @LimiterMap c ON a.LimiterNo = c.OldLimNo WHERE a.DbVerNo = @OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /** DbInterfaceLimiter*/ DELETE FROM [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbInterfaceLimiter] SELECT @NewDbVerNo AS DbVerNo, IntfScreenNo, c.NewLimNo, ControlType, Show, DefValue, GroupNo, SeqNo, DefPosn, ColNum FROM [dbo].[DbInterfaceLimiter] a INNER JOIN @LimiterMap c ON a.LimiterNo = c.OldLimNo WHERE a.DbVerNo = @OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* Remove Customized Profile Database Limiters that are not found in DbLimiters */ DELETE a FROM [dbo].[ProfDbLimiter2] a WHERE a.DbVerNo = @NewDbVerNo AND a.LimiterNo NOT IN (SELECT [dbo].[DbLimiter].[LimiterNo] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* Remove Customized Profile Database Limiters that are not found in DbLimiters */ DELETE a FROM [dbo].[ProfDbLimiterDbOrder] a WHERE a.DbVerNo = @NewDbVerNo AND a.LimiterNo NOT IN (SELECT [dbo].[DbLimiter].[LimiterNo] FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateGlobalCluster_80] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(20), @XPath varchar(4000),@XPathEnh varchar(4000), @Notes nvarchar(1000), @Tag varchar(20), @Caption nvarchar(255),@LangCode varchar(10))AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[GlobalCluster] SET [dbo].[GlobalCluster].[XPath]=@XPath, [dbo].[GlobalCluster].[XPathEnh] = @XPathEnh, [dbo].[GlobalCluster].[Tag]=@Tag, [dbo].[GlobalCluster].[Notes] = @Notes WHERE [dbo].[GlobalCluster].[ID]=@ID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID]=@ID AND [dbo].[GlobalClusterCaption].[LangCode]=@LangCode) UPDATE [dbo].[GlobalClusterCaption] SET [dbo].[GlobalClusterCaption].[Caption]=@Caption WHERE [dbo].[GlobalClusterCaption].[ID]=@ID AND [dbo].[GlobalClusterCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[GlobalClusterCaption]([dbo].[GlobalClusterCaption].[ID], [dbo].[GlobalClusterCaption].[LangCode], [dbo].[GlobalClusterCaption].[Caption]) VALUES (@ID, @LangCode, @Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Update Global Cluster', @ID COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetProfGroupCaptions_86(@ProfNo int,@GroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+pgc.Caption +' ' FROM [dbo].[ProfGroupCaption] pgc WHERE [pgc].[ProfNo]=@ProfNo AND [pgc].[GroupNo]=@GroupNo RETURN @Captions END
-- 2012.02.23: Accurately retrieve default values from global connector record when no -- record has been saved in CustDbListExternalData . CREATE Procedure [dbo].[EAUI_GetCustExternalSourceList_102] @CustID varchar(10), @Provider varchar(1), @browseField varchar(255), @browseTerm nvarchar(255) AS DECLARE @AccessEndDate DATETIME SELECT @AccessEndDate = MAX([cs].[EndDate]) from EASUPPORT.dbo.CustSubscription cs inner join EASUPPORT.dbo.ProductOffering po ON po.PrdOffNo = cs.PrdOffNo WHERE po.SourceType = 'M' AND cs.CustID = @CustID; SELECT d.DbVerNo, d.DisplayName, case ISNULL( cd.ConnectorProvider,de.ConnectorProvider) when 'M' then muse.ExternalDbID when 'I' then indexData.ExternalDbID end as ExternalSourceID, ISNULL(ISNULL(cd.ConnectorProvider,de.ConnectorProvider),'N') as ConnectorProvider, de.Free as PaidFree, ISNULL(cd.Status,'P') as Status, @AccessEndDate as AccessEndDate, cd.LastModified as LastModified, c.CustNo, c.CustID, ISNULL(cedia.ConnectorURL,indexData.ConnectorURL) as ConnectorURL, ISNULL(cd.PrimaryProxyHostIp,'') as ProxyHost, ISNULL(cedia.ConnectorID,'') as ConnectorID, ISNULL(cedia.ConnectorPassword,'') as ConnectorPassword, ISNULL(d.DbName,'') as DbName, ISNULL(cedia.Z3950URLPort,'') as Z3950URLPort, ISNULL(de.ConnectorType,'') as ConnectorType From [dbo].[DbList] d JOIN [dbo].[Customer] c on c.CustID = @CustID Join [dbo].[DbListExternalSource] de on (de.DbVerNo = d.DbVerNo) Join [dbo].[CustExternalDbList] cd on (cd.DbVerNo = d.DbVerNo) and (cd.CustNo = c.CustNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON (muse.DbVerNo = d.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData on (indexData.DbVerNo = d.DbVerNo) LEFT OUTER JOIN [dbo].[CustExternalDbListIndexData] cedia on (cedia.CustNo = c.CustNo and cedia.DbVerNo = d.DbVerNo) WHERE d.DbLabel = 'live' AND ( (@Provider = 'A') or (ISNULL(ISNULL(cd.ConnectorProvider,de.ConnectorProvider),'N')) = @provider) AND ( (@browseField = '') or ((@browseField = 'DisplayName') and (d.DisplayName like @browseTerm+'%'))) Order by [d].[DisplayName]
--sql content merged from file: \StoredProcedures\EAIP_CopyCluster_80.sql CREATE PROCEDURE [dbo].[EAIP_CopyCluster_80] (@ID varchar(20), @DbLabel varchar(10), @XPath varchar(4000), @XPathEnh varchar(4000), @Tag varchar(20), @MinDisplay tinyint, @MaxDisplay tinyint, @Show bit, @CaptionLangList nvarchar(max), @SeqNo int, @AutoAdd2Db bit, @Notes NVarchar(1000), @MaxPercentageResults tinyint, @CaseConversion tinyint, @AutoAdd2Interfaces bit) AS /** procedure is used by EACopy **/ BEGIN IF @MinDisplay=-1 SET @MinDisplay = null IF @MaxDisplay=-1 SET @MaxDisplay = null IF EXISTS (SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @ID) BEGIN UPDATE [dbo].[GlobalCluster] SET [dbo].[GlobalCluster].[XPath]=@XPath, [dbo].[GlobalCluster].[XPathEnh]=@XPathEnh, [dbo].[GlobalCluster].[Tag]=@Tag, [dbo].[GlobalCluster].[Notes] = @Notes, [dbo].[GlobalCluster].[Show]=@Show, [dbo].[GlobalCluster].[MinDisplay]=@MinDisplay, [dbo].[GlobalCluster].[MaxDisplay]=@MaxDisplay, [dbo].[GlobalCluster].[MaxPercentageResults] = @MaxPercentageResults, [dbo].[GlobalCluster].[CaseConversion] = @CaseConversion, [dbo].[GlobalCluster].[AutoAdd2Interfaces] = @AutoAdd2Interfaces WHERE [dbo].[GlobalCluster].[ID] = @ID IF @CaptionLangList<> dbo.EAIF_ClustersLangAndCaptions_80(@ID) exec [dbo].[EAIP_CopyClusterCaptions_80] @ID,@CaptionLangList END ELSE BEGIN INSERT INTO [dbo].[GlobalCluster] ([dbo].[GlobalCluster].[ID], [dbo].[GlobalCluster].[XPath], [dbo].[GlobalCluster].[XPathEnh], [dbo].[GlobalCluster].[Tag], [dbo].[GlobalCluster].[Notes], [dbo].[GlobalCluster].[Show], [dbo].[GlobalCluster].[MinDisplay], [dbo].[GlobalCluster].[MaxDisplay], [dbo].[GlobalCluster].[MaxPercentageResults], [dbo].[GlobalCluster].[CaseConversion], [dbo].[GlobalCluster].[AutoAdd2Interfaces]) VALUES (@ID, @XPath, @XPathEnh, @Tag, @Notes, @Show, @MinDisplay, @MaxDisplay, @MaxPercentageResults, @CaseConversion, @AutoAdd2Interfaces) IF @@ERROR <> 0 RETURN exec [dbo].[EAIP_CopyClusterCaptions_80] @ID,@CaptionLangList END if @DbLabel <> '' Begin IF EXISTS (SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel) BEGIN UPDATE [dbo].[ClusterList] SET [dbo].[ClusterList].[SeqNo]=@SeqNo,[dbo].[ClusterList].[AutoAdd2Db]=@AutoAdd2Db WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel END ELSE BEGIN INSERT INTO [dbo].[ClusterList]([dbo].[ClusterList].[ClustId], [dbo].[ClusterList].[DbLabel], [dbo].[ClusterList].[SeqNo], [dbo].[ClusterList].[AutoAdd2Db]) VALUES (@ID, @DBLabel, @SeqNo, @AutoAdd2Db) END End END
CREATE PROCEDURE dbo.EAIP_GetDbInterfaceLimiterAutoAdd_76 ( @DbVerNo int , @ScreenNo int , @GroupNo int , @LimiterNo int ) AS BEGIN DECLARE @Interface nvarchar(150) DECLARE @ScreenDescr nvarchar(255) SELECT @Interface = IL.InterfaceName + '(' + IL.InterfaceID + ')' , @ScreenDescr = INS.Description FROM dbo.InterfaceScreen AS INS INNER JOIN dbo.InterfaceLanguage AS IL ON INS.InterfaceID = IL.InterfaceID AND INS.Version = IL.Version WHERE INS.IntfScreenNo=@ScreenNo AND IL.LangCode = 'en' DECLARE @Show bit SELECT @Show = [dbo].[InterfaceScreen].[LimiterShow] FROM dbo.InterfaceScreen WHERE [dbo].[InterfaceScreen].[IntfScreenNo] = @ScreenNo SELECT LL.LimiterId , @Interface AS Interface , @ScreenDescr AS ScreenDescr , ILG.Description AS GroupDescr , DLC.Caption , ISNULL(DIL.ControlType, LL.ControlType) AS ControlType , LL.ControlSize , ISNULL(DIL.Show,@Show) AS Show , ISNULL(DIL.DefValue, DL.DefValue) AS DefValue , LCT.ControlTag , LCT.DefaultEditControl , LCT.DefaultValueTemplate , ISNULL(CONVERT(nvarchar(max), DLD.ControlTemplate), '') AS ControlTemplate , DIL.DefPosn , DIL.ColNum FROM dbo.LimiterList AS LL INNER JOIN dbo.DbLimiter AS DL ON LL.LimiterNo = DL.LimiterNo INNER JOIN dbo.DbLimiterCaption AS DLC ON DL.DbVerNo = DLC.DbVerNo AND DL.LimiterNo = DLC.LimiterNo INNER JOIN dbo.LimiterControlType AS LCT ON LL.ControlType = LCT.ControlType LEFT OUTER JOIN dbo.DbInterfaceLimiter AS DIL ON DL.DbVerNo = DIL.DbVerNo AND DL.LimiterNo = DIL.LimiterNo AND DIL.IntfScreenNo=@ScreenNo AND (DIL.GroupNo IS NULL OR DIL.GroupNo = @GroupNo) LEFT OUTER JOIN dbo.InterfaceLimiterGroup AS ILG ON DIL.IntfScreenNo = ILG.IntfScreenNo AND DIL.GroupNo = ILG.GroupNo AND (ILG.GroupNo IS NULL OR ILG.GroupNo = @GroupNo) LEFT OUTER JOIN dbo.DbLimiterDetail AS DLD ON DL.DbVerNo=DLD.DbVerNo AND DL.LimiterNo = DLD.LimiterNo WHERE DL.LimiterNo = @LimiterNo AND DL.DbVerNo = @DbVerNo AND DLC.LangCode = 'en' END
CREATE PROCEDURE [dbo].[EAUI_LocalTitleListExistsByIssn_103] ( @ColNo int, @Origin as varchar(20) = '' ) AS BEGIN DECLARE @SharedColNo int SELECT @SharedColNo=[dbo].[Collection].[SharedFrom] FROM [dbo].[Collection] Where [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 IF @SharedColNo<>0 SELECT @ColNo=@SharedColNo DECLARE @RecExists bit; IF EXISTS ( SELECT 1 FROM [dbo].[LocalTitle] l INNER JOIN [dbo].[MasterTitle] m ON l.TitleNo = m.TitleNo WHERE l.ColNo = @ColNo and m.ISSN like @Origin + '%') SELECT @RecExists = 1; ELSE SELECT @RecExists = 0; SELECT @RecExists; END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbServerParams(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] FROM [dbo].[DbServerParams] WHERE [dbo].[DbServerParams].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseDocType_77](@UserID nvarchar(20), @UserIP varchar(30), @DBVerNo int, @DocTypeNo int) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) DECLARE @DocTypeID varchar(10) DECLARE @Caption nvarchar(255) SELECT @DbName = db.DbName, @DbLabel = db.DbLabel, @DocTypeID = dtl.DocTypeID, @Caption = dtc.Caption FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DbList] db ON ddt.DbVerNo = db.DbVerNo INNER JOIN [dbo].[DocTypeList] dtl ON ddt.DocTypeNo = dtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo WHERE ddt.DbVerNo = @DBVerNo AND ddt.DocTypeNo = @DocTypeNo AND dtc.LangCode = 'en' BEGIN TRANSACTION UPDATE [dbo].[DbBrowseOption] SET [dbo].[DbBrowseOption].[SourceType]=null WHERE [dbo].[DbBrowseOption].[DbVerNo]=@DBVerNo AND [dbo].[DbBrowseOption].[SourceType]=@DocTypeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[DbSearchOption] SET [dbo].[DbSearchOption].[SourceType]=null WHERE [dbo].[DbSearchOption].[DbVerNo]=@DBVerNo AND [dbo].[DbSearchOption].[SourceType]=@DocTypeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbDocType] WHERE [dbo].[DbDocType].[DbVerNo]=@DBVerNo AND [dbo].[DbDocType].[DocTypeNo]=@DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Delete Database DocTypes', @DbName,@DbLabel, @DocTypeID,@Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceTopics_77](@TopicID varchar(10),@InterfaceID varchar(10),@Version varchar(10), @Image varchar(255),@Photo1 varchar(255),@Photo2 varchar(255),@Photo3 varchar(255),@SeqNo int, @CaptionLangList nvarchar(max), @MouseOverLangList nvarchar(max),@PhotoAltLangList nvarchar(max))AS /** procedure is used by EPCopy **/ BEGIN DECLARE @TopicNo int DECLARE @IntfTopicNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID) RETURN ELSE SELECT @TopicNo=[dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version) RETURN IF @Image ='' SET @Image= null IF @Photo1 ='' SET @Photo1= null IF @Photo2 ='' SET @Photo2= null IF @Photo3 ='' SET @Photo3= null IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceTopic].[Version]=@Version AND [dbo].[InterfaceTopic].[TopicNo]=@TopicNo ) BEGIN INSERT INTO [dbo].[InterfaceTopic]([dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version],[dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[Image],[dbo].[InterfaceTopic].[Photo1],[dbo].[InterfaceTopic].[Photo2],[dbo].[InterfaceTopic].[Photo3],[dbo].[InterfaceTopic].[SeqNo]) VALUES (@InterfaceID,@Version,@TopicNo,@Image,@Photo1,@Photo2,@Photo3,@SeqNo) IF @@ERROR <> 0 RETURN SELECT @IntfTopicNo = [dbo].[InterfaceTopic].[IntfTopicNo] FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceTopic].[Version]=@Version AND [dbo].[InterfaceTopic].[TopicNo]=@TopicNo exec [dbo].[EAIP_CopyInterfaceTopicCaptions_77] @IntfTopicNo,@CaptionLangList, @MouseOverLangList, @PhotoAltLangList --captions END ELSE BEGIN SELECT @IntfTopicNo = [dbo].[InterfaceTopic].[IntfTopicNo] FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceTopic].[Version]=@Version AND [dbo].[InterfaceTopic].[TopicNo]=@TopicNo UPDATE [dbo].[InterfaceTopic] SET [dbo].[InterfaceTopic].[Image]=@Image, [dbo].[InterfaceTopic].[Photo1]=@Photo1, [dbo].[InterfaceTopic].[Photo2]=@Photo2, [dbo].[InterfaceTopic].[Photo3]=@Photo3, [dbo].[InterfaceTopic].[SeqNo]=@SeqNo WHERE [dbo].[InterfaceTopic].[IntfTopicNo] = @IntfTopicNo AND (ISNULL([dbo].[InterfaceTopic].[Image],'')<>ISNULL(@Image,'') OR ISNULL([dbo].[InterfaceTopic].[Photo1],'')<>ISNULL(@Photo1,'') OR ISNULL([dbo].[InterfaceTopic].[Photo2],'')<>ISNULL(@Photo2,'') OR ISNULL([dbo].[InterfaceTopic].[Photo3],'')<>ISNULL(@Photo3,'') OR [dbo].[InterfaceTopic].[SeqNo]<>@SeqNo) IF @@ERROR <> 0 RETURN IF @CaptionLangList<> dbo.EAIF_InterfaceTopicLangAndCaptions_77(@IntfTopicNo)OR @MouseOverLangList<>dbo.EAIF_InterfaceTopicLangAndMouseOverTexts_77(@IntfTopicNo) OR @PhotoAltLangList<>dbo.EAIF_InterfaceTopicLangAndPhotoAltTexts_77(@IntfTopicNo) exec [dbo].[EAIP_CopyInterfaceTopicCaptions_77] @IntfTopicNo,@CaptionLangList, @MouseOverLangList, @PhotoAltLangList END END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseDetails_141](@OldDbVerno int, @OldDbLabel varchar(10), @NewDbLabel varchar(10), @DbName varchar(10), @DbType int, @BasicParams bit=1, @Authorities bit=1, @Descriptions bit=1, @DocTypes bit=1, @Forms bit=1, @Limiters bit=1, @SegmentFileInfo bit=1, @SortOptions bit=1, @Subjects bit=1, @DbFields bit=1, @SearchOptions bit=1, @BrowseOptions bit=1, @AuthFilter bit =1, @Topics bit = 1, @TOCs bit=1, @Groups bit=1, @Customizers bit=1, @Clusters bit=1, @MultiDbAuthorities bit = 1, @ToolbarItems bit = 1, @RtacItems bit = 0, @SubsetDbs bit = 0, @PickupLocations BIT=0, @SearchConceptMapping BIT = 1, @DSParameters bit=0, @UserID nvarchar(20) = '', @UserIP varchar(15) = '') AS BEGIN Begin try DECLARE @NewDbVerNo int DECLARE @EnforceSimUsage bit SELECT @NewDbVerNo=DbVerNo,@EnforceSimUsage=EnforceSimUsage FROM dbo.DbList WHERE DbLabel=@NewDbLabel AND @DbName=DbName /* UPDATE dbo.DbList */ /* DbName, DbLabel, DSFamilyName are intentionally not overwritten */ /* EnforceSimUsage is handled separately below */ /* All other fields should be updated*/ if exists (Select 1 from dbo.DbSubset where SubsetDbVerNo = @OldDbVerno) or (@SubsetDbs = 1) UPDATE b SET DisplayName=a.DisplayName, DbGroup=a.DbGroup,DbType=a.DbType,ContentType=a.ContentType, LastUpdateDate=GETDATE(),MultiSegment=a.MultiSegment, ShowStats=a.ShowStats,ShowOnDDSConsole=a.ShowOnDDSConsole, WebClient=a.WebClient,WinClient=a.WinClient,CharClient=a.CharClient,Z3950Client=a.Z3950Client, InterfaceID=a.InterfaceID, DbCategory=a.DbCategory,EPXBuild=a.EPXBuild,EDABuild=a.EDABuild, IncludeWhenAutoAdd=a.IncludeWhenAutoAdd, DSFamilyName=a.DSFamilyName, NonSearchableDb=a.NonSearchableDb, ArchiveProfSettings=a.ArchiveProfSettings FROM dbo.DbList b CROSS JOIN dbo.DbList a WHERE b.DbVerNo = @NewDbVerNo AND a.DbVerNo=@OldDbVerno Else UPDATE b SET DisplayName=a.DisplayName, DbGroup=a.DbGroup,DbType=a.DbType,ContentType=a.ContentType, LastUpdateDate=GETDATE(),MultiSegment=a.MultiSegment, ShowStats=a.ShowStats,ShowOnDDSConsole=a.ShowOnDDSConsole, WebClient=a.WebClient,WinClient=a.WinClient,CharClient=a.CharClient,Z3950Client=a.Z3950Client, InterfaceID=a.InterfaceID, DbCategory=a.DbCategory,EPXBuild=a.EPXBuild,EDABuild=a.EDABuild, IncludeWhenAutoAdd=a.IncludeWhenAutoAdd, NonSearchableDb=a.NonSearchableDb, ArchiveProfSettings=a.ArchiveProfSettings FROM dbo.DbList b CROSS JOIN dbo.DbList a WHERE b.DbVerNo = @NewDbVerNo AND a.DbVerNo=@OldDbVerno IF @SubsetDbs=1 -- Database being promoted should have all subsets present in source label that are associated with this database in target label. IF EXISTS (SELECT * FROM ( SELECT dbl2.DbName FROM dbo.DbList dbl JOIN dbo.DbSubset dbs ON dbl.DbVerNo=dbs.PhysDbVerNo JOIN dbo.DbList dbl2 ON dbs.SubsetDbVerNo=dbl2.DbVerNo WHERE dbl.DbVerNo=@NewDbVerNo) a LEFT OUTER JOIN (SELECT dbl2.DbName FROM dbo.DbList dbl JOIN dbo.DbSubset dbs ON dbl.DbVerNo=dbs.PhysDbVerNo JOIN dbo.DbList dbl2 ON dbs.SubsetDbVerNo=dbl2.DbVerNo WHERE dbl.DbVerNo=@OldDbVerno) b ON a.DbName=b.DbName WHERE b.DbName IS NULL) RAISERROR ('Database being promoted has some associated subset database(s) in %s label that do not exist as subset for this database in current label, please make sure these subset(s) are removed from target label as well before promoting i t.',16,-1,@NewDbLabel) -- EADM-3911 fix: If the promoted database has no subsets databases in the current label, however the same database has -- subset databases (Parent + subsets) in the target label, then raise an error. IF EXISTS (SELECT 1 FROM dbo.DbSubset WHERE PhysDbVerNo = @NewDbVerNo) AND NOT EXISTS (SELECT 1 FROM dbo.DbSubset WHERE PhysDbVerNo = @OldDbVerno) RAISERROR ('Database being promoted has some associated subset database(s) in %s label that do not exist as subset for this database in current label, please make sure these subset(s) are removed from target label as well before promoting i t.',16,-1,@NewDbLabel) -- If promoted Database is not a SubsetDB on the lower label but it is on the upper label then make it not a SubsetDb on the upper lable as well IF EXISTS (SELECT 1 FROM dbo.DbSubset WHERE SubsetDbVerNo=@NewDbVerNo) AND NOT EXISTS (SELECT 1 FROM dbo.DbSubset WHERE SubsetDbVerNo=@OldDbVerno) BEGIN declare @PhysDbVerNo int=0 select @PhysDbVerNo = PhysDbVerNo from dbo.DbSubset where SubsetDbVerNo=@NewDbVerNo delete dbo.DbSubset where SubsetDbVerNo=@NewDbVerNo delete dbo.DbParamScalarValues from dbo.DbParamScalarValues s inner join dbo.DbParamList l on l.ParamNo= s.ParamNo where s.DbVerNo=@NewDbVerNo and l.InheritFromPhysical=1 delete dbo.DbCluster where DbVerNo=@NewDbVerNo delete dbo.DbSort where DbVerNo=@NewDbVerNo delete dbo.DbServerParams where DbVerNo=@NewDbVerNo insert into dbo.DbParamScalarValues(DbVerNo, ParamNo, ParamValue) select @NewDbVerNo, l.ParamNo, s.ParamValue from dbo.DbParamScalarValues s inner join dbo.DbParamList l on l.ParamNo= s.ParamNo where s.DbVerNo = @PhysDbVerNo and l.InheritFromPhysical=1 insert into dbo.DbCluster(DbVerNo, ClustNo, Enable, DbSearchTag) select @NewDbVerNo, ClustNo, Enable, DbSearchTag from dbo.DbCluster where DbVerNo = @PhysDbVerNo insert into dbo.DbSort(DbVerNo, SortID, SortName, SortField, SeqNo) select @NewDbVerNo, SortID, SortName, SortField, SeqNo from dbo.DbSort where DbVerNo = @PhysDbVerNo insert into dbo.DbServerParams(DbVerNo, Threads, WaitForRequest, DefSearchInstances, MaxSearchInstances,DefRetrieveInstances, MaxRetrieveInstances, DefFormatInstances, MaxFormatInstances, DefFullTextInstances, MaxFullTextInstances, DefThesaurusInstances, MaxThesaurusInstances, MaxFuzzyTerms, MaxBooleanTerms, MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers, MaxRecords) select @NewDbVerNo, Threads, WaitForRequest, DefSearchInstances, MaxSearchInstances,DefRetrieveInstances, MaxRetrieveInstances, DefFormatInstances, MaxFormatInstances, DefFullTextInstances, MaxFullTextInstances, DefThesaurusInstances, MaxThesaurusInstances, MaxFuzzyTerms, MaxBooleanTerms, MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers, MaxRecords from dbo.DbServerParams where DbVerNo = @PhysDbVerNo END /* Enforce Sim Usage only gets overwritten if it was disabled to begin with Avoids unintentional disabling of this feature during promotion */ IF (@EnforceSimUsage=0) UPDATE a SET EnforceSimUsage=b.EnforceSimUsage FROM dbo.DbList a CROSS JOIN dbo.DbList b WHERE a. DbVerNo=@NewDbVerNo AND b.DbVerNo=@OldDbVerno /* insert promote database details into temp table*/ IF OBJECT_ID('tempdb..#PromoteDatbases') IS NULL CREATE TABLE #PromoteDatbases(DbVerNo int,DbLabel varchar(10)) IF NOT EXISTS (SELECT 1 FROM #PromoteDatbases WHERE DbVerNo=@NewDbVerNo AND DbLabel=@NewDbLabel) BEGIN INSERT INTO #PromoteDatbases VALUES(@NewDbVerNo,@NewDbLabel) --SELECT * FROM #PromoteDatbases /* dbo.DbIcon */ DELETE FROM dbo.DbIcon WHERE DbVerNo=@NewDbVerNo INSERT INTO dbo.DbIcon (DbVerNo, IconBitmap) SELECT @NewDbVerNo AS DbVerNo,IconBitMap FROM dbo.DbIcon WHERE DbVerNo=@OldDbVerno /* BasicParams */ IF (@BasicParams = 1) EXEC dbo.EAIP_PromoteDatabaseScalarParams_70 @OldDbVerno, @NewDbVerNo /* AUTHORITIES */ IF ( @DbType = 1 AND @Authorities=1) BEGIN /* Only regular databases have authorities */ EXEC dbo.EAIP_PromoteDatabaseAuthorities_70 @OldDbVerno, @OldDbLabel, @NewDbVerNo, @NewDbLabel, 1, 1, 1, 1, 1, 0, @DbFields, @SearchOptions,@BrowseOptions, @AuthFilter, @Topics,@Groups,@Customizers,@Clusters,@MultiDbAuthorities,@ToolbarItems EXEC dbo.EAIP_PromoteMultiDbAuthoritiesForRegularDb_90 @OldDbVerno, @OldDbLabel, @NewDbVerNo, @NewDbLabel END /* MultiDb Authorities */ IF (@DbType != 1 AND @MultiDbAuthorities = 1) EXEC dbo.EAIP_PromoteMultiDbAuthoritiesForAuthority_90 @OldDbVerno, @NewDbVerNo /* Forms */ IF (@Forms = 1 ) EXEC dbo.EAIP_PromoteDatabaseForms_70 @OldDbVerno, @NewDbVerNo /* Limiters */ IF (@Limiters=1) EXEC dbo.EAIP_PromoteDatabaseLimiters_70 @OldDbVerno, @NewDbVerNo /* SegmentFileInfo */ IF (@SegmentFileInfo = 1 ) EXEC dbo.EAIP_PromoteDatabaseSegmentFileInfo_70 @OldDbVerno, @NewDbVerNo /* SortOptions */ IF (@SortOptions = 1) EXEC dbo.EAIP_PromoteDatabaseSortOptions_70 @OldDbVerno, @NewDbVerNo /* DocTypes */ IF (@DocTypes = 1 ) EXEC dbo.EAIP_PromoteDatabaseDocTypes_77 @OldDbVerno, @NewDbVerNo /* Descriptions */ IF (@Descriptions = 1 ) BEGIN EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'shortDescription' EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'longDescription' EXEC dbo.EAIP_PromoteDatabaseScalarParam_100 @OldDbVerno, @NewDbVerNo, 'ResourceType' END /* Subjects */ IF (@Subjects = 1 ) EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'dbSubjects' /* DbFields */ IF (@DbFields=1) EXEC dbo.EAIP_PromoteDatabaseFields_70 @OldDbVerno, @NewDbVerNo /* BrowseOptions */ IF (@BrowseOptions=1) EXEC dbo.EAIP_PromoteDatabaseBrowseOptions_70 @OldDbVerno, @NewDbVerNo /* SearchOptions */ IF (@SearchOptions=1) EXEC dbo.EAIP_PromoteDatabaseSearchOptions_70 @OldDbVerno, @NewDbVerNo IF (@AuthFilter =1) EXEC dbo.EAIP_PromoteDatabaseXmlParam_70 @OldDbVerno, @NewDbVerNo, 'authorityFilters' /*Topics*/ IF (@Topics =1) EXEC dbo.EAIP_PromoteDatabaseTopics_77 @OldDbVerno, @NewDbVerNo IF (@TOCs =1) EXEC dbo.EAIP_PromoteDatabaseTOCs_80 @OldDbVerno, @NewDbVerNo --Subject Groups IF (@Groups =1) EXEC dbo.EAIP_PromoteDatabaseGroups_80 @OldDbVerno, @NewDbVerNo --Rel. Ranking items: Customizers, RR Weight Fields, Field match IF (@Customizers = 1) BEGIN EXEC dbo.EAIP_PromoteDatabaseCustomizer_88 @OldDbVerno, @NewDbVerNo, @UserID, @UserIP EXEC EAIP_PromoteDatabaseFeatures_96 'rrw', @OldDbVerno, @NewDbVerNo EXEC EAIP_PromoteDatabaseFeatures_96 'fmt', @OldDbVerno, @NewDbVerNo END --Clusters IF (@Clusters = 1) EXEC dbo.EAIP_PromoteDatabaseClusters_89 @OldDbVerno, @NewDbVerNo, @UserID, @UserIP --ToolbarItems IF (@ToolbarItems = 1) EXEC dbo.EAIP_PromoteDatabaseToolbarItems_100 @OldDbVerno, @NewDbVerNo -- RTAC items IF (@RtacItems=1) EXEC EAIP_PromoteDatabaseRtacItems_101 @OldDbVerno, @NewDbVerNo -- subset dbs if @SubsetDbs =1 Begin Delete dbo.DbSubset where PhysDbVerNo=@NewDbVerNo exec EAIP_PromoteDbSubsets_103 @OldDbVerno, @NewDbLabel, @UserID, @UserIP END -- pickup locations IF @PickupLocations=1 EXEC EAIP_PromoteDbPickupLocations_141 @OldDbVerno, @NewDbVerNo -- search concept mapping data IF (@SearchConceptMapping=1) EXEC EAIP_PromoteDatabaseSearchConceptMapping_131 @OldDbVerno, @NewDbVerNo if @DSParameters=1 Exec EAIP_PromoteDSParameters_141 @OldDbVerno, @NewDbVerNo END End try BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
/*Automated Subscription Deletion - Close access to db*/ CREATE PROCEDURE [dbo].[EAUI_GetProfileAddDatabaseCount_70] @ProfNo int AS BEGIN DECLARE @CustType char(1) DECLARE @DbLabel varchar(10) SELECT @CustType = [b].[CustType], @DbLabel=[a].[DbLabel] FROM [dbo].[Profile] a INNER JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo IF @CustType = 'I' SELECT count(1) FROM [dbo].[DbList] a INNER JOIN [dbo].[DbTypeList] b ON a.DbType=b.DbType WHERE a.DbLabel= @DbLabel AND b.Category='R' AND a.DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo) ELSE SELECT count(1) FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo WHERE a.ProfNo = @ProfNo AND a.Enable = 0 AND (a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseSortOption_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SortID varchar(10), @SortName nvarchar(20), @SortField varchar(100)) AS BEGIN DECLARE @SeqNo int IF EXISTS (SELECT 1 FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo AND [dbo].[DbSort].[SortID]=@SortID) BEGIN RAISERROR('Sort option %s already exists for this database. Insert failed.',16,-1,@SortID) RETURN END SELECT @SeqNo=(ISNULL(MAX([dbo].[DbSort].[SeqNo]),0) + 1) FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo INSERT INTO [dbo].[DbSort] ( [dbo].[DbSort].[DbVerNo], [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo] ) VALUES (@DbVerNo, @SortID, @SortName, @SortField, @SeqNo) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert failed for sort option %s and database %s, %s',16,-1,@SortID, @DbName, @DbLabel) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Sort Option','Sort ID:', @SortID, 'Sort key:', @SortField END
CREATE PROCEDURE [dbo].[EPCS_GetProfCustomLinks_70](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @CustParamNo int DECLARE @ProfParamNo int DECLARE @ProfNo int DECLARE @TargetNo int DECLARE @FTPlaceHolderParamNo int DECLARE @MaxSeqNo int DECLARE @MaxOrderNo int DECLARE @InterfaceID varchar(10) DECLARE @Table TABLE (ItemName varchar(255),ParamValue nvarchar(max), SeqNo smallint, OrderNo smallint) DECLARE @ShowFullTextGrid int Declare @CurrFTSeqNo int Declare @FTLinkedNewSeqNo int DECLARE @LinkedFTPlaceHolderParamNo int DECLARE @LinkedFTPlaceHolderItemName varchar (255) DECLARE @FTPlaceHolderItemName varchar (255) DECLARE @i int DECLARE @CustTable TABLE (CustID varchar(10),CustNo int) SET @CustParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SET @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') SET @ProfNo=dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo Select @ShowFullTextGrid = dbo.EAIF_GetProfileParamScalarValue_70 (@ProfNo,'showFullTextGridOnAdminCustomLinkPage') Insert into @CustTable (CustID,CustNo) SELECT a.CustID, a.CustNo FROM [dbo].[Customer] a WHERE [a].[CustID] = @CustID UNION SELECT a.CustID, a.CustNo FROM [dbo].[CustomerGroup] g INNER JOIN [dbo].[Customer] a ON g.ParentID = a.CustID WHERE g.ChildID = @CustID -- For EDS/PFI, Get all the FullText Customlinks (include the placehold link) first and append the non fullText links to it. --IF @InterfaceId = 'eds' -- Note: Logic for @ShowFullTextGrid check added in Release 14.2 ( for EHPMEBSCOADMIN-2050) IF @ShowFullTextGrid = 1 BEGIN --used by eds/pfi interface only (now replaced by @ShowFullTextGrid check) SELECT @TargetNo=dbo.EAIF_GetCustNo_70('system') SELECT @FTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemFTPlaceHolderLink','C') SELECT @LinkedFTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemLinkedFTPlaceHolderLink','C') SELECT @FTPlaceHolderItemName=[b].[ItemName] from [dbo].[CustomParamXmlValues] b Where b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@FTPlaceHolderParamNo SELECT @LinkedFTPlaceHolderItemName=[b].[ItemName] from [dbo].[CustomParamXmlValues] b Where b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo -- insert full text links first Insert into @Table (ItemName,ParamValue,SeqNo, OrderNo) SELECT b.ItemName, b.ParamValue, ISNULL(c.SeqNo,0) , c.SeqNo As OrderNo FROM @CustTable a JOIN [dbo].[CustomParamXmlValues] b ON a.CustNo=b.TargetNo AND b.ParamLevel='C' AND b.ParamNo=@CustParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@ProfParamNo AND c.TargetNo=@ProfNo WHERE dbo.EAIF_GetXmlAttribValue_70(b.ParamValue,'linkCategory' )='fullText' ORDER BY ISNULL(c.SeqNo,0) ,dbo.EAIF_GetXmlAttribValue_70(b.ParamValue,'linkName') -- Add a customized entry for linked full text if exists Insert into @Table (ItemName,ParamValue,SeqNo,OrderNo) SELECT b.ItemName , b.ParamValue , isnull(c.SeqNo,0) As SeqNo, c.SeqNo As OrderNo FROM [dbo].[Customer] a JOIN [dbo].[CustomParamXmlValues] b ON b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@LinkedFTPlaceHolderParamNo AND c.TargetNo=@ProfNo WHERE a.CustID = @CustID -- for eds/pfi interface (now replaced by @ShowFullTextGrid check), add a placeholder (dummy) entry. If no customization exist add it at the end. Select @MaxSeqNo = ISNULL(max(SeqNo),0) from @Table Insert into @Table (ItemName,ParamValue,SeqNo,OrderNo) SELECT b.ItemName , b.ParamValue , ISNULL(c.SeqNo,@MaxSeqNo + 1) As SeqNo, c.SeqNo As OrderNo FROM [dbo].[Customer] a JOIN [dbo].[CustomParamXmlValues] b ON b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@FTPlaceHolderParamNo LEFT OUTER JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@FTPlaceHolderParamNo AND c.TargetNo=@ProfNo WHERE a.CustID = @CustID If not exists (select 1 from @Table where ItemName=@LinkedFTPlaceHolderItemName) Begin Select @CurrFTSeqNo = SeqNo from @Table where ItemName=@FTPlaceHolderItemName If @CurrFTSeqNo <> (@MaxSeqNo + 1) SET @FTLinkedNewSeqNo = @CurrFTSeqNo else SET @FTLinkedNewSeqNo = @CurrFTSeqNo + 1 -- Add the entry for the smartlink+ link (systemLinkedFTPlaceHolderLink) , if customized entry do not exists Insert into @Table (ItemName,ParamValue,SeqNo,OrderNo) SELECT b.ItemName , b.ParamValue , ISNULL(@FTLinkedNewSeqNo,0) As SeqNo , c.SeqNo As OrderNo FROM [dbo].[Customer] a JOIN [dbo].[CustomParamXmlValues] b ON b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo LEFT OUTER JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@LinkedFTPlaceHolderParamNo AND c.TargetNo=@ProfNo WHERE a.CustID = @CustID End SELECT @i= ISNULL(MAX(SeqNo),0) FROM @Table -- append the non full text links to the temp table Insert into @Table (ItemName,ParamValue,SeqNo,OrderNo) SELECT b.ItemName, b.ParamValue, @i+ ROW_NUMBER() OVER(ORDER BY c.SeqNo) as SeqNo, c.SeqNo As OrderNo FROM @CustTable a JOIN [dbo].[CustomParamXmlValues] b ON a.CustNo=b.TargetNo AND b.ParamLevel='C' AND b.ParamNo=@CustParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@ProfParamNo AND c.TargetNo=@ProfNo WHERE dbo.EAIF_GetXmlAttribValue_70(b.ParamValue,'linkCategory' ) <> 'fullText' ORDER BY ISNULL(c.SeqNo, 0) -- Select all rows from the temp table Select @MaxOrderNo = ISNULL(max(OrderNo),0) + 1 from @Table update @Table set OrderNo = @MaxOrderNo where orderno is null Select ItemName,ParamValue,SeqNo,OrderNo from @Table ORDER BY ISNULL(SeqNo, 0),dbo.EAIF_GetXmlAttribValue_70(ParamValue,'linkName' ) END ELSE -- non eds/pfi interface (now replaced by @ShowFullTextGrid check) SELECT b.ItemName, b.ParamValue, ISNULL(c.SeqNo, 0) as 'SeqNo', ISNULL(c.SeqNo, 0) as 'OrderNo' FROM @CustTable a JOIN [dbo].[CustomParamXmlValues] b ON a.CustNo=b.TargetNo AND b.ParamLevel='C' AND b.ParamNo=@CustParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@ProfParamNo AND c.TargetNo=@ProfNo ORDER BY ISNULL(c.SeqNo, 0) END
CREATE PROCEDURE [dbo].[AUTH_GetUserGroupParams_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN IF @CustID IS NOT NULL AND @GroupID IS NOT NULL SELECT @CustID AS CustID, @GroupID As GroupID, dbo.EAIF_GetGroupParamScalarValue_70(@CustID,@GroupID,'cookiesAllowed') AS UseCookie END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceListSortedByID_Paged_203] @InterfaceID varchar(10) = '', @PageIndex INT = 0, @PageSize INT = 10 AS BEGIN SET @InterfaceID = ISNULL(@InterfaceID, ''); SELECT InterfaceID, Version, SiteID, SiteURL, InterfaceName FROM ( SELECT ROW_NUMBER() OVER(ORDER BY iv.InterfaceID, iv.Version) AS RowNum ,iv.InterfaceID ,iv.Version ,iv.SiteID ,iv.SiteURL ,il.InterfaceName FROM [dbo].[InterfaceVersion] iv INNER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version = il.Version WHERE il.LangCode='en' AND iv.InterfaceID <> 'all' AND iv.InterfaceID >= @InterfaceID ) AS i WHERE RowNum BETWEEN @PageIndex * @PageSize + 1 AND (@PageIndex + 1) * @PageSize END
CREATE PROCEDURE [dbo].[EAIS_SetEOCollection_71] ( @EACustID varchar(10), @EOCustCode varchar(50), @EOUserName varchar(75), @EOColID nvarchar(50), @UpdateStatus int ) AS BEGIN DECLARE @EOColNo int DECLARE @ColName nvarchar(100) DECLARE @ColNo int DECLARE @SharedFrom int DECLARE @AutoRecreate bit SELECT @EOColNo=[dbo].[Collection].[ColNo], @ColName=[dbo].[Collection].[ColName] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]='eonline' AND [dbo].[Collection].[ColID]=@EOColID AND [dbo].[Collection].[IsDeleted] = 0 IF @EOColNo IS NULL RETURN SELECT @ColNo = [dbo].[Collection].[ColNo], @SharedFrom=[dbo].[Collection].[SharedFrom], @AutoRecreate=[dbo].[Collection].[AutoRecreate] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@EACustID AND [dbo].[Collection].[ColID]=@EOColID AND [dbo].[Collection].[IsDeleted] = 0 IF @ColNo IS NULL EXEC [dbo].[EAIPO_AddCollection_70] @EACustID,@EOColID,@ColName,0,null,0,0,@ColNo OUTPUT IF @SharedFrom IS NULL OR @SharedFrom <> @EOColNo BEGIN UPDATE dbo.Collection SET [dbo].[Collection].[SharedFrom]=@EOColNo, [dbo].[Collection].[Eonline]=1, [dbo].[Collection].[Hidden]= 1 WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 --SET @UpdateStatus=1 END -- Update the AutoRecreate flag , if needed IF EXISTS (SELECT 1 FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamScalarValues] b ON a.ProfNo = b.TargetNo INNER JOIN [dbo].[CustomParamScalarValues] c ON a.ProfNo = c.TargetNo INNER JOIN [dbo].[CustomParamScalarValues] d ON a.ProfNo = d.TargetNo WHERE a.CustID = @EACustID AND b.ParamLevel = 'P' AND b.ParamNo = dbo.EAIF_GetCustomParamNumber_70('includeLinkedFullText', 'P') AND b.ParamValue = N'1' AND c.ParamLevel = 'P' AND c.ParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineCustID', 'P') AND c.ParamValue = @EOCustCode AND d.ParamLevel = 'P' AND d.ParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineUserID', 'P') AND d.ParamValue = @EOUserName) BEGIN UPDATE dbo.Collection SET [dbo].[Collection].[AutoRecreate] = 1 WHERE [dbo].[Collection].[ColNo]=@ColNo --SET @UpdateStatus=1 END ELSE UPDATE dbo.Collection SET [dbo].[Collection].[AutoRecreate] = 0 WHERE [dbo].[Collection].[ColNo]=@ColNo IF @UpdateStatus=1 EXEC [dbo].[EAIP_RebuildLocalLimiter_70] 'system','E',@ColNo,null -- Add the Collection to EOCollection Table DECLARE @OldEOColID nvarchar(50) SELECT @OldEOColID = [dbo].[EOCollection].[EOColID] FROM dbo.EOCollection WHERE [dbo].[EOCollection].[EACustID]=@EACustID AND [dbo].[EOCollection].[EOCustCode]=@EOCustCode AND [dbo].[EOCollection].[EOUserName]=@EOUserName IF @OldEOColID IS NULL BEGIN INSERT INTO [dbo].[EOCollection] ([dbo].[EOCollection].[EACustID],[dbo].[EOCollection].[EOCustCode],[dbo].[EOCollection].[EOUserName],[dbo].[EOCollection].[EOColID]) VALUES (@EACustID,@EOCustCode,@EOUserName,@EOColID) END ELSE IF @OldEOColID <> @EOColID BEGIN -- Remove the unused old EOCollection SET @ColNo = null SET @SharedFrom = null SELECT @ColNo = [dbo].[Collection].[ColNo], @SharedFrom=[dbo].[Collection].[SharedFrom] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@EACustID AND [dbo].[Collection].[ColID]=@OldEOColID AND [dbo].[Collection].[IsDeleted] = 0 IF @ColNo IS NOT NULL BEGIN EXEC [dbo].[EAIP_DeleteCollection_70] @ColNo IF NOT EXISTS (SELECT 1 FROM [dbo].[Collection] WHERE [dbo].[Collection].[SharedFrom] = @SharedFrom AND [dbo].[Collection].[IsDeleted] = 0) -- No more collections sharing the parent collection EXEC [dbo].[EAIP_DeleteCollection_70] @SharedFrom END UPDATE dbo.EOCollection SET [dbo].[EOCollection].[EOColID]=@EOColID WHERE [dbo].[EOCollection].[EACustID]=@EACustID AND [dbo].[EOCollection].[EOCustCode]=@EOCustCode AND [dbo].[EOCollection].[EOUserName]=@EOUserName END END
CREATE PROCEDURE [dbo].[EPCAS_GetLocalTitleList]( @CustomerID varchar(10), @CollectionID varchar(50), @Term varchar(255), @NumOfElements int ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID AND [dbo].[Collection].[IsDeleted] = 0 SET ROWCOUNT @NumOfElements SELECT lt.TitleNo as 'TitleID', lt.ColNo FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo WHERE lt.ColNo=@ColNo AND UPPER(mt.Title) >= UPPER(@Term) ORDER BY UPPER(mt.Title), mt.ISSN END
CREATE FUNCTION [dbo].[EAIF_GetDbNameAndLabel_70](@DbVerNo int) RETURNS @DbTable TABLE (DbName varchar(10), DbLabel varchar(10)) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo INSERT INTO @DbTable VALUES(@DbName, @DbLabel) RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbListForFeature_80](@FeatureNo int) AS BEGIN SELECT db.DisplayName + N' ('+db.DbName+N'-'+db.DbLabel+N')' AS Db FROM [dbo].[DbList] db INNER JOIN [dbo].[DbFeature] dbf ON db.DbVerNo = dbf.DbVerNo WHERE dbf.FeatureNo=@FeatureNo ORDER BY db.DisplayName, db.DbLabel END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfileParamScalarValueWithServiceCall_141] (@UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @ParamName varchar(100) DECLARE @OldValue nvarchar (2000) --- Note: This procedure is specifically created for service call use. It has some additional update logic which is ---not suitable for Admin UI calls. SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) BEGIN TRY IF (@ParamName = 'durableLinkPrimaryProxy' OR @ParamName = 'durableLinkSecondaryProxy' OR @ParamName='crossRefColID' OR @ParamName='defaultLocalsNoMessage' OR @ParamName='custProductLabel') Select @OldValue=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,@ParamName) BEGIN TRANSACTION -- Update the Profile Param Scalar Value. Use the procedure currently in use in Admin UI LibAdmin Profile tabs EXEC [dbo].[EAIP_UpdateProfileParamScalarValue_70] @ProfNo, @ParamNo, @ParamValue -- Some of the scalar parameters do additional updates (they are specified in ProcInfo) -- Mimic the logic in CustomizeServiceHeaderControl.UpdateForAdditionalParams -- This method is currently invoked from LibAdmin Linking and Results tab Only. IF (@ParamName = 'durableLinkPrimaryProxy' OR @ParamName = 'durableLinkSecondaryProxy' ) --Linking BEGIN EXEC [dbo].[EAUI_handleProxyReferences_99] @UserID,@UserIP,@ProfNo,@ParamNo,@ParamValue,@OldValue END ELSE IF (@ParamName='crossRefColID') --Linking BEGIN EXEC [dbo].[EAUI_UpdateCollectionCrossrefFlag_70] @UserID,@UserIP,@ProfNo,@ParamNo,@OldValue,@ParamValue END ELSE IF (@ParamName='defaultLocalsNoMessage') --Results BEGIN EXEC [dbo].[EAUI_UpdateProfileDefaultNoMessage_70] @UserID,@UserIP,@ProfNo,@ParamNo,@ParamValue,@OldValue END ELSE IF (@ParamName='custProductLabel') -- Branding tab BEGIN EXEC [dbo].[EAUI_UpdateProfileProductLabel_97] @UserID,@UserIP,@ProfNo,@ParamNo,@ParamValue,@OldValue END COMMIT TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'ConfigurationManagmentService','Modify Scalar Profile Parameter',@ProfLogName,@ParamName,@ParamValue END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseRtacItems_101](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo]=@OldDbVerNo) DELETE [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo]=@NewDbVerNo ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo]=@NewDbVerNo) INSERT INTO [dbo].[DbRTACInfo]([dbo].[DbRTACInfo].[DbVerNo], [dbo].[DbRTACInfo].[Enable], [dbo].[DbRTACInfo].[Config], [dbo].[DbRTACInfo].[Translation], [dbo].[DbRTACInfo].[ILSIntegration]) SELECT @NewDbVerNo, [dbo].[DbRTACInfo].[Enable], [dbo].[DbRTACInfo].[Config], [dbo].[DbRTACInfo].[Translation], [dbo].[DbRTACInfo].[ILSIntegration] FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @OldDbVerNo ELSE BEGIN DECLARE @tmp table (DbVerNo int, [Enable] bit, Config nvarchar(max),Translation nvarchar(max), ILSIntegration NVARCHAR(255)) INSERT Into @tmp SELECT @NewDbVerNo, [dbo].[DbRTACInfo].[Enable], [dbo].[DbRTACInfo].[Config], [dbo].[DbRTACInfo].[Translation], [dbo].[DbRTACInfo].[ILSIntegration] FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo]=@OldDbVerNo UPDATE [dbo].[DbRTACInfo] SET [Enable]=w.Enable, [Config]=w.Config, [Translation]=w.Translation, [ILSIntegration]=w.ILSIntegration FROM [dbo].[DbRTACInfo] e INNER JOIN @tmp w ON w.DbVerNo=e.DbVerNo END END
CREATE PROCEDURE [dbo].[EAUI_UpdateGlobalDbSearchTagDetails_82](@UserID nvarchar(20), @UserIP varchar(15),@Tag varchar(10),@Description nvarchar(255), @AutoAdd bit) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[GlobalSearchTags] SET [dbo].[GlobalSearchTags].[Description]=@Description, [dbo].[GlobalSearchTags].[AutoAdd]=@AutoAdd WHERE [dbo].[GlobalSearchTags].[Tag]=@Tag IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'GlobalDbSearchTags','Update Tag', @Tag, @Description COMMIT TRANSACTION END
--sql content merged from file: \Functions\EAIF_GetProfGroupDbInfo_92.sql CREATE FUNCTION dbo.EAIF_GetProfGroupDbInfo_92(@ProfNo int,@GroupNo int) RETURNS varchar(8000) AS BEGIN DECLARE @Databases varchar(8000) SET @Databases='' SELECT @Databases = @Databases + ' ' END' FROM [dbo].[DbList] db INNER JOIN [dbo].[DbGroup] gdb ON gdb.DbVerNo=db.DbVerNo INNER JOIN [dbo].[GroupList] gl ON gl.GroupNo = gdb.GroupNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = db.DbVerNo WHERE gl.GroupNo=@GroupNo AND pdb.ProfNo=@ProfNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) RETURN @Databases + '
--sql content merged from file: \StoredProcedures\EAUI_GetCustExternalSourceList_92.sql CREATE Procedure [dbo].[EAUI_GetCustExternalSourceList_92] @CustID varchar(10), @FreeDbInd bit AS SELECT d.DbVerNo, [d].[DisplayName] + N' (' + [d].[DbName] + N')' AS ConnectorName From [dbo].[DbList] d Join [dbo].[DbListExternalSource] de on (de.DbVerNo = d.DbVerNo) Join [dbo].[CustExternalDbList] cd on (cd.DbVerNo = de.DbVerNo) Join [dbo].[Customer] c on (c.CustNo = cd.CustNo) WHERE d.DbLabel = 'live' AND de.Free = @FreeDbInd And c.CustID=@CustID Order by ConnectorName
CREATE Procedure EAIP_CopyConnectorConfiguration_104 ( @UserID nvarchar(255), @UserIP varchar(15), @SourceCustID varchar(10), @TargetCustID varchar(10), @IncludeAuthSettings bit, @Status char(1), @Mode char(1), @DbVerNos varchar(max) ) as Begin Declare @SourceCustNo int Declare @TargetCustNo int Declare @DbVerNosTable table (DbVerNo int) Declare @TargetDbVerNos varchar(max) Declare @SourceDbVerNos varchar(max) Declare @IP VARCHAR(45) Declare @PrdOffNo int Declare @AddedDbTable table (num int identity(1,1), DbName varchar(10), DbVerNo int) Declare @UpdatedDbTable table (num int identity(1,1), DbName varchar(10), DbVerNo INT) Declare @Counter int Declare @Max int Declare @DbName varchar(10) Declare @Cust varchar(20) Declare @AuthSettingsTable TABLE (DbVerNo INT, PrimaryProxyHostIp VARCHAR(45), ConnectorID NVARCHAR(50), ConnectorPassword NVARCHAR(50), KeyValuePairs NVARCHAR(355)) Select @SourceCustNo=CustNo from dbo.Customer where CustID=@SourceCustID Select @TargetCustNo=CustNo from dbo.Customer where CustID=@TargetCustID insert into @DbVerNosTable select CONVERT(int,SplitData) from dbo.Util_SplitToTable(',',@DbVerNos) Begin Try Begin Transaction If @Mode='R' BEGIN IF @IncludeAuthSettings=0 BEGIN INSERT @AuthSettingsTable SELECT cedblid.DbVerNo, PrimaryProxyHostIp, ConnectorID, ConnectorPassword, KeyValuePairs from dbo.CustExternalDbList cedbl JOIN dbo.CustExternalDbListIndexData cedblid ON cedbl.CustNo = cedblid.CustNo AND cedbl.DbVerNo = cedblid.DbVerNo join dbo.DbListExternalSource dbles on cedbl.DbVerNo=dbles.DbVerNo Where cedbl.CustNo=@TargetCustNo and ISNULL(cedbl.ConnectorProvider, dbles.ConnectorProvider) = 'I' END -- get list of DbVerNo's for ID Connectors for Target CustID -- call EAUI_RemoveCustomerConnectors_102 passing @UserID, @UserIP, @TargetCustID and list of DbVerNo's -- this will delete from all appropriate tables Set @TargetDbVerNos='' Select @TargetDbVerNos = @TargetDbVerNos + convert(varchar(max), cedbl.DbVerNo) + ',' from dbo.CustExternalDbList cedbl join dbo.DbListExternalSource dbles on cedbl.DbVerNo=dbles.DbVerNo Where cedbl.CustNo=@TargetCustNo and ISNULL(cedbl.ConnectorProvider, dbles.ConnectorProvider) = 'I' if LEN(@TargetDbVerNos)>0 set @TargetDbVerNos=LEFT(@TargetDbVerNos, LEN(@TargetDbVerNos)-1) exec EAUI_RemoveCustomerConnectors_102 @UserID, @UserIP, @TargetCustID, @TargetDbVerNos End -- Get DbNames for Connectors to be added to the Target Customer so we can log this information Insert @AddedDbTable (DbName, DbVerNo) select DbName, dbl.DbVerNo From dbo.CustExternalDbList cedbl1 left outer join dbo.CustExternalDbList cedbl2 on cedbl1.DbVerNo=cedbl2.DbVerNo and cedbl2.CustNo=@TargetCustNo Join @DbVerNosTable t on cedbl1.DbVerNo=t.DbVerNo join dbo.DbList dbl on t.DbVerNo=dbl.DbVerNo where cedbl1.CustNo=@SourceCustNo and cedbl2.CustNo is null -- insert to appropriate tables where DbVerNo does not already exist for @TargetCustNo -- Default Status to 'P' so nothing is added to ProfDatabase yet for @TargetCustNo Insert dbo.CustExternalDbList (CustNo, DbVerNo, ConnectorProvider, Status, CustomerNotes, PrimaryProxyHostIp) select @TargetCustNo, cedbl1.DbVerNo, cedbl1.ConnectorProvider, 'P', cedbl1.CustomerNotes, case @IncludeAuthSettings when 1 then cedbl1.PrimaryProxyHostIp else null end From dbo.CustExternalDbList cedbl1 left outer join dbo.CustExternalDbList cedbl2 on cedbl1.DbVerNo=cedbl2.DbVerNo and cedbl2.CustNo=@TargetCustNo Join @DbVerNosTable t on cedbl1.DbVerNo=t.DbVerNo where cedbl1.CustNo=@SourceCustNo and cedbl2.CustNo is null Insert dbo.CustExternalDbListIndexData (CustNo, DbVerNo, ConnectorID, ConnectorPassword, ProxyForSearch, ProxyForResult, Z3950URLPort, ConnectorURL, KeyValuePairs) Select @TargetCustNo, id1.DbVerNo, case @IncludeAuthSettings when 1 then id1.ConnectorID else null end, case @IncludeAuthSettings when 1 then id1.ConnectorPassword else null end, id1.ProxyForSearch, id1.ProxyForResult, id1.Z3950URLPort, id1.ConnectorURL, case @IncludeAuthSettings when 1 then id1.KeyValuePairs else null end From dbo.CustExternalDbListIndexData id1 left outer join dbo.CustExternalDbListIndexData id2 on id1.DbVerNo=id2.DbVerNo and id2.CustNo=@TargetCustNo Join @DbVerNosTable t on id1.DbVerNo=t.DbVerNo where id1.CustNo=@SourceCustNo and id2.CustNo is null Insert dbo.CustConnectorSearchTagsFallBack (CustNo, DbVerNo, SearchTagNo, FallBackBehavior) Select @TargetCustNo, fb1.DbVerNo, fb1.SearchTagNo, fb1.FallBackBehavior from dbo.CustConnectorSearchTagsFallBack fb1 left outer join dbo.CustConnectorSearchTagsFallBack fb2 on fb1.DbVerNo=fb2.DbVerNo and fb1.SearchTagNo=fb2.SearchTagNo and fb2.CustNo=@TargetCustNo Join @DbVerNosTable t on fb1.DbVerNo=t.DbVerNo where fb1.CustNo=@SourceCustNo and fb2.CustNo is null -- log inserts Select @Counter=MIN(num) from @AddedDbTable select @Max=max(num) from @AddedDbTable while @Counter <= @Max Begin Select @DbName=DbName from @AddedDbTable where num=@Counter set @Cust='CustID=' + @TargetCustID EXEC EAIP_LogDatabaseActivity_70 @UserID,@UserIP, @DbName, 'live','add',@Cust set @Counter=@Counter+1 End --delete @DbNamesTable -- Get DbNames for Connectors to be updated for the Target Customer so we can log this information Insert @UpdatedDbTable (DbName, DbVerNo) select DbName, dbl.DbVerNo from (Select cedbl1.DbVerNo from dbo.CustExternalDbList cedbl1 join dbo.DbListExternalSource dbles on cedbl1.DbVerNo=dbles.DbVerNo join dbo.CustExternalDbList cedbl2 on cedbl1.DbVerNo=cedbl2.DbVerNo and ISNULL(cedbl1.ConnectorProvider, dbles.ConnectorProvider)<>isnull(cedbl2.ConnectorProvider, dbles.ConnectorProvider) and cedbl2.CustNo=@TargetCustNo where cedbl1.CustNo=@SourceCustNo) a join CustExternalDbList cedbl on a.DbVerNo=cedbl.DbVerNo and cedbl.CustNo=@TargetCustNo join DbList dbl on cedbl.DbVerNo=dbl.DbVerNo -- update appropriate tables where DbVerNo does exist for @TargetCustNo but SourceType<>'I' -- Default Status to 'P' and call EAUI_UpdateCustomerConnectorStatus_102 entries are removed from dbo.ProfDatabase for @TargetCustNo Update fbt set FallBackBehavior= fbs.FallBackBehavior from dbo.CustConnectorSearchTagsFallBack fbt join dbo.CustExternalDbList cedblt on cedblt.CustNo=fbt.CustNo and cedblt.DbVerNo=fbt.DbVerNo AND cedblt.CustNo=@TargetCustNo join dbo.DbListExternalSource dbles on cedblt.DbVerNo=dbles.DbVerNo JOIN dbo.CustConnectorSearchTagsFallBack fbs ON fbs.DbVerNo = fbt.DbVerNo and fbs.SearchTagNo=fbt.SearchTagNo join dbo.CustExternalDbList cedbls on cedbls.CustNo=fbs.CustNo and cedbls.DbVerNo=fbs.DbVerNo AND cedbls.CustNo=@SourceCustNo and ISNULL(cedbls.ConnectorProvider, dbles.ConnectorProvider)<>isnull(cedblt.ConnectorProvider,dbles.ConnectorProvider) Update cedblidt set ConnectorID=case when @IncludeAuthSettings=1 then cedblids.ConnectorID else cedblidt.ConnectorID end, ConnectorPassword=case when @IncludeAuthSettings=1 then cedblids.ConnectorPassword else cedblidt.ConnectorPassword end, ProxyForSearch=cedblids.ProxyForSearch, ProxyForResult=cedblids.ProxyForResult, Z3950URLPort=cedblids.Z3950URLPort, ConnectorURL=cedblids.ConnectorURL, KeyValuePairs=case when @IncludeAuthSettings=1 then cedblids.KeyValuePairs else cedblidt.KeyValuePairs end from dbo.CustExternalDbListIndexData cedblidt join dbo.CustExternalDbList cedblt on cedblt.CustNo=cedblidt.CustNo and cedblt.DbVerNo=cedblidt.DbVerNo AND cedblt.CustNo=@TargetCustNo join dbo.DbListExternalSource dbles on cedblt.DbVerNo=dbles.DbVerNo JOIN dbo.CustExternalDbListIndexData cedblids ON cedblids.DbVerNo = cedblidt.DbVerNo join dbo.CustExternalDbList cedbls on cedbls.CustNo=cedblids.CustNo and cedbls.DbVerNo=cedblids.DbVerNo AND cedbls.CustNo=@SourceCustNo and ISNULL(cedbls.ConnectorProvider, dbles.ConnectorProvider)<>isnull(cedblt.ConnectorProvider,dbles.ConnectorProvider) Set @SourceDbVerNos = '' select @SourceDbVerNos = @SourceDbVerNos + convert(varchar(max), a.DbVerNo) + ',' from (Select cedbl1.DbVerNo from dbo.CustExternalDbList cedbl1 join dbo.DbListExternalSource dbles on cedbl1.DbVerNo=dbles.DbVerNo join dbo.CustExternalDbList cedbl2 on cedbl1.DbVerNo=cedbl2.DbVerNo and ISNULL(cedbl1.ConnectorProvider, dbles.ConnectorProvider)<>isnull(cedbl2.ConnectorProvider,dbles.ConnectorProvider) and cedbl2.CustNo=@TargetCustNo where cedbl1.CustNo=@SourceCustNo) a join CustExternalDbList cedbl on a.DbVerNo=cedbl.DbVerNo and cedbl.CustNo=@TargetCustNo if LEN(@SourceDbVerNos)>0 set @SourceDbVerNos=LEFT(@SourceDbVerNos, LEN(@SourceDbVerNos)-1) Update dbo.CustExternalDbList set ConnectorProvider=a.ConnectorProvider, Status='P', CustomerNotes=a.CustomerNotes, PrimaryProxyHostIp=case when @IncludeAuthSettings=1 then a.PrimaryProxyHostIp else cedbl.PrimaryProxyHostIp End from (Select cedbl1.DbVerNo, cedbl1.ConnectorProvider, cedbl1.CustomerNotes, cedbl1.PrimaryProxyHostIp from dbo.CustExternalDbList cedbl1 join dbo.DbListExternalSource dbles on cedbl1.DbVerNo=dbles.DbVerNo join dbo.CustExternalDbList cedbl2 on cedbl1.DbVerNo=cedbl2.DbVerNo and ISNULL(cedbl1.ConnectorProvider, dbles.ConnectorProvider)<>isnull(cedbl2.ConnectorProvider,dbles.ConnectorProvider) and cedbl2.CustNo=@TargetCustNo where cedbl1.CustNo=@SourceCustNo) a join CustExternalDbList cedbl on a.DbVerNo=cedbl.DbVerNo and cedbl.CustNo=@TargetCustNo exec EAUI_UpdateCustomerConnectorStatus_102 @UserID, @UserIP, @TargetCustID, @SourceDbVerNos, 'P' -- log updates Select @Counter=MIN(num) from @UpdatedDbTable select @Max=max(num) from @UpdatedDbTable while @Counter <= @Max Begin Select @DbName=DbName from @UpdatedDbTable where num=@Counter set @Cust='CustID=' + @TargetCustID EXEC EAIP_LogDatabaseActivity_70 @UserID,@UserIP, @DbName, 'live','update',@Cust set @Counter=@Counter+1 End -- update Status as needed if @Status='S' Begin -- Get all @DbVerNos with Status value of 'A' for @SourceCustNo and call EAUI_UpdateCustomerConnectorStatus_102 passing @UserID, @UserIP, @TargetCustID, NewDbVerNos, 'A' Set @SourceDbVerNos = '' Select @SourceDbVerNos = @SourceDbVerNos + convert(varchar(max), cedbl.DbVerNo) + ',' from dbo.CustExternalDbList cedbl JOIN @UpdatedDbTable u ON cedbl.DbVerNo=u.DbVerNo where CustNo=@SourceCustNo and Status='A' Select @SourceDbVerNos = @SourceDbVerNos + convert(varchar(max), cedbl.DbVerNo) + ',' from dbo.CustExternalDbList cedbl JOIN @AddedDbTable a ON cedbl.DbVerNo=a.DbVerNo where CustNo=@SourceCustNo and Status='A' if LEN(@SourceDbVerNos)>0 set @SourceDbVerNos=LEFT(@SourceDbVerNos, LEN(@SourceDbVerNos)-1) exec EAUI_UpdateCustomerConnectorStatus_102 @UserID, @UserIP, @TargetCustID, @SourceDbVerNos, 'A' End else Begin if @Status='A' Begin Set @SourceDbVerNos = '' Select @SourceDbVerNos = @SourceDbVerNos + convert(varchar(max), cedbl.DbVerNo) + ',' from dbo.CustExternalDbList cedbl join @UpdatedDbTable dbl on cedbl.DbVerNo=dbl.DbVerNo where cedbl.CustNo=@SourceCustNo Select @SourceDbVerNos = @SourceDbVerNos + convert(varchar(max), cedbl.DbVerNo) + ',' from dbo.CustExternalDbList cedbl join @AddedDbTable dbl on cedbl.DbVerNo=dbl.DbVerNo where cedbl.CustNo=@SourceCustNo if LEN(@SourceDbVerNos)>0 set @SourceDbVerNos=LEFT(@SourceDbVerNos, LEN(@SourceDbVerNos)-1) -- Call EAUI_UpdateCustomerConnectorStatus_102 passing @UserID, @UserIP, @TargetCustID, @DbVerNos, 'A' exec EAUI_UpdateCustomerConnectorStatus_102 @UserID, @UserIP, @TargetCustID, @SourceDbVerNos, 'A' End End -- if not including AuthSettings then generate (if needed) and get IPAddress and update PrimaryProxyHostIP if @IncludeAuthSettings=0 BEGIN IF @Mode='R' BEGIN UPDATE dbo.CustExternalDbList SET PrimaryProxyHostIp=a.PrimaryProxyHostIp FROM dbo.CustExternalDbList cedbl JOIN @AuthSettingsTable a ON cedbl.DbVerNo=a.DbVerNo WHERE cedbl.CustNo=@TargetCustNo UPDATE dbo.CustExternalDbListIndexData SET ConnectorID=a.ConnectorID, ConnectorPassword=a.ConnectorPassword, KeyValuePairs=a.KeyValuePairs FROM dbo.CustExternalDbListIndexData cedblid JOIN @AuthSettingsTable a ON cedblid.DbVerNo=a.DbVerNo WHERE cedblid.CustNo=@TargetCustNo End -- if entry does not exist in EASUPPORT.dbo.CustomerIPAddresses call EASUPPORT.dbo.EAUI_AssignCustomerIpAddresses_102 passing @TargetCustID, @PrdOffNo if not exists (Select 1 from EASUPPORT.dbo.CustomerIPAddresses where CustID=@TargetCustID) Begin Declare @GracePeriod int Select @GracePeriod=isnull(MAX(GracePeriod),0) from EASUPPORT.dbo.CustSubscription cs join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo and po.SourceType='M' join EASUPPORT.dbo.ProductPackage pp on po.PrdOffNo=pp.PrdOffNo join EASUPPORT.dbo.Product p on pp.ProductID=p.ProductID where cs.CustID=@TargetCustID Select @PrdOffNo=po.PrdOffNo from EASUPPORT.dbo.CustSubscription cs join EASUPPORT.dbo.ProductOffering po on cs.PrdOffNo=po.PrdOffNo and po.SourceType='M' where cs.CustID=@TargetCustID and dbo.fn_GetEPAccessEndDate_90(cs.EndDate, @GracePeriod, null, null)>=GetDate() exec EASUPPORT.dbo.EAUI_AssignCustomerIpAddresses_102 @TargetCustID, @PrdOffNo End -- call EASUPPORT.dbo.EAIF_GetCustPrimaryHostIp_102 passing @TargetCustID -- update PrimaryProxyHostIP for any newly added entries in CustExternalDbList for @TargetCustNo set @IP=EASUPPORT.dbo.EAIF_GetCustPrimaryHostIp_102(@TargetCustID) Update dbo.CustExternalDbList set PrimaryProxyHostIp=@IP where CustNo=@TargetCustNo and PrimaryProxyHostIp is null END Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch End
CREATE PROCEDURE [dbo].[EAIP_GetDbInterfaceLimiterList_76] (@DbVerNo int,@LimiterNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ SELECT ins.InterfaceID, ins.Version, ins.ScreenID, ll.LimiterId, dil.ControlType, dil.Show, dil.DefValue, dil.GroupNo, dil.SeqNo, dil.DefPosn, dil.ColNum FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[DbInterfaceLimiter] dil ON dil.IntfScreenNo=ins.IntfScreenNo INNER JOIN [dbo].[LimiterList] ll ON dil.LimiterNo = ll.LimiterNo WHERE dil.DbVerNo = @DbVerNo AND dil.LimiterNo = @LimiterNo END
CREATE PROCEDURE [dbo].[EAUI_LookUpAppCfgParams_79] (@AppNoStr varchar(10), @ParamType char(1), @Value nvarchar(100))AS BEGIN DECLARE @AppNoMin int DECLARE @AppNoMax int IF LEN(@AppNoStr)=0 BEGIN SELECT @AppNoMin = MIN([dbo].[ConfigApplication].[ApplicationNo])-1 FROM [dbo].[ConfigApplication] SELECT @AppNoMax = MAX([dbo].[ConfigApplication].[ApplicationNo])+1 FROM [dbo].[ConfigApplication] END ELSE BEGIN SET @AppNoMin = convert(int, @AppNoStr)-1 SET @AppNoMax = convert(int, @AppNoStr)+1 END DECLARE @ScalarParamTypeS char(1) DECLARE @ScalarParamTypeB char(1) DECLARE @ScalarParamTypeN char(1) DECLARE @XMLParamType char(1) SET @ScalarParamTypeS ='S' SET @ScalarParamTypeB ='B' SET @ScalarParamTypeN ='N' SET @XMLParamType ='X' IF @ParamType='S' or @ParamType='s' SET @XMLParamType = '' IF @ParamType='X' or @ParamType='x' BEGIN SET @ScalarParamTypeS ='' SET @ScalarParamTypeB ='' SET @ScalarParamTypeN ='' END --scalar application parameters only SELECT a.Description + '('+a.ApplicationID+')' AS Description, ' N/A' As ServerURI, p.ParamName, p.ParamType, pv.ParamValue AS Value FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigParamList] p ON a.ApplicationNo = p.ApplicationNo INNER JOIN [dbo].[ConfigParamScalarValues] pv ON pv.TargetNo = a.ApplicationNo AND p.ParamNo=pv.ParamNo WHERE a.ApplicationNo > @AppNoMin AND a.ApplicationNo < @AppNoMax AND p.ParamType in (@ScalarParamTypeS,@ScalarParamTypeN,@ScalarParamTypeB) AND pv.ParamLevel='A' AND pv.ParamValue like N'%'+@Value+N'%' UNION ALL --scalar server parametes only SELECT a.Description + '('+a.ApplicationID+')' AS Description, s.ServerURI, p.ParamName, p.ParamType, pv.ParamValue AS Value FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigServer] s ON a.ApplicationNo = s.ApplicationNo INNER JOIN [dbo].[ConfigParamList] p ON a.ApplicationNo = p.ApplicationNo INNER JOIN [dbo].[ConfigParamScalarValues] pv ON pv.TargetNo = s.ServerNo AND p.ParamNo=pv.ParamNo WHERE a.ApplicationNo > @AppNoMin AND a.ApplicationNo < @AppNoMax AND p.ParamType in (@ScalarParamTypeS,@ScalarParamTypeN,@ScalarParamTypeB) AND pv.ParamLevel='S' AND pv.ParamValue like N'%'+@Value+N'%' UNION ALL --xml application parameters only SELECT a.Description + '('+a.ApplicationID+')' AS Description, ' N/A' As ServerURI, p.ParamName, p.ParamType, Replace(Replace(Substring(pv.ParamValue,1,8000),'<','<'),'>','>') AS Value FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigParamList] p ON a.ApplicationNo = p.ApplicationNo INNER JOIN [dbo].[ConfigParamXmlValues] pv ON pv.TargetNo = a.ApplicationNo AND p.ParamNo=pv.ParamNo WHERE a.ApplicationNo > @AppNoMin AND a.ApplicationNo < @AppNoMax AND p.ParamType =@XMLParamType AND pv.ParamLevel='A' AND pv.ParamValue like N'%'+@Value+N'%' UNION ALL --xml server parametes only SELECT a.Description + '('+a.ApplicationID+')' AS Description, s.ServerURI, p.ParamName, p.ParamType, Replace(Replace(Substring(pv.ParamValue,1,8000),'<','<'),'>','>') AS Value FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigServer] s ON a.ApplicationNo = s.ApplicationNo INNER JOIN [dbo].[ConfigParamList] p ON a.ApplicationNo = p.ApplicationNo INNER JOIN [dbo].[ConfigParamXmlValues] pv ON pv.TargetNo = s.ServerNo AND p.ParamNo=pv.ParamNo WHERE a.ApplicationNo > @AppNoMin AND a.ApplicationNo < @AppNoMax AND p.ParamType =@XMLParamType AND pv.ParamLevel='S' AND pv.ParamValue like N'%'+@Value+N'%' ORDER By Description,ServerURI,p.ParamName END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbSort(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[Hide] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[Hide] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseFeature_80](@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @FeatureNo int) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbFeature] WHERE [dbo].[DbFeature].[DbVerNo]=@DbVerNo AND [dbo].[DbFeature].[FeatureNo]=@FeatureNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @FeatureName varchar(10) SELECT @FeatureName=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Delete Features', @DbName,@DbLabel,@FeatureName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceTopics_81] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceTopic].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceTopic] ([dbo].[InterfaceTopic].[InterfaceID],[dbo].[InterfaceTopic].[Version],[dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[Image],[dbo].[InterfaceTopic].[Photo1],[dbo].[InterfaceTopic].[Photo2],[dbo].[InterfaceTopic].[Photo3],[dbo].[InterfaceTopic].[SeqNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceTopic].[TopicNo],[dbo].[InterfaceTopic].[Image],[dbo].[InterfaceTopic].[Photo1],[dbo].[InterfaceTopic].[Photo2],[dbo].[InterfaceTopic].[Photo3],[dbo].[InterfaceTopic].[SeqNo] FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceTopic].[Version] = @VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceTopicCaption] ([itc].[IntfTopicNo],[itc].[LangCode],[itc].[Caption],[itc].[MouseOverText],[itc].[PhotoAltText]) SELECT it2.IntfTopicNo,itc.LangCode,itc.Caption,itc.MouseOverText,itc.PhotoAltText FROM [dbo].[InterfaceTopic] AS it INNER JOIN [dbo].[InterfaceTopicCaption] AS itc ON it.IntfTopicNo = itc.IntfTopicNo INNER JOIN [dbo].[InterfaceTopic] AS it2 ON it.TopicNo = it2.TopicNo WHERE it.InterfaceID = @InterfaceIDFrom AND it.Version = @VersionFrom AND it2.InterfaceID = @InterfaceIDTo AND it2.Version = @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE Procedure [dbo].[EAIP_PromoteDbSubsets_103] (@OldDbVerNo int, @NewDbLabel varchar(10), @UserID varchar(20), @UserIP varchar(15)) as Begin Begin try Declare @SubsetDbVerNo int Declare @SubsetDbName varchar(10) Declare @NewPhysicalDbVerNo INT Declare @NewSubsetDbVerNo INT DECLARE @PhysicalDbName varchar(10) SELECT @PhysicalDbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@OldDbVerNo Declare SubsetDbs CURSOR local For select [dbo].[DbSubset].[SubsetDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@OldDbVerNo open SubsetDbs fetch next from SubsetDbs into @SubsetDbVerNo while (@@FETCH_STATUS = 0) Begin select @SubsetDbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@SubsetDbVerNo PRINT 'PROMOTING: ' + @SubsetDbName Exec [dbo].[EAIP_PromoteDatabase_141] @SubsetDbVerNo, @SubsetDbName, @NewDbLabel, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, @UserID, @UserIP, 1 Select @NewSubsetDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@SubsetDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel Select @NewPhysicalDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@PhysicalDbName and [dbo].[DbList].[DbLabel]=@NewDbLabel if exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo) update [dbo].[DbSubset] set [MergeSearches]=a.MergeSearches, [DBDefSearchExprType]=a.DBDefSearchExprType, [DBDefSearchExpression]=a.DBDefSearchExpression from (select [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@SubsetDbVerNo) a where [dbo].[DbSubset].[SubsetDbVerNo]=@NewSubsetDbVerNo else Insert [dbo].[DbSubset] select @NewSubsetDbVerNo, @NewPhysicalDbVerNo, [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo]=@SubsetDbVerNo fetch next from SubsetDbs into @SubsetDbVerNo End CLOSE SubsetDbs DEALLOCATE SubsetDbs end try BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAUI_GetProfileAddDatabaseList_102] (@ProfNo int) AS BEGIN DECLARE @CustType CHAR(1) DECLARE @DbLabel VARCHAR(10) DECLARE @CustNo INT DECLARE @MaxSeqNo int SELECT @MaxSeqNo=MAX ([dbo].[ProfDatabase].[SeqNo]) FROM [dbo].[ProfDatabase] Where [dbo].[ProfDatabase].[ProfNo]=@ProfNo SELECT @MaxSeqNo = ISNULL(@MaxSeqNo,0) DECLARE @WRK_DBs TABLE (Id int IDENTITY (1,1),DbVerNo INT, DisplayName NVARCHAR(115), Vendor NVARCHAR(115)) SELECT @CustType = [b].[CustType], @CustNo = [b].[CustNo], @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a INNER JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo IF (@CustType='I') INSERT INTO @WRK_DBs (DbVerNo,DisplayName,Vendor) SELECT distinct a.DbVerNo, a.DisplayName+ N' ('+a.DbName+N')' AS DisplayName, CASE WHEN a.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') -- change here ELSE ISNULL(dbex.VendorName,N'') END AS Vendor FROM [dbo].[DbTypeList] b join [dbo].[DbList] a on a.DbType=b.DbType LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=a.DbVerNo left outer join EASUPPORT.dbo.CustomerCatalogs cc on a.DbName=cc.DbName WHERE a.DbLabel= @DbLabel AND b.Category='R' AND a.DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo) and a.SourceType<>'M' ORDER BY Vendor, DisplayName ELSE IF(@CustType='P' ) INSERT INTO @WRK_DBs (DbVerNo,DisplayName,Vendor) SELECT distinct a.DbVerNo, a.DisplayName+ N' ('+a.DbName+N')' AS DisplayName, CASE WHEN a.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') -- change here ELSE ISNULL(dbex.VendorName,N'') END AS Vendor FROM [dbo].[DbTypeList] b join [dbo].[DbList] a on a.DbType=b.DbType LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=a.DbVerNo left outer join EASUPPORT.dbo.CustomerCatalogs cc on a.DbName=cc.DbName WHERE a.DbLabel= @DbLabel AND b.Category='R' AND a.DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo) ORDER BY Vendor, DisplayName SELECT DbVerNo, @MaxSeqNo + Id AS SeqNo FROM @WRK_DBs WHERE DbVerNo > 0 END
CREATE PROCEDURE [dbo].[EAUI_AddDatabasesToConfigDb_70](@UserID nvarchar(20), @UserIP varchar(20), @ServerDbMode char(1), @ApplicationNo int, @ServerNo int, @DbList varchar(8000), @DbLabel varchar(10)) AS BEGIN DECLARE @ItemTable TABLE (Item varchar(255)) INSERT INTO @ItemTable SELECT * FROM dbo.EAIF_GetItemTable_70( @DbList, ',' ) IF( @ServerDbMode='D' ) SET @DbLabel='' BEGIN TRANSACTION DELETE a FROM @ItemTable b INNER JOIN [dbo].[ConfigDb] a ON a.DbName=b.Item WHERE a.ApplicationNo=@ApplicationNo AND a.DbLabel=@DbLabel IF( @@ERROR<>0 ) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[ConfigDb]([dbo].[ConfigDb].[ApplicationNo], [dbo].[ConfigDb].[DbName], [dbo].[ConfigDb].[DbLabel], [dbo].[ConfigDb].[ServerNo]) SELECT @ApplicationNo, Item, @DbLabel, @ServerNo FROM @ItemTable IF( @@ERROR<>0 ) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION DECLARE @appID varchar(255), @srvID varchar(255) SET @appID = dbo.EAIF_GetConfigApplicationID_70(@ApplicationNo) SET @srvID = dbo.EAIF_GetConfigServerURI_70(@ServerNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Add Databases to Server', @AppID, @srvID, @DbList, @DbLabel END
CREATE PROCEDURE [dbo].[EPCS_GetProfDatabases_102]( @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10) ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo INT DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @showIntegratedSearchPanel VARCHAR (5) DECLARE @IsPrimaryDbAllowedOnIntf bit SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @IsPrimaryDbAllowedOnIntf=ISNULL ([dbo].[InterfaceVersion].[AllowPrimaryDatabases],0) FROM [dbo].[InterfaceVersion] with (nolock) WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version DECLARE @EnforceSimUsage INT DECLARE @HighlightTrialDb INT SET @EnforceSimUsage = dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'EnforceSimUsage') SET @HighlightTrialDb = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'highlightTrialDb') SET @showIntegratedSearchPanel=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'showIntegratedSearchPanel') -- If the showIntegratedSearchPanel parameter is turned off, exclude connectors (source type 'M') else select all source types -- Note: SugSubject column on profDatabase is not updated now; pass SugSubjectAdvanced value as SugSubject. This is needed for backward compatability; -- it will be removed in the next admin release (10.0) SELECT d.DbVerNo, d.DbName, d.DbLabel, CASE WHEN (ipd.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf =1) THEN '1' -- Primary database is always selected ELSE pd.SelDefault END AS SelDefault, CASE (d.EnforceSimUsage & @EnforceSimUsage) WHEN 1 THEN pd.CtrlCustID ELSE '' END AS CtrlCustID, CASE @IsPrimaryDbAllowedOnIntf WHEN 1 THEN ISNULL(ISNULL(ipd.SeqNo,pd.SeqNo), '1') ELSE ISNULL(pd.SeqNo, '1') END AS SeqNo, [pd].[StartPage], dbo.EAIF_GetInterfaceProfile_70( @CustID, @GroupID, d.InterfaceID) AS DbProfID, CASE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading') WHEN 1 THEN ISNULL(ssta.SugSubject, 0) ELSE 0 END AS SugSubject, CASE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading') WHEN 1 THEN ISNULL(sstb.SugSubject, 0) ELSE 0 END AS SugSubjectBasic, CASE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading') WHEN 1 THEN ISNULL(ssta.SugSubject, 0) ELSE 0 END AS SugSubjectAdvanced, ISNULL(d.DbCategory, 'r') AS DbCategory, CASE @HighlightTrialDb WHEN 1 THEN ISNULL(pd.Mode,'') ELSE 'S' END AS Mode, ISNULL(pdd.ProfDbResourceType,N'') AS ProfDbResourceType, ISNULL(pdd.ProfDbShortDescription,N'') AS ProfDbShortDescription, Isnull(pdd.ProfDbDisplayName, N'') as ProfDbDisplayName -- connector provider is specified at customer level , d.SourceType , dlesm.ExternalDbID , dlesi.ExternalDbID ExternalDbID_I , ISNULL(ISNULL(cedl.ConnectorProvider,dles.ConnectorProvider),'') AS ConnectorProvider , ISNULL(cedli.ConnectorID,'') AS ConnectorID , ISNULL(cedli.ConnectorPassword,'') AS ConnectorPassword , ISNULL(ISNULL(cedli.ProxyForSearch,dlesi.ProxyForSearch),0) AS ProxyForSearch , ISNULL(ISNULL(cedli.ProxyForResult,dlesi.ProxyForResult),0) AS ProxyForResult , ISNULL(cedl.PrimaryProxyHostIp,'') AS PrimaryProxyHostIp , ISNULL(cedli.Z3950URLPort,'') AS Z3950URLPort , ISNULL(cedli.KeyValuePairs,'') AS KeyValuePairs , CASE WHEN (ipd.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf =1) THEN 0 -- Primary database ELSE 1 END AS SortField1 -- Non Primary Database , CASE WHEN (ipd.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf =1) THEN 'P' -- Primary database ELSE 'R' END AS DBFlag -- Non Primary Database FROM [dbo].[ProfDatabase] pd INNER JOIN [dbo].[DbList] d ON pd.DbVerNo=d.DbVerNo INNER JOIN [dbo].[Profile] p ON p.ProfNo = pd.ProfNo INNER JOIN [dbo].[Customer] c ON c.CustID = p.CustID LEFT OUTER JOIN dbo.CustExternalDbList cedl ON cedl.DbVerNo = d.DbVerNo AND cedl.CustNo = c.CustNo LEFT OUTER JOIN dbo.CustExternalDbListIndexData cedli ON cedli.DbVerNo = cedl.DbVerNo AND cedli.CustNo = cedl.CustNo LEFT OUTER JOIN dbo.DbListExternalSource dles ON dles.DbVerNo = d.DbVerNo LEFT OUTER JOIN dbo.DbListExternalSourceMuse dlesm ON dlesm.DbVerNo = dles.DbVerNo LEFT OUTER JOIN dbo.DbListExternalSourceIndexData dlesi ON dlesi.DbVerNo = dles.DbVerNo LEFT OUTER JOIN [dbo].[ProfileDbDisplayDetails] pdd ON (pdd.ProfNo = @ProfNo AND pdd.DbVerNo = d.DbVerNo) LEFT OUTER JOIN dbo.ProfDbSugSubjTerms sstb ON (sstb.ProfNo=@ProfNo AND sstb.DbVerNo =d.DbVerNo AND sstb.ScreenID='KS') LEFT OUTER JOIN dbo.ProfDbSugSubjTerms ssta ON (ssta.ProfNo=@ProfNo AND ssta.DbVerNo =d.DbVerNo AND ssta.ScreenID='ES') LEFT OUTER JOIN dbo.InterfaceNonSearchDbs isb ON isb.InterfaceID=@InterfaceID AND isb.Version=@Version AND isb.DbVerNo=d.DbVerNo LEFT OUTER JOIN dbo.InterfacePrimaryDatabases ipd ON ipd.InterfaceID=@InterfaceID AND ipd.Version=@Version AND ipd.DbVerNo=d.DbVerNo WHERE p.ProfNo=@ProfNo AND pd.ProfNo=@ProfNo AND --pd.DbVerNo=d.DbVerNo AND pd.Enable=1 AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) AND d.SourceType <> (case when @showIntegratedSearchPanel = '0' then 'M' else '' end) AND isb.DbVerNo is null --exclude non-searchable databases on the profile (dynamed) AND d.NonSearchableDb=0 -- EHPMEBSCOADMIN-1338:Exclude non-searchable databases on the profile. ORDER BY SortField1,SeqNo -- Primary databases always show up at the top; followed by non-primary databases END
CREATE PROCEDURE [dbo].[AUTH_VerifyGroup_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN IF EXISTS (SELECT 1 from [dbo].[UserGroup] where [dbo].[UserGroup].[CustID]=@CustID and [dbo].[UserGroup].[GroupID]=@GroupID) SELECT '1' ELSE SELECT '0' END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceListSortedByName_70](@InterfaceName nvarchar(100)) AS BEGIN SELECT a.InterfaceID, a.Version, a.SiteID, a.SiteURL , b.InterfaceName FROM [dbo].[InterfaceVersion] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID=b.InterfaceID AND a.Version=b.Version WHERE b.LangCode='en' AND b.InterfaceName >= @InterfaceName AND a.InterfaceID <> 'all' ORDER BY b.InterfaceName, a.InterfaceID, a.Version END
CREATE PROCEDURE [dbo].[EAIS_SetEORemoteCollection_78] ( @EACustID varchar(10), @EOCustCode varchar(50), @EOUserName varchar(75), @EORemoteColID nvarchar(50), @UpdateStatus int ) AS BEGIN DECLARE @EOColNo int DECLARE @ColName nvarchar(100) DECLARE @ColNo int DECLARE @SharedFrom int DECLARE @AutoRecreate bit SELECT @EOColNo=[dbo].[Collection].[ColNo], @ColName=[dbo].[Collection].[ColName] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]='eonline' AND [dbo].[Collection].[ColID]=@EORemoteColID AND [dbo].[Collection].[IsDeleted] = 0 IF @EOColNo IS NULL RETURN SELECT @ColNo = [dbo].[Collection].[ColNo], @SharedFrom=[dbo].[Collection].[SharedFrom], @AutoRecreate=[dbo].[Collection].[AutoRecreate] FROM dbo.Collection WHERE [dbo].[Collection].[CustID]=@EACustID AND [dbo].[Collection].[ColID]=@EORemoteColID AND [dbo].[Collection].[IsDeleted] = 0 IF NOT EXISTS (SELECT 1 FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo]=@EOColNo) -- No Titles for the Parent Collection BEGIN IF @ColNo IS NOT NULL -- Remove the existing link BEGIN EXEC [dbo].[EAIP_DeleteCollection_70] @ColNo UPDATE [dbo].[EOCollection] SET [dbo].[EOCollection].[EORemoteColID]=NULL WHERE [dbo].[EOCollection].[EACustID]=@EACustID AND [dbo].[EOCollection].[EOCustCode]=@EOCustCode AND [dbo].[EOCollection].[EOUserName]=@EOUserName END RETURN END IF @ColNo IS NULL EXEC [dbo].[EAIPO_AddCollection_70] @EACustID,@EORemoteColID,@ColName,0,null,0,0,@ColNo OUTPUT IF @SharedFrom IS NULL OR @SharedFrom <> @EOColNo BEGIN UPDATE dbo.Collection SET [dbo].[Collection].[SharedFrom]=@EOColNo, [dbo].[Collection].[Eonline]=1, [dbo].[Collection].[Hidden]= 1 WHERE [dbo].[Collection].[ColNo]=@ColNo --SET @UpdateStatus=1 END -- Update the AutoRecreate flag , if needed IF EXISTS ( SELECT 1 FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamScalarValues] b ON a.ProfNo = b.TargetNo INNER JOIN [dbo].[CustomParamScalarValues] c ON a.ProfNo = c.TargetNo INNER JOIN [dbo].[CustomParamScalarValues] d ON a.ProfNo = d.TargetNo WHERE a.CustID = @EACustID AND b.ParamLevel = 'P' AND b.ParamNo = dbo.EAIF_GetCustomParamNumber_70('includeLinkedFullText', 'P') AND b.ParamValue = N'1' AND c.ParamLevel = 'P' AND c.ParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineCustID', 'P') AND c.ParamValue = @EOCustCode AND d.ParamLevel = 'P' AND d.ParamNo = dbo.EAIF_GetCustomParamNumber_70('eonlineUserID', 'P') AND d.ParamValue = @EOUserName ) BEGIN UPDATE dbo.Collection SET [dbo].[Collection].[AutoRecreate] = 1 WHERE [dbo].[Collection].[ColNo]=@ColNo --SET @UpdateStatus=1 END ELSE UPDATE dbo.Collection SET [dbo].[Collection].[AutoRecreate] = 0 WHERE [dbo].[Collection].[ColNo]=@ColNo IF @UpdateStatus=1 EXEC [dbo].[EAIP_RebuildLocalLimiter_70] 'system','E',@ColNo,null -- Add the Collection to EOCollection Table DECLARE @OldEORemoteColID nvarchar(50) SELECT @OldEORemoteColID = [dbo].[EOCollection].[EORemoteColID] FROM dbo.EOCollection WHERE [dbo].[EOCollection].[EACustID]=@EACustID AND [dbo].[EOCollection].[EOCustCode]=@EOCustCode AND [dbo].[EOCollection].[EOUserName]=@EOUserName IF @OldEORemoteColID IS NULL OR @OldEORemoteColID <> @EORemoteColID BEGIN UPDATE dbo.EOCollection SET [dbo].[EOCollection].[EORemoteColID]=@EORemoteColID WHERE [dbo].[EOCollection].[EACustID]=@EACustID AND [dbo].[EOCollection].[EOCustCode]=@EOCustCode AND [dbo].[EOCollection].[EOUserName]=@EOUserName END END
CREATE PROCEDURE [dbo].[EPCAS_GetLocDateRange]( @ColNo int, @TitleNo int) AS BEGIN SELECT [dbo].[LocalDate].[FromDate], [dbo].[LocalDate].[ToDate] FROM [dbo].[LocalDate] WHERE [dbo].[LocalDate].[ColNo]=@ColNo AND [dbo].[LocalDate].[TitleNo]=@TitleNo END
/* first set of procedures have to do with returning Vendor name for Catalogs. Without changes VendorName would be "Unknown Vendor" for Catalogs. With Chnages VendorName would be "EBSCO Publishing". I talked with Mike Moore and he said that we could have the Subscribers name or EBSCO Publishing. EBSCO Publishing would obviously cause less code changes. */ -- EAIF_GetDbVendorConnectorDisplayName -- called from EAUI_GetConsortiumLiveDatabaseList_70, EAUI_GetCustomerLiveDatabaseList_70, EAUI_GetLiveDatabaseList_70, and EAUI_GetLiveDatabaseListByPubliser_81 -- each called from various reports CREATE function [dbo].[EAIF_GetDbVendorConnectorDisplayName]() returns @DbVendorConnectorDisplayName table (DbVerNo int, DbName varchar(10), DisplayName nvarchar(225), DbType smallint, SortOrder nvarchar(225)) as begin declare @DefVendorNm nvarchar(50) select @DefVendorNm = [dbo].[StringValueMap].[Description] from [dbo].[StringValueMap] where [dbo].[StringValueMap].[FieldName]='DefaultVendorName' and [dbo].[StringValueMap].[FieldCode]='M' declare @DefEPVendorNm nvarchar(50) set @DefEPVendorNm = isnull((select [dbo].[StringValueMap].[Description] from dbo.StringValueMap where [dbo].[StringValueMap].[FieldName] = 'DefaultEBSCOVendorName' and [dbo].[StringValueMap].[FieldCode] = 'd'),@DefVendorNm) declare @DbVendorConnector table (DbVerNo int, DbName varchar(10), VendorName nvarchar(100), DbDisplayName nvarchar(100), DbType smallint) insert into @DbVendorConnector select DBLT.DbVerNo, DBLT.DbName, [VendorName] = case when DBLT.SourceType in ('M','L') then isnull(DBES.VendorName,@DefVendorNm) when DBLT.SourceType in ('D', 'C') then @DefEPVendorNm -- change here else @DefVendorNm end, DBLT.DisplayName, DBLT.DbType from dbo.DbList DBLT left join dbo.DbListExternalSource DBES on DBES.DbVerNo = DBLT.DbVerNo left outer join EASUPPORT.dbo.CustomerCatalogs cc left outer join [dbo].[Customer] c on cc.SubscriberID=c.CustID on dblt.DbName=cc.DbName where DBLT.DbLabel='live' group by DBLT.DbVerNo, DBLT.DbName, DBLT.DisplayName, DBES.VendorName, DBLT.DbType, DBLT.SourceType, c.CustName update @DbVendorConnector set VendorName = @DefVendorNm where len(VendorName) = 0 insert into @DbVendorConnectorDisplayName select DbVerNo, DbName, [DisplayName] = VendorName + N': ' + DbDisplayName, DbType, [SortOrder] = case when VendorName <> @DefVendorNm then VendorName + left(DbDisplayName,90) else N'zz' + VendorName + left(DbDisplayName,90) end from @DbVendorConnector return end
Create Procedure [dbo].[EAUI_GetDbListForInterfaceFeature_103](@FeatureNo smallint) as begin DECLARE @InterfaceList nvarchar(max) DECLARE @Category char Declare @AutoAdd bit SET @InterfaceList =N'' Select @AutoAdd=[dbo].[FeatureList].[AutoAddForInterfaces] from [dbo].[FeatureList] where [dbo].[FeatureList].[FeatureNo]=@FeatureNo if @AutoAdd=0 -- Get Interfaces to which given Feature is attached SELECT @InterfaceList = @InterfaceList +il.InterfaceName +N'('+il.InterfaceID+N'-'+il.Version+N')'+N'
' FROM [dbo].[InterfaceLanguage] il join [dbo].[InterfaceDbFeatures] idbf on il.InterfaceID=idbf.InterfaceID and il.Version=idbf.Version and idbf.FeatureNo=@FeatureNo WHERE il.LangCode='en' Order by il.InterfaceID, il.Version else set @InterfaceList=N'Auto-Added' -- get Interfaces to which the given Feature is NOT attached IF the Feature has AutoAddForInterfaces set to 1 --SELECT @InterfaceList = @InterfaceList +il.InterfaceName +N'('+il.InterfaceId+N'-'+il.Version+N')'+N'
' --from InterfaceLanguage il -- join FeatureList fl -- on fl.AutoAddForInterfaces=1 and FeatureNo=@FeatureNo -- left outer join InterfaceDbFeatures idbf -- on il.InterfaceID=idbf.InterfaceID and il.Version=idbf.Version and fl.FeatureNo=idbf.FeatureNo -- WHERE il.LangCode='en' and idbf.FeatureNo is null -- Order by il.InterfaceID, il.Version IF LEN(@InterfaceList)>4 and @AutoAdd=0 SET @InterfaceList = SUBSTRING(@InterfaceList,1, LEN(@InterfaceList)-4) -- get list of Databases to which given Feature is attached if exists (select 1 from [dbo].[DbFeature] where [dbo].[DbFeature].[FeatureNo]=@FeatureNo) SELECT db.DisplayName + N' ('+db.DbName+N'-'+db.DbLabel+N')' AS Db, @InterfaceList As Interfaces FROM [dbo].[DbList] db join [dbo].[DbFeature] dbf on db.DbVerNo = dbf.DbVerNo AND dbf.FeatureNo=@FeatureNo ORDER BY db.DisplayName, db.DbLabel else select '' as Db, @InterfaceList As Interfaces end
CREATE PROCEDURE [dbo].[EAUI_UpdateUserDefinedLabels_70] (@UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @UDLabel1 nvarchar(255), @UDLabel2 nvarchar(255) )AS BEGIN --DECLARE @CustName varchar(100) --SELECT @CustName=dbo.EAIF_GetCustName_70(@CustID) DECLARE @ParamNo int DECLARE @CustNo int EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Update User Defined Labels', @CustID, @UDLabel1, @UDLabel2 IF DATALENGTH(@UDLabel1)=0 EXEC [dbo].[EAIP_DeleteCustomerParamScalarValue_70] @CustID, 'udLabel1' ELSE EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID ,'udLabel1' ,@UDLabel1 IF DATALENGTH(@UDLabel2)=0 EXEC [dbo].[EAIP_DeleteCustomerParamScalarValue_70] @CustID, 'udLabel2' ELSE EXEC [dbo].[EAIP_UpdateCustomerParamScalarValue_70] @CustID ,'udLabel2' ,@UDLabel2 END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseRtacItems_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try Begin Transaction DELETE dbri FROM [dbo].[DbRTACInfo] dbri JOIN #TempDbListTable t on dbri.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbRTACInfo] SELECT t.UpperDbVerNo, Enable, Config, Translation, ILSIntegration FROM [dbo].[DbRTACInfo] dbri JOIN #TempDbListTable t ON dbri.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateGroup_80] (@UserID nvarchar(20), @UserIP varchar(30),@GroupNo int, @Caption nvarchar(255), @MouseOverText nvarchar(255), @Notes nvarchar(255), @LangCode varchar(10))AS BEGIN DECLARE @GroupID varchar(12) SELECT @GroupID=[dbo].[GroupList].[GroupID] FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupNo]=@GroupNo BEGIN TRANSACTION UPDATE [dbo].[GroupList] SET [dbo].[GroupList].[GroupNotes]=@Notes WHERE [dbo].[GroupList].[GroupNo]=@GroupNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo AND [dbo].[GroupCaption].[LangCode]=@LangCode) UPDATE [dbo].[GroupCaption] SET [dbo].[GroupCaption].[Caption]=@Caption, [dbo].[GroupCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo AND [dbo].[GroupCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[GroupCaption]([dbo].[GroupCaption].[GroupNo],[dbo].[GroupCaption].[LangCode],[dbo].[GroupCaption].[Caption],[dbo].[GroupCaption].[MouseOverText]) VALUES(@GroupNo,@LangCode,@Caption,@MouseOverText) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Groups','Update Group',@GroupID,@Caption,@MouseOverText,@Notes COMMIT TRANSACTION END
--sql content merged from file: \Functions\EAIF_GetProfGroupDbList_86.sql CREATE FUNCTION [dbo].[EAIF_GetProfGroupDbList_86](@ProfNo int,@GroupNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Ret nvarchar(max) SET @Ret = N'' SELECT @Ret= @Ret+ Case when pdb.Mode='T' then db.DisplayName + N'' + N'(Trial)' + N'' else db.DisplayName end +N', ' FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = db.DbVerNo INNER JOIN [dbo].[DbGroup] gdb ON gdb.DbVerNo=db.DbVerNo INNER JOIN [dbo].[GroupList] gl ON gl.GroupNo = gdb.GroupNo WHERE gl.GroupNo=@GroupNo AND pdb.ProfNo=@ProfNo AND (pdb.Mode is null OR pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) Order By db.DisplayName IF LEN(@Ret)>0 SET @Ret=SUBSTRING(@Ret,1,LEN(@Ret)-1) RETURN @Ret END
--Bug fix: Do not use 'States' table, as most of the data does not contain state codes, instead have the State Name. CREATE PROCEDURE [dbo].[EAUI_GetCustomerAddress_152](@CustID varchar(10)) AS BEGIN SELECT ca.CustID, ca.CompanyName, ca.Address1, ca.Address2, ca.Address3, ca.City, ISNULL(ca.State, '') AS State, ca.PostalCode, ISNULL(cy.CountryName, ISNULL(ca.CountryID,'')) AS Country FROM [dbo].[CustAddress] ca LEFT JOIN [dbo].[Country] cy ON (ca.CountryID = cy.CountryID) WHERE ca.CustID = @CustID END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceToolbar_81] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN DECLARE @ItemName varchar(50) DECLARE @Category varchar(50) DECLARE @Alignment varchar(10) DECLARE @Image varchar(255) DECLARE @SeqNo int DECLARE @Captions nvarchar(max) DECLARE @Dbs varchar(max) BEGIN TRANSACTION DELETE [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceToolbar].[Version]= @VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE C1_C CURSOR FOR SELECT [dbo].[InterfaceToolbar].[ItemName], [dbo].[InterfaceToolbar].[Category], [dbo].[InterfaceToolbar].[Alignment], [dbo].[InterfaceToolbar].[Image], [dbo].[InterfaceToolbar].[SeqNo], dbo.EAIF_InterfaceToolbarItemLangAndCaptions_77([dbo].[InterfaceToolbar].[IntfToolbarItem]) AS Captions, dbo.EAIF_InterfaceToolbarItemDbs([dbo].[InterfaceToolbar].[IntfToolbarItem]) As Dbs FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceToolbar].[Version] = @VersionFrom OPEN C1_C FETCH NEXT FROM C1_C INTO @ItemName,@Category,@Alignment,@Image,@SeqNo,@Captions, @Dbs WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAIP_CopyToolbarItem_77] @InterfaceIDTo, @VersionTo, @ItemName,@Category,@Alignment,@Image,@SeqNo,@Captions,@Dbs IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C ROLLBACK TRANSACTION RETURN END END FETCH NEXT FROM C1_C INTO @ItemName,@Category,@Alignment,@Image,@SeqNo,@Captions,@Dbs END CLOSE C1_C DEALLOCATE C1_C COMMIT TRANSACTION END
/******************************************************************/ /*** ResFlag value added to suppport exclude limiters from AutoAdd ****/ CREATE PROCEDURE [dbo].[EAIP_GetDbInterfaceLimiterListAutoAdd_76] (@DbVerNo int, @ScreenNo int, @GroupNo int) AS BEGIN -- for autoAddLimiter for the Screen is true DECLARE @Show bit SELECT @Show = [dbo].[InterfaceScreen].[LimiterShow] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo --Limiters attached to Interface or customized by interface SELECT dil.SeqNo as SeqNo, dil.LimiterNo, ll.LimiterId, lc.Caption, ISNULL(lct.ControlName, lct2.ControlName) AS ControlName, CASE WHEN dil.Show=1 THEN 'Yes'ELSE 'No'END as Show, ISNULL(dil.DefValue, dl.DefValue) AS DefValue, dl.ResFlag As ResFlag FROM [dbo].[DbInterfaceLimiter] AS dil LEFT OUTER JOIN [dbo].[LimiterControlType] AS lct ON dil.ControlType = lct.ControlType INNER JOIN [dbo].[LimiterList] AS ll ON dil.LimiterNo = ll.LimiterNo INNER JOIN [dbo].[LimiterControlType] AS lct2 ON ll.ControlType=lct2.ControlType INNER JOIN [dbo].[DbLimiter] AS dl ON dil.DbVerNo = dl.DbVerNo AND dil.LimiterNo = dl.LimiterNo INNER JOIN [dbo].[DbLimiterCaption] AS lc ON dl.DbVerNo = lc.DbVerNo AND dl.LimiterNo = lc.LimiterNo WHERE dil.DbVerNo = @DbVerNo AND dil.IntfScreenNo = @ScreenNo AND (dil.GroupNo is null OR dil.GroupNo = @GroupNo) AND lc.LangCode = 'en' UNION ALL --Limiters with Include in AuthoAdd set to true SELECT ISNULL(dil.SeqNo, dl.SeqNo) AS SeqNo, dl.LimiterNo, ll.LimiterId, lc.Caption, lct2.ControlName AS ControlName, CASE @Show WHEN 1 THEN 'Yes'ELSE 'No' END AS Show, dl.DefValue AS DefValue, 1 AS ResFlag FROM [dbo].[DbLimiter] dl LEFT JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo=dil.DbVerNo AND dl.LimiterNo=dil.LimiterNo AND dil.IntfScreenNo=@ScreenNo AND ( dil.GroupNo is null OR dil.GroupNo=@GroupNo ) INNER JOIN [dbo].[LimiterList] ll ON dl.LimiterNo=ll.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct2 ON ll.ControlType=lct2.ControlType INNER JOIN [dbo].[DbLimiterCaption] lc ON dl.DbVerNo = lc.DbVerNo AND dl.LimiterNo = lc.LimiterNo WHERE dl.DbVerNo=@DbVerNo AND dl.ResFlag = 1 AND lc.LangCode = 'en' AND dil.LimiterNo is NULL ORDER BY SeqNo END
-- Created 2012.01.06 by jjalbert for "Search Tag Fallback Support" project Create PROCEDURE [dbo].[EAUI_ModifyConnectorSearchTag_102] ( @UserID NVARCHAR(20), @UserIP varchar(15), @DbVerNo INT, @SearchTagNo INT, @NewBehavior VARCHAR(2) ) AS BEGIN DECLARE @LogString VARCHAR(255) = '' DECLARE @TagName VARCHAR(2) = '' DECLARE @DbName VARCHAR(20) = ''; DECLARE @BaseBehavior VARCHAR(2) DECLARE @CurrentBehavior VARCHAR(2) = '**' SELECT @BaseBehavior=[dbo].[SearchTagFallbackDefaults].[FallBackBehavior] FROM [dbo].[SearchTagFallbackDefaults] WHERE [dbo].[SearchTagFallbackDefaults].[SearchTagNo] = @SearchTagNo SELECT @CurrentBehavior=ISNULL([dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior],'**') FROM [dbo].[ConnectorSearchTagsFallBack] WHERE [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] =@DbVerNo SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SET @LogString = 'Fallback Behavior for '+@TagName+' is set to: '+@NewBehavior -- default log message IF (@NewBehavior = @BaseBehavior) BEGIN DELETE FROM [dbo].[ConnectorSearchTagsFallBack] WHERE [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] =@DbVerNo SET @LogString = 'Fallback Behavior for '+@TagName+' reverts to Default: '+@NewBehavior END ELSE IF (@NewBehavior = @CurrentBehavior) BEGIN Set @LogString = ''; -- nothing done, no logging END ELSE IF (@CurrentBehavior = '**') BEGIN INSERT INTO [dbo].[ConnectorSearchTagsFallBack] ([dbo].[ConnectorSearchTagsFallBack].[SearchTagNo], [dbo].[ConnectorSearchTagsFallBack].[DbVerNo], [dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior]) VALUES (@SearchTagNo, @DbVerNo, @NewBehavior); END ELSE BEGIN UPDATE [dbo].[ConnectorSearchTagsFallBack] SET [dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior] = @NewBehavior WHERE [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] = @DbVerNo AND [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo END IF (@LogString <> '') BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, 'live','update','Connector Fallback Changes:',@logString END END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbSourceTarget(@SourceDbNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS SourceDbNo, 0 AS TargetDbNo, [dbo].[DbSourceTarget].[TargetType], [dbo].[DbSourceTarget].[SLCollID], [dbo].[DbList].[DbName] AS TargetDbName, [dbo].[DbList].[DbLabel] AS TargetDbLabel FROM [dbo].[DbSourceTarget] LEFT JOIN [dbo].[DbList] ON [dbo].[DbList].[DbVerNo] = [dbo].[DbSourceTarget].[TargetDbNo] WHERE [dbo].[DbSourceTarget].[SourceDbNo] = @SourceDbNo ORDER BY SourceDbNo, TargetDbNo, [dbo].[DbSourceTarget].[TargetType], [dbo].[DbSourceTarget].[SLCollID] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseFieldTag_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @FieldTag varchar(2) ) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Field', 'Segment:', @SegName,'Field:',@FieldTag DELETE FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldTag].[SegName]=@SegName AND [dbo].[DbFieldTag].[FieldTag]=@FieldTag END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceVersionParameters_70] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10), @CopyLimiters bit )AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceParamList] ([dbo].[InterfaceParamList].[InterfaceID], [dbo].[InterfaceParamList].[Version], [dbo].[InterfaceParamList].[ParamNo]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceParamList].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceIDTo AND [dbo].[CustomParamDefaults].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[CustomParamDefaults]([dbo].[CustomParamDefaults].[ParamNo], [dbo].[CustomParamDefaults].[InterfaceID], [dbo].[CustomParamDefaults].[Version], [dbo].[CustomParamDefaults].[MarketID], [dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue]) SELECT [dbo].[CustomParamDefaults].[ParamNo], @InterfaceIDTo, @VersionTo, [dbo].[CustomParamDefaults].[MarketID], [dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceIDFrom AND [dbo].[CustomParamDefaults].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] AS a INNER JOIN [dbo].[Profile] AS b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceIDFrom AND b.Version=@VersionFrom AND a.ParamNo NOT IN ( SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[CustomParamXmlValues] FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceIDFrom AND b.Version=@VersionFrom AND a.ParamNo NOT IN ( SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @CopyLimiters=1 BEGIN DELETE from [dbo].[LimiterDefaults] WHERE [dbo].[LimiterDefaults].[InterfaceID]=@InterfaceIDTo AND [dbo].[LimiterDefaults].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[LimiterDefaults] ([dbo].[LimiterDefaults].[LimiterNo], [dbo].[LimiterDefaults].[InterfaceID], [dbo].[LimiterDefaults].[Version], [dbo].[LimiterDefaults].[MarketID], [dbo].[LimiterDefaults].[ForceCommon], [dbo].[LimiterDefaults].[ControlDefault], [dbo].[LimiterDefaults].[BitFlag1],[dbo].[LimiterDefaults].[BitFlag2],[dbo].[LimiterDefaults].[BitFlag3],[dbo].[LimiterDefaults].[BitFlag4],[dbo].[LimiterDefaults].[BitFlag5],[dbo].[LimiterDefaults].[BitFlag6]) SELECT [dbo].[LimiterDefaults].[LimiterNo], @InterfaceIDTo, @VersionTo, [dbo].[LimiterDefaults].[MarketID], [dbo].[LimiterDefaults].[ForceCommon], [dbo].[LimiterDefaults].[ControlDefault], [dbo].[LimiterDefaults].[BitFlag1],[dbo].[LimiterDefaults].[BitFlag2],[dbo].[LimiterDefaults].[BitFlag3],[dbo].[LimiterDefaults].[BitFlag4],[dbo].[LimiterDefaults].[BitFlag5],[dbo].[LimiterDefaults].[BitFlag6] FROM [dbo].[LimiterDefaults] WHERE [dbo].[LimiterDefaults].[InterfaceID] = @InterfaceIDFrom AND [dbo].[LimiterDefaults].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
-- Merged from EAUI_AddDatabase_102 and EAUI_AddDatabase_76 CREATE PROCEDURE [dbo].[EAUI_AddDatabase_104]( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @DisplayName nvarchar(100), @DSFamilyName varchar(100), @DbGroup varchar(20), @Interface varchar(10), @DbCategory char(1), @DbType smallint, @ContentType smallint, @MultiSegment smallint, @EnforceSimUsage bit, @ShowStats bit, @ShowOnDDSConsole bit, @WebClient bit, @Z3950Client bit, @InheritFromRebuildQC bit=0, @EPXBuild bit=0, @EDABuild bit=0, @IncludeWhenAutoAdd bit=1, @SourceType char(1) = 'D', @VendorName nvarchar(100) = null, @ConnectorType nvarchar(20) = null, @Free bit = 0, @connectorProvider CHAR(1) = NULL, @notes NVARCHAR( 1000) =NULL, @bitSubsetDb bit = 0, @physicalDb varchar(10) = null, @bitMergeSearch bit = 0, @dbDefSearchExprType char(1) = null, @dbDefSearchExpression nvarchar(255) = null ) AS BEGIN --BEGIN TRY IF @Interface='' SELECT @Interface=null ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@Interface) BEGIN RAISERROR('The Interface ID (%s) does not exist', 16,-1, @Interface) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Add Database' IF (@DbLabel = 'live' OR @DbLabel = 'liveQC' OR @DbLabel = 'rebuild' OR @DbLabel = 'rebuildQC') BEGIN EXEC dbo.EAIP_AddDatabase_104 @DbName, @DbLabel, @DisplayName, @DSFamilyName, @DbGroup, @DbCategory, @DbType, @ContentType, @MultiSegment, @EnforceSimUsage, @ShowStats, @ShowOnDDSConsole, @WebClient, 0, 0, @Z3950Client, @EPXBuild, @EDABuild, @IncludeWhenAutoAdd, @SourceType, @VendorName, @ConnectorType, @Free, @connectorProvider, @notes, @Interface, @bitSubsetDb, @physicalDb, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression END ELSE BEGIN /* For custom databases we provide the option of effectively backwards promoting from rebuildqc. If that option is not selected OR there is not rebuildQC database to promote from, we just add normally*/ IF ( ( @InheritFromRebuildQC = 0 ) OR NOT EXISTS (SELECT 1 From [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='rebuildQC') ) BEGIN EXEC [dbo].[EAIP_AddDatabase_104] @DbName, @DbLabel, @DisplayName, @DSFamilyName, @DbGroup, @DbCategory, @DbType, @ContentType, @MultiSegment, @EnforceSimUsage, @ShowStats, @ShowOnDDSConsole, @WebClient, 0, 0, @Z3950Client, @EPXBuild, @EDABuild, @IncludeWhenAutoAdd, @SourceType, @VendorName, @ConnectorType, @Free, @connectorProvider, @notes, @Interface, @bitSubsetDb, @physicalDb, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression END ELSE BEGIN /* Promote the database */ IF EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel) BEGIN RAISERROR('Database %s %s already exists, insert failed.',16,-1,@DbName,@DbLabel) RETURN END ELSE BEGIN DECLARE @RebuildQCDbVerNo int SELECT @RebuildQCDbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='rebuildQC' EXEC [dbo].[EAIP_PromoteDatabase_131] @RebuildQCDbVerNo,@DbName, @DbLabel, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1, 1 END END END END
-- EAUI_GetProfileAddDatabaseList_70 -- called from Profiles\CustomizeServiceDatabasesForm.aspx and Profiles\AddDatabasesForm.aspx CREATE PROCEDURE [dbo].[EAUI_GetProfileAddDatabaseList_70] (@ProfNo int) AS BEGIN DECLARE @CustType CHAR(1) DECLARE @DbLabel VARCHAR(10) SELECT @CustType = [b].[CustType], @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a INNER JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo If (@CustType='I') SELECT distinct a.DbVerNo, a.DisplayName+ N' ('+a.DbName+N')' AS DisplayName, 0 Selected, 'I' AS Mode, CASE WHEN a.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') -- change here ELSE ISNULL(dbex.VendorName,N'') END AS Vendor FROM [dbo].[DbTypeList] b join [dbo].[DbList] a on a.DbType=b.DbType LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=a.DbVerNo left outer join EASUPPORT.dbo.CustomerCatalogs cc on a.DbName=cc.DbName WHERE a.DbLabel= @DbLabel AND b.Category='R' AND a.DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo) and a.SourceType<>'M' ORDER BY Vendor, DisplayName Else IF(@CustType='P' ) SELECT distinct a.DbVerNo, a.DisplayName+ N' ('+a.DbName+N')' AS DisplayName, 0 Selected, 'I' AS Mode, CASE WHEN a.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') -- change here ELSE ISNULL(dbex.VendorName,N'') END AS Vendor FROM [dbo].[DbTypeList] b join [dbo].[DbList] a on a.DbType=b.DbType LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=a.DbVerNo left outer join EASUPPORT.dbo.CustomerCatalogs cc on a.DbName=cc.DbName WHERE a.DbLabel= @DbLabel AND b.Category='R' AND a.DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo) ORDER BY Vendor, DisplayName ELSE SELECT distinct a.DbVerNo, b.DisplayName+ N' ('+b.DbName+N')' AS DisplayName, 0 AS Selected, a.Mode, CASE WHEN b.SourceType in ('D', 'C') THEN ISNULL(svm.Description,N'') -- change here ELSE ISNULL(dbex.VendorName,N'') END AS Vendor FROM [dbo].[ProfDatabase] a join [dbo].[DbList] b on a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[DbListExternalSource] dbex ON dbex.DbVerNo=b.DbVerNo LEFT OUTER JOIN [dbo].[StringValueMap] svm ON ([svm].[FieldName] = 'DefaultEBSCOVendorName' AND [svm].[FieldCode] = 'D') left outer join EASUPPORT.dbo.CustomerCatalogs cc on b.DbName=cc.DbName left outer join [dbo].[Customer] c on cc.SubscriberID=c.CustID WHERE a.ProfNo = @ProfNo AND a.Enable = 0 AND (a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) ORDER BY Vendor, DisplayName END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseThesaurus_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20), @ThesNumber int, @ThesFile varchar(255), @UserControlled bit, @StoreKWIC bit) AS BEGIN DECLARE @ThesNumberAsText varchar(30) SELECT @ThesNumberAsText=CONVERT(varchar,@ThesNumber) IF EXISTS(SELECT 1 FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName AND [dbo].[DbThesaurus].[Volume] = @Volume AND [dbo].[DbThesaurus].[ThesNumber] = @ThesNumber) BEGIN RAISERROR('The thesaurus %s already exists for this database. Insert failed',16,-1,@ThesNumberAsText) RETURN END /* LOGGING */ EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Thesaurus', 'Segment:', @SegName,'Volume:',@Volume,'Thesaurus:',@ThesNumberAsText INSERT INTO [dbo].[DbThesaurus] ([dbo].[DbThesaurus].[DbVerNo], [dbo].[DbThesaurus].[SegName], [dbo].[DbThesaurus].[Volume], [dbo].[DbThesaurus].[ThesNumber], [dbo].[DbThesaurus].[ThesFile], [dbo].[DbThesaurus].[UserControlled], [dbo].[DbThesaurus].[StoreKWIC]) VALUES (@DbVerNo, @SegName, @Volume, @ThesNumber, @ThesFile, @UserControlled, @StoreKWIC) IF (@@ERROR <> 0) BEGIN RAISERROR('Error adding thesaurus %s to database %s %s. Insert failed.',16,-1,@ThesNumber,@DbName,@DbLabel) RETURN END END
--sql content merged from file: \StoredProcedures\EPCS_GetProfDatabases_70.sql CREATE PROCEDURE [dbo].[EPCS_GetProfDatabases_70]( @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10) ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo INT DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @showIntegratedSearchPanel VARCHAR (5) SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo DECLARE @EnforceSimUsage INT DECLARE @HighlightTrialDb INT SET @EnforceSimUsage = dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'EnforceSimUsage') SET @HighlightTrialDb = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'highlightTrialDb') SET @showIntegratedSearchPanel=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'showIntegratedSearchPanel') -- If the showIntegratedSearchPanel parameter is turned off, exclude connectors (source type 'M') else select all source types -- Note: SugSubject column on profDatabase is not updated now; pass SugSubjectAdvanced value as SugSubject. This is needed for backward compatability; -- it will be removed in the next admin release (10.0) SELECT d.DbVerNo, d.DbName, d.DbLabel, pd.SelDefault, CASE (d.EnforceSimUsage & @EnforceSimUsage) WHEN 1 THEN pd.CtrlCustID ELSE '' END AS CtrlCustID, ISNULL(pd.SeqNo,'1') AS SeqNo, [pd].[StartPage], dbo.EAIF_GetInterfaceProfile_70( @CustID, @GroupID, d.InterfaceID) AS DbProfID, CASE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading') WHEN 1 THEN ISNULL(ssta.SugSubject, 0) ELSE 0 END AS SugSubject, CASE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading') WHEN 1 THEN ISNULL(sstb.SugSubject, 0) ELSE 0 END AS SugSubjectBasic, CASE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading') WHEN 1 THEN ISNULL(ssta.SugSubject, 0) ELSE 0 END AS SugSubjectAdvanced, ISNULL(d.DbCategory, 'r') AS DbCategory, CASE @HighlightTrialDb WHEN 1 THEN ISNULL(pd.Mode,'') ELSE 'S' END AS Mode, ISNULL(pdd.ProfDbResourceType,N'') AS ProfDbResourceType, ISNULL([pdd].[ProfDbShortDescription],N'') AS ProfDbShortDescription, Isnull(pdd.ProfDbDisplayName, N'') as ProfDbDisplayName FROM [dbo].[ProfDatabase] pd INNER JOIN [dbo].[DbList] d ON pd.DbVerNo=d.DbVerNo LEFT OUTER JOIN [dbo].[ProfileDbDisplayDetails] pdd ON (pdd.ProfNo = @ProfNo AND pdd.DbVerNo = d.DbVerNo) LEFT OUTER JOIN dbo.ProfDbSugSubjTerms sstb ON (sstb.ProfNo=@ProfNo AND sstb.DbVerNo =d.DbVerNo AND sstb.ScreenID='KS') LEFT OUTER JOIN dbo.ProfDbSugSubjTerms ssta ON (ssta.ProfNo=@ProfNo AND ssta.DbVerNo =d.DbVerNo AND ssta.ScreenID='ES') LEFT OUTER JOIN dbo.InterfaceNonSearchDbs isb ON isb.InterfaceID=@InterfaceID AND isb.Version=@Version AND isb.DbVerNo=d.DbVerNo WHERE pd.ProfNo=@ProfNo AND pd.Enable=1 AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) AND d.SourceType <> (case when @showIntegratedSearchPanel = '0' then 'M' else '' end) AND isb.DbVerNo is null --exclude non-searchable databases on the profile (dynamed) ORDER BY SeqNo END
-- Returns all databases irrespective of type -- Created for use by google scholar service operation CREATE PROCEDURE [dbo].[BLL_GetAllDatabases_100](@CustID varchar(10)) AS BEGIN DECLARE @CurrentDate DATETIME; SELECT @CurrentDate = GETDATE(); SELECT DISTINCT db.DbName, db.DisplayName FROM [dbo].[ProfDatabase] WITH (NOLOCK) INNER JOIN [dbo].[Profile] WITH (NOLOCK) ON [dbo].[Profile].[ProfNo] = [dbo].[ProfDatabase].[ProfNo] INNER JOIN [dbo].[DbList] db WITH (NOLOCK) ON [dbo].[ProfDatabase].[DbVerNo] = db.DbVerNo WHERE [dbo].[Profile].[CustID] = @CustID --AND Profile.GroupID = @GroupID AND [dbo].[ProfDatabase].[Enable] = 1 AND ([dbo].[ProfDatabase].[AccessEndDate] is null OR DateDiff(hh, [dbo].[ProfDatabase].[AccessEndDate], @CurrentDate)< 0 ) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceListSortedByName_Paged_203] @InterfaceName nvarchar(100) = '', @PageIndex INT = 0, @PageSize INT = 10 AS BEGIN SET @InterfaceName = ISNULL(@InterfaceName, ''); SELECT InterfaceID, Version, SiteID, SiteURL, InterfaceName FROM ( SELECT ROW_NUMBER() OVER(ORDER BY il.InterfaceName, iv.InterfaceID, iv.Version) AS RowNum ,iv.InterfaceID ,iv.Version ,iv.SiteID ,iv.SiteURL ,il.InterfaceName FROM [dbo].[InterfaceVersion] iv INNER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version = il.Version WHERE il.LangCode='en' AND iv.InterfaceID <> 'all' AND il.InterfaceName >= @InterfaceName ) AS i WHERE RowNum BETWEEN @PageIndex * @PageSize + 1 AND (@PageIndex + 1) * @PageSize END
CREATE Procedure [dbo].[EAIS_UpdateConnectors_100] @Mode char(1), @SourceType char(1), @ExternalDbID varchar(255), @DbName varchar(10), @DisplayName nvarchar(100), @ConnectorType nvarchar(20) = null, @DatabaseContentCaption nvarchar(70) = null, @Description nvarchar(1500) = null, @VendorName nvarchar(100) = null as Begin Declare @DbVerNo int Declare @ParamNo int Declare @Desc nvarchar(max) Declare @OldDisplayName nvarchar(100) Declare @OldSourceType char(1) Declare @OldVendorName nvarchar(100) Declare @OldConnectorType nvarchar(20) Declare @OldDatabaseContentCaption nvarchar(70) Declare @OldDescription nvarchar(1500) Declare @Added bit Declare @Changed bit Set @Changed=0 Set @Added=0 Begin try Begin transaction if not exists (select 1 from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName) Begin Insert [dbo].[DbList] ([dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel], [dbo].[DbList].[DisplayName], [dbo].[DbList].[DSFamilyName], [dbo].[DbList].[DbGroup], [dbo].[DbList].[DbType], [dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate], [dbo].[DbList].[MultiSegment], [dbo].[DbList].[EnforceSimUsage], [dbo].[DbList].[ShowStats], [dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient], [dbo].[DbList].[WinClient], [dbo].[DbList].[CharClient], [dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild], [dbo].[DbList].[EDABuild], [dbo].[DbList].[IncludeWhenAutoAdd], [dbo].[DbList].[SourceType]) Values (@DbName, 'live', @DisplayName, '', null, 1, 1, GetDate(), 2, 0, 1, 0, 1, 0, 0, 0, null, null, 0, 0, 0, Upper(@SourceType)) Select @DbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName Insert [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[ExternalDbID], [dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType]) Values (@ExternalDbID, @DbVerNo, @VendorName, @ConnectorType) Set @Added=1 End Else Begin IF (CharIndex('r',@Mode) > 0) Begin Select @DbVerNo=[dbo].[DbList].[DbVerNo], @OldDisplayName=[dbo].[DbList].[DisplayName], @OldSourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName if @DisplayName<>@OldDisplayName or @SourceType<>@OldSourceType Begin Update [dbo].[DbList] Set [dbo].[DbList].[DisplayName]=@Displayname, [dbo].[DbList].[SourceType]=@SourceType where [dbo].[DbList].[DbName]=@DbName Set @Changed=1 End Select @OldVendorName=[dbo].[DbListExternalSource].[VendorName], @OldConnectorType=[dbo].[DbListExternalSource].[ConnectorType] from [dbo].[DbListExternalSource] where [dbo].[DbListExternalSource].[DbVerNo]=@DbVerNo if @VendorName<>@OldVendorName or @ConnectorType<>@OldConnectorType Begin Update [dbo].[DbListExternalSource] set [dbo].[DbListExternalSource].[VendorName]=@VendorName, [dbo].[DbListExternalSource].[ConnectorType]=@ConnectorType where [dbo].[DbListExternalSource].[DbVerNo]=@DbVerNo Set @Changed=1 End End End Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='ResourceType' if not exists (Select 1 from [dbo].[DbParamScalarValues] where [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo) and @DatabaseContentCaption is not null Begin Insert [dbo].[DbParamScalarValues] ([dbo].[DbParamScalarValues].[DbVerNo], [dbo].[DbParamScalarValues].[ParamNo], [dbo].[DbParamScalarValues].[ParamValue]) Values (@DbVerNo, @ParamNo, @DatabaseContentCaption) IF (CharIndex('r',@Mode) > 0 and @Added=0) Set @Changed=1 End Else IF (CharIndex('r',@Mode) > 0) Begin select @OldDatabaseContentCaption=[dbo].[DbParamScalarValues].[ParamValue] from [dbo].[DbParamScalarValues] where [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo if @DatabaseContentCaption<>@OldDatabaseContentCaption Begin Update [dbo].[DbParamScalarValues] set [dbo].[DbParamScalarValues].[ParamValue]=@DatabaseContentCaption where [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo Set @Changed=1 End End Select @paramNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription' if @Description is null set @Desc='' else set @Desc=' ' if not exists (Select 1 from [dbo].[DbParamXmlValues] where [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ItemName]='') and @Description is not null Begin Insert [dbo].[DbParamXmlValues] ([dbo].[DbParamXmlValues].[DbVerNo], [dbo].[DbParamXmlValues].[ParamNo], [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[ParamValue], [dbo].[DbParamXmlValues].[SeqNo]) Values (@DbVerNo, @ParamNo, '', @Desc, null) IF (CharIndex('r',@Mode) > 0 and @Added=0) Set @Changed=1 End Else IF (CharIndex('r',@Mode) > 0) Begin Select @OldDescription=[dbo].[DbParamXmlValues].[ParamValue] from [dbo].[DbParamXmlValues] where [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ItemName]='' if @Desc<>@OldDescription Begin Update [dbo].[DbParamXmlValues] set [dbo].[DbParamXmlValues].[ParamValue]=@Desc where [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ItemName]='' Set @Changed=1 End End If @Changed=1 exec EASUPPORT.dbo.EAUI_NotifyDatabase_70 'EPAdminImportServer', '', @DbName, 'live' Commit transaction select @Added End Try Begin catch rollback transaction select 0 End Catch End ' + @Description + '
CREATE PROCEDURE [dbo].[EPCAS_GetMasterDbList]( @ShortDBName varchar(10), @Label varchar(20) ) AS BEGIN DECLARE @DbVerNo int, @DbType int, @LastUpdateDate datetime SELECT @DbVerNo=[dbo].[DbList].[DbVerNo], @DbType=[dbo].[DbList].[DbType], @LastUpdateDate=[dbo].[DbList].[LastUpdateDate] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@Label DECLARE @ISField varchar(25), @ANField varchar(25), @DTField varchar(25) SET @ISField = dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'dbISSNField') IF (LTRIM(@ISField)='') SET @ISField=0 SET @ANField = dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'dbANField') IF (LTRIM(@ANField)='') SET @ANField=0 SET @DTField = dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'dbPubDateField') IF (LTRIM(@DTField)='') SET @DTField=0 SELECT @DbVerNo as 'MasterDbList', @DbVerNo as 'DbVersion', @DbType as 'DatabaseType', @LastUpdateDate as 'LastModified', @ISField as 'ISField', @ANField as 'ANField', @DTField as 'DTField' END
Create Function [dbo].[EAIF_GetDisciplinesTable_161] ( @DisciplinesCodeList NVarChar(Max), @DefaultList NVarChar(Max), @ShowList NVarChar(Max), @Sep char(1) ) RETURNS @DisciplinesTable TABLE (DisciplineCode VarChar(Max), SelDefault Bit, Show Bit) AS BEGIN DECLARE @DisciplineCodeDotPos Int, @DisciplineCode NVarChar(255), @SelDefaultDotPos Int, @SelDefault NVarChar(255), @ShowDotPos Int, @Show NVarChar(255) Select @DisciplineCodeDotPos = CharIndex(@Sep, @DisciplinesCodeList); Select @SelDefaultDotPos = CharIndex(@Sep, @DefaultList); Select @ShowDotPos = CharIndex(@Sep, @ShowList); WHILE ( (@DisciplineCodeDotPos <> 0 And @DisciplineCodeDotPos Is Not Null) AND (@SelDefaultDotPos <> 0 And @SelDefaultDotPos Is Not Null) And (@ShowDotPos <> 0 And @ShowDotPos Is Not Null) ) BEGIN Select @DisciplineCode = Left(@DisciplinesCodeList, @DisciplineCodeDotPos-1); Select @SelDefault = Left(@DefaultList, @SelDefaultDotPos - 1); Select @Show = Left(@ShowList, @ShowDotPos - 1); Insert Into @DisciplinesTable Values(@DisciplineCode, @SelDefault, @Show); Select @DisciplinesCodeList = SubString(@DisciplinesCodeList, @DisciplineCodeDotPos + 1,Len(@DisciplinesCodeList)- @DisciplineCodeDotPos); Select @DisciplineCodeDotPos = CharIndex(@Sep, @DisciplinesCodeList); Select @DefaultList=SubString(@DefaultList, @SelDefaultDotPos + 1,Len(@DefaultList)- @SelDefaultDotPos); Select @SelDefaultDotPos=CharIndex(@Sep, @DefaultList); Select @ShowList = SubString(@ShowList, @ShowDotPos + 1,Len(@ShowList)- @ShowDotPos); Select @ShowDotPos = CharIndex(@Sep, @ShowList); END IF @DisciplineCodeDotPos <> 0 SELECT @DisciplineCode = Left(@DisciplinesCodeList, @DisciplineCodeDotPos - 1); ELSE SELECT @DisciplineCode = @DisciplinesCodeList IF @SelDefaultDotPos <> 0 SELECT @SelDefault = Left(@DefaultList, @SelDefaultDotPos - 1); ELSE SELECT @SelDefault = @DefaultList; IF @ShowDotPos <> 0 SELECT @Show = Left(@ShowList, @ShowDotPos - 1); ELSE SELECT @Show = @ShowList; Insert Into @DisciplinesTable Values(@DisciplineCode, @SelDefault, @Show); Return END
CREATE Procedure [dbo].[EAUI_GetDbParamDetails_104] (@ParamNo int) AS BEGIN Declare @SeqNo int Declare @PrefParamName varchar(100) Declare @Max int Declare @SourceType varchar(10) Declare @Item char(1) Select @SeqNo=[dbo].[DbParamEditDetail].[SeqNo] from [dbo].[DbParamEditDetail] where [dbo].[DbParamEditDetail].[ParamNo]=@ParamNo Select @SourceType=[dbo].[DbParamList].[ParamSourceType] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamNo]=@ParamNo Declare @Table Table (ParamName varchar(100), SeqNo int) Declare ItemCursor Cursor for select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@SourceType,';') open ItemCursor fetch next from ItemCursor into @Item While @@FETCH_STATUS = 0 Begin Insert @Table Select [dbpl].[ParamName], [dbped].[SeqNo] from [dbo].[DbParamEditDetail] dbped join [dbo].[DbParamList] dbpl on dbped.ParamNo=dbpl.ParamNo where [dbpl].[ParamSourceType] like '%' + @Item + '%' and [dbpl].[ParamName] != 'ResourceType' order by [dbped].[SeqNo] desc fetch next from ItemCursor into @Item End CLOSE ItemCursor DEALLOCATE ItemCursor select @max=max(SeqNo) from @Table Select @PrefParamName=[a].[ParamName] from (Select Top 1 ParamName from @Table where SeqNo < @SeqNo order by SeqNo desc) a if @PrefParamName is null set @PrefParamName='' SELECT a.ParamName, a.ParamType, b.PromptText, b.SeqNo, b.EditLevel, b.EditControl, b.ValueTemplate, a.ParamSourceType, c.DefValue, dbo.EAIF_CheckIfDbParamIsCustomized_96(@ParamNo) as IsDbCustomized, @PrefParamName PrevParamName, @Max MaxSeqNo, [a].[InheritFromPhysical], [a].[Notes], [a].[ParameterUsage]-- added for subset databases 10.4 FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo Where a.ParamNo=@ParamNo END
CREATE PROCEDURE [dbo].[EPCAS_GetEJSLocalHoldingInfo](@EACustID varchar(10), @EOCustCode varchar(50), @EOUserName varchar(75), @ISSN1 varchar(10), @ISSN2 varchar(10), @ISSN3 varchar(10), @ISSN4 varchar(10), @ISSN5 varchar(10), @ISSN6 varchar(10), @ISSN7 varchar(10), @ISSN8 varchar(10), @ISSN9 varchar(10), @ISSN10 varchar(10) ) AS BEGIN DECLARE @EOColID varchar(50) SELECT @EOColID=[dbo].[EOCollection].[EOColID] FROM [dbo].[EOCollection] WHERE [dbo].[EOCollection].[EACustID]=@EACustID AND [dbo].[EOCollection].[EOCustCode]=@EOCustCode AND [dbo].[EOCollection].[EOUserName]=@EOUserName EXEC [dbo].[EPCAS_GetLocalHoldingInfo] @EACustID, @EOColID, @ISSN1, @ISSN2, @ISSN3, @ISSN4, @ISSN5, @ISSN6, @ISSN7, @ISSN8, @ISSN9, @ISSN10 END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseScalarParam_100]( @OldDbVerNo int, @NewDbVerNo int, @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo int DECLARE @ParamValue nvarchar(max) SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName]=@ParamName SELECT @ParamValue =[dbo].[DbParamScalarValues].[ParamValue] FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo] = @OldDbVerNo AND [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo IF @ParamValue is null BEGIN DELETE FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@NewDbVerNo AND [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo RETURN END MERGE INTO [dbo].[DbParamScalarValues] AS Target USING (VALUES (@NewDbVerNo, @ParamNo)) AS Source (DbVerNo, ParamNo) ON Target.DbVerNo = Source.DbVerNo AND Target.ParamNo = Source.ParamNo WHEN MATCHED THEN UPDATE SET Target.ParamValue= @ParamValue WHEN NOT MATCHED BY TARGET THEN INSERT ([DbVerNo], [ParamNo], [ParamValue]) VALUES (@NewDbVerNo ,@ParamNo, @ParamValue); END
CREATE PROCEDURE [dbo].[EAUI_UpdateGroupParamScalarValue_70](@UserID nvarchar(20), @UserIP varchar(15),@CustID varchar(10), @GroupID varchar(10), @ParamNo int, @ParamValue nvarchar(4000)) AS BEGIN DECLARE @ParamName varchar(100) SELECT @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Modify Group Parameter', @CustID, @GroupID, @ParamName, @ParamValue EXEC [dbo].[EAIP_UpdateGroupParamScalarValue_70] @CustID, @GroupID, @ParamName, @ParamValue END
CREATE FUNCTION [dbo].[EAIF_GetProfGroupShortDbList_86](@ProfNo int,@GroupNo int) RETURNS varchar(8000) AS BEGIN DECLARE @Ret varchar(8000) SET @Ret = ',' SELECT @Ret= @Ret+db.DbName+',' FROM [dbo].[GroupList] gl INNER JOIN [dbo].[DbGroup] gdb ON gl.GroupNo = gdb.GroupNo INNER JOIN [dbo].[DbList] db ON gdb.DbVerNo=db.DbVerNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = db.DbVerNo WHERE gl.GroupNo=@GroupNo AND pdb.ProfNo=@ProfNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) RETURN @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerAndSystemLinksList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustCustNo int SELECT @CustCustNo = dbo.EAIF_GetCustNo_70(@CustID) DECLARE @SystemNo int SELECT @SystemNo = dbo.EAIF_GetCustNo_70('System') DECLARE @ParamCustNo int SELECT @ParamCustNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') DECLARE @ParamSystemNo int SELECT @ParamSystemNo = dbo.EAIF_GetCustomParamNumber_70('systemCustomLink','C') SELECT [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE ([dbo].[CustomParamXmlValues].[TargetNo]=@CustCustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamCustNo) OR ([dbo].[CustomParamXmlValues].[TargetNo]=@SystemNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamSystemNo) END
CREATE PROCEDURE [dbo].[EAIP_CopyMessages_70](@OldCustID varchar(10), @NewCustID varchar(10)) AS BEGIN DECLARE @MsgText nvarchar(max) DECLARE @MsgNo int DECLARE @YesNo bit DECLARE C1_M CURSOR FOR SELECT [dbo].[YesMessage].[MsgText], 1 FROM [dbo].[YesMessage] WHERE [dbo].[YesMessage].[CustID]=@OldCustID UNION SELECT [dbo].[NoMessage].[MsgText], 0 FROM [dbo].[NoMessage] WHERE [dbo].[NoMessage].[CustID]=@OldCustID FOR READ ONLY OPEN C1_M FETCH NEXT FROM C1_M INTO @MsgText, @YesNo WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN IF @YesNo=1 EXEC [dbo].[EAIPO_AddYesMessage_70] @NewCustID, @MsgText, @YesMsgNo=@MsgNo OUTPUT ELSE EXEC [dbo].[EAIPO_AddNoMessage_70] @NewCustID, @MsgText, @NoMsgNo=@MsgNo OUTPUT END FETCH NEXT FROM C1_M INTO @MsgText, @YesNo END CLOSE C1_M DEALLOCATE C1_M END
/*********************************************************************/ /*** ResFlag value added to suppport exclude limiters from AutoAdd ****/ CREATE PROCEDURE [dbo].[EAIP_GetDbInterfaceLimiterListNoAutoAdd_76] (@DbVerNo int, @ScreenNo int, @GroupNo int) AS BEGIN --AutoAddLimiter for the Screen is false SELECT dil.SeqNo, dil.LimiterNo, ll.LimiterId, lc.Caption, ISNULL(lct.ControlName, lct2.ControlName) AS ControlName, CASE WHEN dil.Show=1 THEN 'Yes'ELSE 'No'END as Show, ISNULL(dil.DefValue, dl.DefValue) AS DefValue, 1 As ResFlag FROM [dbo].[DbInterfaceLimiter] dil LEFT OUTER JOIN [dbo].[LimiterControlType] lct ON dil.ControlType=lct.ControlType INNER JOIN [dbo].[LimiterList] ll ON dil.LimiterNo=ll.LimiterNo INNER JOIN [dbo].[LimiterControlType] lct2 ON ll.ControlType=lct2.ControlType INNER JOIN [dbo].[DbLimiter] dl ON dil.DbVerNo=dl.DbVerNo AND dil.LimiterNo=dl.LimiterNo INNER JOIN [dbo].[DbLimiterCaption] lc ON dl.DbVerNo = lc.DbVerNo AND dl.LimiterNo = lc.LimiterNo WHERE dil.DbVerNo=@DbVerNo AND dil.IntfScreenNo=@ScreenNo AND (dil.GroupNo is null OR dil.GroupNo = @GroupNo ) AND lc.LangCode = 'en' ORDER BY dil.SeqNo END
-- Created 2012.01.06 by jjalbert for "Search Tag Fallback Support" project CREATE PROCEDURE [dbo].[EAUI_ModifyCustomerConnectorSearchTag_102] ( @UserID NVARCHAR(20), @UserIP varchar(15), @DbVerNo INT, @CustNo INT, @SearchTagNo INT, @NewBehavior VARCHAR(2) ) AS BEGIN DECLARE @LogString NVARCHAR(255) = '' DECLARE @TagName VARCHAR(2) = '' DECLARE @DbName VARCHAR(20) = ''; DECLARE @CustName NVARCHAR(100) = '' DECLARE @BaseBehavior VARCHAR(2) DECLARE @CurrentBehavior VARCHAR(2) = '**' SELECT @BaseBehavior=[dbo].[ConnectorSearchTagsFallBack].[FallBackBehavior] FROM [dbo].[ConnectorSearchTagsFallBack] WHERE [dbo].[ConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo and [dbo].[ConnectorSearchTagsFallBack].[DbVerNo] = @DbVerNo SELECT @CurrentBehavior=ISNULL([dbo].[CustConnectorSearchTagsFallBack].[FallBackBehavior],'**') FROM [dbo].[CustConnectorSearchTagsFallBack] WHERE [dbo].[CustConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[CustConnectorSearchTagsFallBack].[DbVerNo] =@DbVerNo AND [dbo].[CustConnectorSearchTagsFallBack].[CustNo] = @CustNo SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo SELECT @CustName = [dbo].[Customer].[CustName] from [dbo].[Customer] where [dbo].[Customer].[CustNo] = @CustNo SET @LogString = 'Fallback Behavior for search tag '+@TagName+', Customer '+@CustName+' is set to: '+@NewBehavior -- default log message IF (@NewBehavior = @BaseBehavior) BEGIN DELETE FROM [dbo].[CustConnectorSearchTagsFallBack] WHERE [dbo].[CustConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[CustConnectorSearchTagsFallBack].[DbVerNo] =@DbVerNo AND [dbo].[CustConnectorSearchTagsFallBack].[CustNo] = @CustNo SET @LogString = 'Fallback Behavior for search tag '+@TagName+', Customer '+@CustName+' reverts to Default: '+@NewBehavior END ELSE IF (@NewBehavior = @CurrentBehavior) BEGIN Set @LogString = ''; -- nothing done, no logging END ELSE IF (@CurrentBehavior = '**') BEGIN INSERT INTO [dbo].[CustConnectorSearchTagsFallBack] ([dbo].[CustConnectorSearchTagsFallBack].[SearchTagNo], [dbo].[CustConnectorSearchTagsFallBack].[DbVerNo], [dbo].[CustConnectorSearchTagsFallBack].[FallBackBehavior], [dbo].[CustConnectorSearchTagsFallBack].[CustNo] ) VALUES (@SearchTagNo, @DbVerNo, @NewBehavior, @CustNo); END ELSE BEGIN UPDATE [dbo].[CustConnectorSearchTagsFallBack] SET [dbo].[CustConnectorSearchTagsFallBack].[FallBackBehavior] = @NewBehavior WHERE [dbo].[CustConnectorSearchTagsFallBack].[DbVerNo] = @DbVerNo AND [dbo].[CustConnectorSearchTagsFallBack].[SearchTagNo] = @SearchTagNo AND [dbo].[CustConnectorSearchTagsFallBack].[CustNo] = @CustNo END IF (@LogString <> '') BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID, @UserIP, @DbName, 'live','update','Customer Connector Fallback Changes:',@logString END END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbSubset(@SubsetDbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS SubsetDbVerNo, 0 AS PhysDbVerNo, [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression], [dbo].[DbList].[DbName] AS PhysDbName, [dbo].[DbList].[DbLabel] AS PhysDbLabel FROM [dbo].[DbSubset] LEFT JOIN [dbo].[DbList] ON [dbo].[DbList].[DbVerNo] = [dbo].[DbSubset].[PhysDbVerNo] WHERE [dbo].[DbSubset].[SubsetDbVerNo] = @SubsetDbVerNo ORDER BY SubsetDbVerNo, PhysDbVerNo, [dbo].[DbSubset].[MergeSearches], [dbo].[DbSubset].[DBDefSearchExprType], [dbo].[DbSubset].[DBDefSearchExpression] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseForm_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @FormNumber int ) AS BEGIN DELETE FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@DbVerNo AND [dbo].[DbForm].[FormNumber]=@FormNumber DECLARE @FormNumberAsText varchar(10) SELECT @FormNumberAsText = convert(varchar(10),@FormNumber) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Form','Number:', @FormNumberAsText END
--sql content merged from file: \StoredProcedures\EAIP_CopyInterfaceVersionParameters_76.sql CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceVersionParameters_76] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10) )AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceParamList] ([dbo].[InterfaceParamList].[InterfaceID], [dbo].[InterfaceParamList].[Version], [dbo].[InterfaceParamList].[ParamNo], [dbo].[InterfaceParamList].[EditLevel]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceParamList].[ParamNo], [dbo].[InterfaceParamList].[EditLevel] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceParamList].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList2].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceParamList2] ([dbo].[InterfaceParamList2].[InterfaceID], [dbo].[InterfaceParamList2].[Version], [dbo].[InterfaceParamList2].[ParamNo], [dbo].[InterfaceParamList2].[EditLevel], [dbo].[InterfaceParamList2].[Mode]) SELECT @InterfaceIDTo, @VersionTo, [dbo].[InterfaceParamList2].[ParamNo], [dbo].[InterfaceParamList2].[EditLevel], [dbo].[InterfaceParamList2].[Mode] FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID]=@InterfaceIDFrom AND [dbo].[InterfaceParamList2].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceIDTo AND [dbo].[CustomParamDefaults].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[CustomParamDefaults]([dbo].[CustomParamDefaults].[ParamNo], [dbo].[CustomParamDefaults].[InterfaceID], [dbo].[CustomParamDefaults].[Version], [dbo].[CustomParamDefaults].[MarketID], [dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue],[dbo].[CustomParamDefaults].[DefValuePrefix],[dbo].[CustomParamDefaults].[NewProfileDefValue]) SELECT [dbo].[CustomParamDefaults].[ParamNo], @InterfaceIDTo, @VersionTo, [dbo].[CustomParamDefaults].[MarketID], [dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue],[dbo].[CustomParamDefaults].[DefValuePrefix],[dbo].[CustomParamDefaults].[NewProfileDefValue] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceIDFrom AND [dbo].[CustomParamDefaults].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] AS a INNER JOIN [dbo].[Profile] AS b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceIDFrom AND b.Version=@VersionFrom AND a.ParamNo NOT IN ( SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[CustomParamXmlValues] FROM [dbo].[CustomParamXmlValues] AS a INNER JOIN [dbo].[Profile] AS b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceIDFrom AND b.Version=@VersionFrom AND a.ParamNo NOT IN ( SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo AND [dbo].[InterfaceParamList].[Version]=@VersionTo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Delete [dbo].[CustomParamXmlDefaults] where [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceIDTo AND [dbo].[CustomParamXmlDefaults].[Version]=@VersionTo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Insert [dbo].[CustomParamXmlDefaults] ([dbo].[CustomParamXmlDefaults].[ParamNo], [dbo].[CustomParamXmlDefaults].[InterfaceID], [dbo].[CustomParamXmlDefaults].[Version], [dbo].[CustomParamXmlDefaults].[DefValue], [dbo].[CustomParamXmlDefaults].[AllowAddItem]) Select [dbo].[CustomParamXmlDefaults].[ParamNo], @InterfaceIDTo, @VersionTo, [dbo].[CustomParamXmlDefaults].[DefValue], [dbo].[CustomParamXmlDefaults].[AllowAddItem] From [dbo].[CustomParamXmlDefaults] Where [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceIDFrom AND [dbo].[CustomParamXmlDefaults].[Version]=@VersionFrom IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_AddDatabase_133]( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @DisplayName nvarchar(100), @DSFamilyName varchar(100), @DbGroup varchar(20), @Interface varchar(10), @DbCategory char(1), @DbType smallint, @ContentType smallint, @MultiSegment smallint, @EnforceSimUsage bit, @ShowStats bit, @ShowOnDDSConsole bit, @WebClient bit, @Z3950Client bit, @InheritFromRebuildQC bit=0, @EPXBuild bit=0, @EDABuild bit=0, @IncludeWhenAutoAdd bit=1, @SourceType char(1) = 'D', @VendorName nvarchar(100) = null, @ConnectorType nvarchar(20) = null, @Free bit = 0, @connectorProvider CHAR(1) = NULL, @notes NVARCHAR( 1000) =NULL, @bitSubsetDb bit = 0, @physicalDb varchar(10) = null, @bitMergeSearch bit = 0, @dbDefSearchExprType char(1) = null, @dbDefSearchExpression nvarchar(255) = NULL, @NonSearchableDbFlag bit=0, @ArchiveProfSettingFlag bit=0 ) AS BEGIN --BEGIN TRY IF @Interface='' SELECT @Interface=null ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[Interface] WHERE [dbo].[Interface].[InterfaceID]=@Interface) BEGIN RAISERROR('The Interface ID (%s) does not exist', 16,-1, @Interface) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,'Add Database' IF (@DbLabel = 'live' OR @DbLabel = 'liveQC' OR @DbLabel = 'rebuild' OR @DbLabel = 'rebuildQC') BEGIN EXEC dbo.EAIP_AddDatabase_133 @DbName, @DbLabel, @DisplayName, @DSFamilyName, @DbGroup, @DbCategory, @DbType, @ContentType, @MultiSegment, @EnforceSimUsage, @ShowStats, @ShowOnDDSConsole, @WebClient, 0, 0, @Z3950Client, @EPXBuild, @EDABuild, @IncludeWhenAutoAdd, @SourceType, @VendorName, @ConnectorType, @Free, @connectorProvider, @notes, @Interface, @bitSubsetDb, @physicalDb, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression, @NonSearchableDbFlag, @ArchiveProfSettingFlag END ELSE BEGIN /* For custom databases we provide the option of effectively backwards promoting from rebuildqc. If that option is not selected OR there is not rebuildQC database to promote from, we just add normally*/ IF ( ( @InheritFromRebuildQC = 0 ) OR NOT EXISTS (SELECT 1 From [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='rebuildQC') ) BEGIN EXEC [dbo].[EAIP_AddDatabase_133] @DbName, @DbLabel, @DisplayName, @DSFamilyName, @DbGroup, @DbCategory, @DbType, @ContentType, @MultiSegment, @EnforceSimUsage, @ShowStats, @ShowOnDDSConsole, @WebClient, 0, 0, @Z3950Client, @EPXBuild, @EDABuild, @IncludeWhenAutoAdd, @SourceType, @VendorName, @ConnectorType, @Free, @connectorProvider, @notes, @Interface, @bitSubsetDb, @physicalDb, @bitMergeSearch, @dbDefSearchExprType, @dbDefSearchExpression, @NonSearchableDbFlag, @ArchiveProfSettingFlag END ELSE BEGIN /* Promote the database */ IF EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel) BEGIN RAISERROR('Database %s %s already exists, insert failed.',16,-1,@DbName,@DbLabel) RETURN END ELSE BEGIN DECLARE @RebuildQCDbVerNo int SELECT @RebuildQCDbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]='rebuildQC' EXEC [dbo].[EAIP_PromoteDatabase_141] @RebuildQCDbVerNo,@DbName, @DbLabel, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1 END END END END
CREATE PROCEDURE [dbo].[EAUI_GetProfileBranding_70](@ProfNo varchar(10)) AS BEGIN DECLARE @ParamBrandingNo int SELECT @ParamBrandingNo = dbo.EAIF_GetCustomParamNumber_70('profBranding','P') SELECT [dbo].[CustomParamScalarValues].[ParamValue] From [dbo].[CustomParamScalarValues] Where [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo] =@ParamBrandingNo END
CREATE PROCEDURE [dbo].[EAUI_AddDatabaseVolume_70] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @Volume varchar(20), @EpkPath varchar(255), @LastUpdateDate datetime=null) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@DbVerNo AND [dbo].[DbVolume].[Volume]=@Volume) BEGIN RAISERROR('Volume %s already exists for this database. Insert failed.',16,-1,@Volume) RETURN END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Add Volume', '', @Volume IF @LastUpdateDate IS NULL SET @LastUpdateDate=GETDATE() INSERT INTO [dbo].[DbVolume] ( [dbo].[DbVolume].[DbVerNo], [dbo].[DbVolume].[Volume], [dbo].[DbVolume].[EpkPath], [dbo].[DbVolume].[LastUpdateDate] ) VALUES (@DbVerNo, @Volume, @EpkPath, @LastUpdateDate) IF (@@ERROR <> 0) BEGIN RAISERROR('Insert failed for volume %s and database %s, %s',16,-1,@Volume, @DbName, @DbLabel) RETURN END END
CREATE PROCEDURE [dbo].[EPCS_GetProfDbBrowseOptions_76]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @DbVerNo int ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WITH (ROWLOCK) WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT ifs.ScreenID, ol.BrowseOptionId, IsNull(pdo.Show,dio.Show) as Show,IsNull(pdo.SeqNo,dio.SeqNo) as SeqNo FROM [dbo].[InterfaceScreen] ifs INNER JOIN [dbo].[DbInterfaceBrowseOption] dio ON dio.IntfScreenNo=ifs.IntfScreenNo LEFT JOIN [dbo].[ProfDbBrowseOption] pdo ON pdo.ProfNo=@ProfNo AND pdo.DbVerNo=dio.DbVerNo AND pdo.BrowseOptionNo=dio.BrowseOptionNo AND pdo.IntfScreenNo=dio.IntfScreenNo INNER JOIN [dbo].[DbBrowseOption] do ON dio.DbVerNo=do.DbVerNo AND dio.BrowseOptionNo=do.BrowseOptionNo INNER JOIN [dbo].[BrowseOptionList] ol ON do.BrowseOptionNo=ol.BrowseOptionNo WHERE ifs.InterfaceID=@InterfaceID AND ifs.Version=@Version AND dio.DbVerNo=@DbVerNo AND IsNull(pdo.Show,dio.Show) = 1 ORDER By ifs.ScreenID,SeqNo END
CREATE PROCEDURE [dbo].[BLL_GetCommunityURL](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetConfigApplicationParamScalarValue_70('webauth', 'authGenericWebSite')+'community.aspx' END
Create Procedure [dbo].[EAUI_GetInterfaceMDbLimiter_89] (@ScreenNo int, @DbLabel varchar(10)) AS Select mdbll.LimiterNo, mdbll.LimiterID, mdbll.[Description], 1 as Attached From [dbo].[MDbLimiterList] mdbll Join [dbo].[InterfaceMDbLimiterList] imdbll on mdbll.LimiterNo=imdbll.LimiterNo where imdbll.IntfScreenNo=@ScreenNo and [mdbll].[DbLabel]=@DbLabel Union Select mdbll.LimiterNo, mdbll.LimiterID, mdbll.[Description], 0 as Attached From [dbo].[MDbLimiterList] mdbll where mdbll.AutoAdd=1 and [mdbll].[DbLabel]=@DbLabel and exists (select 1 from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo and [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=1)
-- Based on EAIS_UpdateConnectors_94 CREATE PROCEDURE [dbo].[EAIS_UpdateConnectors_102] @UserID nvarchar(20), @UserIP varchar(15), @Mode CHAR(1), @SourceType CHAR(1), @ExternalDbID_M VARCHAR(255), @ExternalDbID_I VARCHAR(255), @ConnectorProvider CHAR(1), @DisplayName NVARCHAR(100), @ShortName VARCHAR(10), @ConnectorType NVARCHAR(20) = NULL, @VendorName NVARCHAR(100) = NULL, @DatabaseContentCaption NVARCHAR(70) = NULL, @ProxyForSearch BIT, @ProxyForResult BIT, @ConnectorURL NVARCHAR(255), @KeyValuePairs NVARCHAR(355), @Description NVARCHAR(1500) = NULL, @Notes NVARCHAR(1000) = NULL, @Added bit OUTPUT --@ExternalDbID VARCHAR(255), --@DbName VARCHAR(10), --@DisplayName NVARCHAR(100), --@ConnectorType NVARCHAR(20) = null, --@DatabaseContentCaption NVARCHAR(70) = null, --@Description NVARCHAR(1500) = null, --@VendorName NVARCHAR(100) = null AS BEGIN DECLARE @DbVerNo INT DECLARE @ParamNo INT DECLARE @Desc NVARCHAR(MAX) DECLARE @OldDisplayName NVARCHAR(100) DECLARE @OldSourceType CHAR(1) DECLARE @OldVendorName NVARCHAR(100) DECLARE @OldConnectorType NVARCHAR(20) DECLARE @OldDatabaseContentCaption NVARCHAR(70) DECLARE @OldDesc NVARCHAR(MAX) --DECLARE @Added BIT DECLARE @Changed BIT DECLARE @OldConnectorProvider CHAR(1); DECLARE @OldNotes NVARCHAR(1000); DECLARE @OldExternalDbID_I VARCHAR(255); DECLARE @OldProxyForSearch BIT; DECLARE @OldProxyForResult BIT; DECLARE @OldConnectorURL NVARCHAR(255); DECLARE @OldKeyValuePairs NVARCHAR(355); SET @Changed=0 SET @Added=0 BEGIN TRY BEGIN TRANSACTION IF NOT EXISTS (SELECT 1 FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @ShortName) BEGIN -- Adding new connector record, ExternalDbID_I or ExternalDbID_M should not already exist in system IF ( @ExternalDbID_I IS NOT NULL AND @ExternalDbID_I != '' ) BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[ExternalDbID] = @ExternalDbID_I ) RAISERROR('The ConnectorSourceID I "%s" already exists.',16,-1,@ExternalDbID_I); IF EXISTS (SELECT 1 FROM [dbo].[DbListExternalSourceMuse] WHERE [dbo].[DbListExternalSourceMuse].[ExternalDbID] = @ExternalDbID_I ) RAISERROR('The ConnectorSourceID I "%s" already exists.',16,-1,@ExternalDbID_I) END IF ( @ExternalDbID_M IS NOT NULL AND @ExternalDbID_M != '' ) BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[ExternalDbID] = @ExternalDbID_I ) RAISERROR('The ConnectorSourceID M "%s" already exists.',16,-1,@ExternalDbID_M); IF EXISTS (SELECT 1 FROM [dbo].[DbListExternalSourceMuse] WHERE [dbo].[DbListExternalSourceMuse].[ExternalDbID] = @ExternalDbID_M ) RAISERROR('The ConnectorSourceID M "%s" already exists.',16,-1,@ExternalDbID_M) END INSERT [dbo].[DbList] ([dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel], [dbo].[DbList].[DisplayName], [dbo].[DbList].[DSFamilyName], [dbo].[DbList].[DbGroup], [dbo].[DbList].[DbType], [dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate], [dbo].[DbList].[MultiSegment], [dbo].[DbList].[EnforceSimUsage], [dbo].[DbList].[ShowStats], [dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient], [dbo].[DbList].[WinClient], [dbo].[DbList].[CharClient], [dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild], [dbo].[DbList].[EDABuild], [dbo].[DbList].[IncludeWhenAutoAdd], [dbo].[DbList].[SourceType]) VALUES (@ShortName, 'live', @DisplayName, '', NULL, 1, 1, GetDate(), 2, 0, 1, 0, 1, 0, 0, 0, NULL, NULL, 0, 0, 0, Upper(@SourceType)); SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @ShortName; INSERT INTO [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType], [dbo].[DbListExternalSource].[ConnectorProvider], [dbo].[DbListExternalSource].[Notes]) VALUES (@DbVerNo, @VendorName, @ConnectorType, @ConnectorProvider, @Notes); IF ( @ExternalDbID_M IS NOT NULL AND @ExternalDbID_M != '' ) BEGIN INSERT INTO [dbo].[DbListExternalSourceMuse] ([dbo].[DbListExternalSourceMuse].[DbVerNo], [dbo].[DbListExternalSourceMuse].[ExternalDbID]) VALUES (@DbVerNo, @ExternalDbID_M) END IF ( @ExternalDbID_I IS NOT NULL AND @ExternalDbID_I != '' ) BEGIN INSERT INTO [dbo].[DbListExternalSourceIndexData] ([dbo].[DbListExternalSourceIndexData].[DbVerNo], [dbo].[DbListExternalSourceIndexData].[ExternalDbID], [dbo].[DbListExternalSourceIndexData].[ProxyForSearch], [dbo].[DbListExternalSourceIndexData].[ProxyForResult], [dbo].[DbListExternalSourceIndexData].[ConnectorURL], [dbo].[DbListExternalSourceIndexData].[KeyValuePairs]) VALUES (@DbVerNo, @ExternalDbID_I, @ProxyForSearch, @ProxyForResult, @ConnectorURL, @KeyValuePairs); END SET @Added=1 END ELSE BEGIN --If record exist and append mode, report this as error IF ( CharIndex('a', @Mode) > 0 ) BEGIN --RAISERROR('Record already exists.',16,-1); SELECT 0, 'RECORD ALREADY EXISTS' ROLLBACK TRANSACTION RETURN END IF ( CharIndex('r', @Mode) > 0 ) BEGIN SELECT @DbVerNo = [dbo].[DbList].[DbVerNo], @OldDisplayName = [dbo].[DbList].[DisplayName], @OldSourceType = [dbo].[DbList].[SourceType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @ShortName IF @DisplayName <> @OldDisplayName OR @SourceType <> @OldSourceType BEGIN UPDATE [dbo].[DbList] SET [dbo].[DbList].[DisplayName] = @Displayname, [dbo].[DbList].[SourceType] = @SourceType WHERE [dbo].[DbList].[DbName] = @ShortName SET @Changed=1 END SELECT @OldVendorName = [dbo].[DbListExternalSource].[VendorName], @OldConnectorType = [dbo].[DbListExternalSource].[ConnectorType], @OldConnectorProvider = [dbo].[DbListExternalSource].[ConnectorProvider], @OldNotes = [dbo].[DbListExternalSource].[Notes] FROM [dbo].[DbListExternalSource] WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo IF @VendorName <> @OldVendorName OR @ConnectorType <> @OldConnectorType OR @ConnectorProvider <> @OldConnectorProvider OR @Notes <> @OldNotes BEGIN UPDATE [dbo].[DbListExternalSource] SET [dbo].[DbListExternalSource].[VendorName] = @VendorName, [dbo].[DbListExternalSource].[ConnectorType] = @ConnectorType, [dbo].[DbListExternalSource].[ConnectorProvider] = @ConnectorProvider, [dbo].[DbListExternalSource].[Notes] = @Notes WHERE [dbo].[DbListExternalSource].[DbVerNo] = @DbVerNo SET @Changed=1 END IF @ExternalDbID_M IS NOT NULL AND @ExternalDbID_M != '' AND NOT EXISTS (SELECT 1 FROM [dbo].[DbListExternalSourceMuse] WHERE [dbo].[DbListExternalSourceMuse].[DbVerNo] = @DbVerNo) BEGIN INSERT INTO [dbo].[DbListExternalSourceMuse] ([dbo].[DbListExternalSourceMuse].[DbVerNo],[dbo].[DbListExternalSourceMuse].[ExternalDbID]) VALUES(@DbVerNo,@ExternalDbID_M); SET @Changed=1; END -- Retrieve existing values SELECT --@OldExternalDbID_I = [ExternalDbID], @OldProxyForSearch = [dbo].[DbListExternalSourceIndexData].[ProxyForSearch] ,@OldProxyForResult = [dbo].[DbListExternalSourceIndexData].[ProxyForResult] ,@OldConnectorURL = [dbo].[DbListExternalSourceIndexData].[ConnectorURL] ,@OldKeyValuePairs = [dbo].[DbListExternalSourceIndexData].[KeyValuePairs] FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo; IF (@@ROWCOUNT > 0) --Index Data record exists, so update it BEGIN IF @ProxyForSearch <> @OldProxyForSearch OR @ProxyForResult <> @OldProxyForResult OR @ConnectorURL <> @OldConnectorURL OR @KeyValuePairs <> @OldKeyValuePairs BEGIN UPDATE [dbo].[DbListExternalSourceIndexData] SET [dbo].[DbListExternalSourceIndexData].[ExternalDbID] = @ExternalDbID_I ,[dbo].[DbListExternalSourceIndexData].[ProxyForSearch] = @ProxyForSearch ,[dbo].[DbListExternalSourceIndexData].[ProxyForResult] = @ProxyForResult ,[dbo].[DbListExternalSourceIndexData].[ConnectorURL] = @ConnectorURL ,[dbo].[DbListExternalSourceIndexData].[KeyValuePairs] = @KeyValuePairs WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo SET @Changed=1 END END ELSE BEGIN -- Record does not exist for index data IF ( @ExternalDbID_I IS NOT NULL AND @ExternalDbID_I != '' ) BEGIN -- Check if @ExternalDbID_I is provided and create new record INSERT INTO [dbo].[DbListExternalSourceIndexData] ([dbo].[DbListExternalSourceIndexData].[DbVerNo], [dbo].[DbListExternalSourceIndexData].[ExternalDbID], [dbo].[DbListExternalSourceIndexData].[ProxyForSearch], [dbo].[DbListExternalSourceIndexData].[ProxyForResult], [dbo].[DbListExternalSourceIndexData].[ConnectorURL], [dbo].[DbListExternalSourceIndexData].[KeyValuePairs]) VALUES (@DbVerNo, @ExternalDbID_I, @ProxyForSearch, @ProxyForResult, @ConnectorURL, @KeyValuePairs); SET @Changed=1; END END END END -- Retrieve existing Database Content Caption, stored as ResourceType SELECT @ParamNo = [dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] = 'ResourceType'; IF NOT EXISTS (SELECT 1 FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo] = @ParamNo) AND @DatabaseContentCaption IS NOT NULL BEGIN -- insert Database Content Caption record INSERT [dbo].[DbParamScalarValues] ([dbo].[DbParamScalarValues].[DbVerNo], [dbo].[DbParamScalarValues].[ParamNo], [dbo].[DbParamScalarValues].[ParamValue]) VALUES (@DbVerNo, @ParamNo, @DatabaseContentCaption) IF ( CharIndex('r', @Mode) > 0 AND @Added = 0 ) SET @Changed=1 END ELSE -- Record exists, update Database Content Caption record IF ( CharIndex('r', @Mode) > 0 ) BEGIN SELECT @OldDatabaseContentCaption = [dbo].[DbParamScalarValues].[ParamValue] FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo] = @ParamNo IF @DatabaseContentCaption <> @OldDatabaseContentCaption BEGIN UPDATE [dbo].[DbParamScalarValues] SET [dbo].[DbParamScalarValues].[ParamValue] = @DatabaseContentCaption WHERE [dbo].[DbParamScalarValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamScalarValues].[ParamNo] = @ParamNo SET @Changed=1 END END SELECT @paramNo = [dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] = 'shortDescription' IF @Description IS NULL SET @Desc='' ELSE SET @Desc=' ' IF NOT EXISTS (SELECT 1 FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName] = '') AND @Description IS NOT NULL BEGIN INSERT [dbo].[DbParamXmlValues] ([dbo].[DbParamXmlValues].[DbVerNo], [dbo].[DbParamXmlValues].[ParamNo], [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[ParamValue], [dbo].[DbParamXmlValues].[SeqNo]) VALUES (@DbVerNo, @ParamNo, '', @Desc, NULL) IF ( CharIndex('r', @Mode) > 0 AND @Added = 0 ) SET @Changed=1 END ELSE IF ( CharIndex('r', @Mode) > 0 ) BEGIN --SELECT @OldDesc = ParamValue --FROM DbParamXmlValues --WHERE DbVerNo = @DbVerNo -- AND ParamNo = @ParamNo -- AND ItemName = '' --Select @OldDescription=ParamValue from DbParamXmlValues where DbVerNo=@DbVerNo and ParamNo=@ParamNo and ItemName='' BEGIN TRY --retrieve english description SELECT @OldDesc = ISNULL(dbo.EAIF_GetDbShortDescription_102(@DbVerNo), '') END TRY BEGIN CATCH SELECT @OldDesc = '' END CATCH --IF @Desc <> @OldDesc -- If null then empty xml tag else check if English description does not match IF @Description IS NULL SELECT @Description = ''; IF @Description <> @OldDesc -- compare english description BEGIN UPDATE [dbo].[DbParamXmlValues] SET [dbo].[DbParamXmlValues].[ParamValue] = @Desc WHERE [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName] = '' SET @Changed=1 END END IF @Changed = 1 EXEC EASUPPORT.dbo.EAUI_NotifyDatabase_70 @UserID, @UserIP, @ShortName, 'live' COMMIT TRANSACTION IF @Added = 1 -- AND @Mode = 'a' or 'r' --OK, RECORD ADDED SELECT 1, 'RECORD ADDED' IF @Added = 0 AND @Mode = 'a' --IGNORED SELECT 0, 'RECORD ALREADY EXISTS' IF @Mode = 'r' --OK, RECORD UPDATED BEGIN IF @Changed = 1 --OK, RECORD UPDATED SELECT 1, 'RECORD UPDATED' ELSE BEGIN IF @Added = 0 AND @Changed = 0 AND @Mode = 'r' --OK, RECORD UPDATED SELECT 0 --, 'NOTHING TO UPDATE' END END END TRY BEGIN CATCH SELECT 2, ERROR_MESSAGE() IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION END CATCH END ' + @Description + '
CREATE PROCEDURE [dbo].[EPCAS_GetNewScanTerm]( @CustomerID varchar(10), @CollectionID varchar(50), @PrevTerm varchar(255), @PrefferedPostion int ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID AND [dbo].[Collection].[IsDeleted] = 0 SET ROWCOUNT @PrefferedPostion SELECT mt.Title FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo WHERE lt.ColNo=@ColNo AND UPPER(mt.Title) <= UPPER(@PrevTerm) ORDER BY UPPER(mt.Title) DESC, mt.ISSN END
CREATE FUNCTION [dbo].[EAIF_GetEnumValueTable_70]( @ItemList varchar(8000), @Sep char(1), @StartNum int=1, @Increment int=1) RETURNS @EnumItemTable TABLE (Num int, Item varchar(255)) AS BEGIN DECLARE @DotPos int DECLARE @Item varchar(255) SELECT @DotPos=charindex(@Sep,@ItemList) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item=left(@ItemList,@DotPos-1) INSERT INTO @EnumItemTable VALUES(@StartNum,@Item) SELECT @ItemList=substring(@ItemList,@DotPos+1,8000) SELECT @DotPos=charindex(@Sep,@ItemList) SELECT @StartNum = @StartNum+@Increment END INSERT INTO @EnumItemTable VALUES(@StartNum,@ItemList) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamDetails_96.sql CREATE Procedure dbo.EAUI_GetDbParamDetails_96 (@ParamNo int) AS BEGIN Declare @SeqNo int Declare @PrefParamName varchar(100) Declare @Max int Declare @SourceType varchar(10) Declare @Item char(1) Select @SeqNo=[dbo].[DbParamEditDetail].[SeqNo] from [dbo].[DbParamEditDetail] where [dbo].[DbParamEditDetail].[ParamNo]=@ParamNo Select @SourceType=[dbo].[DbParamList].[ParamSourceType] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamNo]=@ParamNo Declare @Table Table (ParamName varchar(100), SeqNo int) Declare ItemCursor Cursor for select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@SourceType,';') open ItemCursor fetch next from ItemCursor into @Item While @@FETCH_STATUS = 0 Begin Insert @Table Select [dbpl].[ParamName], [dbped].[SeqNo] from [dbo].[DbParamEditDetail] dbped join [dbo].[DbParamList] dbpl on dbped.ParamNo=dbpl.ParamNo where [dbpl].[ParamSourceType] like '%' + @Item + '%' and [dbpl].[ParamName] != 'ResourceType' order by [dbped].[SeqNo] desc fetch next from ItemCursor into @Item End CLOSE ItemCursor DEALLOCATE ItemCursor select @max=max(SeqNo) from @Table Select @PrefParamName=[a].[ParamName] from (Select Top 1 ParamName from @Table where SeqNo < @SeqNo order by SeqNo desc) a if @PrefParamName is null set @PrefParamName='' SELECT a.ParamName, a.ParamType, b.PromptText, b.SeqNo, b.EditLevel, b.EditControl, b.ValueTemplate, a.ParamSourceType, c.DefValue, dbo.EAIF_CheckIfDbParamIsCustomized_96(@ParamNo) as IsDbCustomized, @PrefParamName PrevParamName, @Max MaxSeqNo FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo Where a.ParamNo=@ParamNo END
CREATE PROCEDURE [dbo].[EPCS_GetFirstProfile_70](@CustID varchar(10), @GroupID varchar(10), @InterfaceID varchar(10), @DbName varchar(10) ) as BEGIN DECLARE @ProfID varchar(10) IF @DbName <> '' SELECT TOP 1 @ProfID=[a].[ProfID] FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo = b.ProfNo INNER JOIN [dbo].[DbList] c ON b.DbVerNo=c.DbVerNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.Enable =1 AND c.DbName=@DbName AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0) AND (@InterfaceID = '' OR a.InterfaceID = @InterfaceID) ORDER by a.SeqNo ELSE SELECT TOP 1 @ProfID=[a].[ProfID] FROM [dbo].[Profile] a WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND (@InterfaceID = '' OR a.InterfaceID = @InterfaceID) ORDER by a.SeqNo EXEC [dbo].[EPCS_GetProfInfo_70] @CustID, @GroupID, @ProfID END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseScalarParam_161](@ParamName varchar(100), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try Begin Transaction DECLARE @ParamNo int SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName]=@ParamName DELETE dbpsv FROM [dbo].[DbParamScalarValues] dbpsv JOIN #TempDbListTable t on dbpsv.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE ParamNo=@ParamNo INSERT [dbo].[DbParamScalarValues] SELECT t.UpperDbVerNo, ParamNo, ParamValue FROM [dbo].[DbParamScalarValues] dbpsv JOIN #TempDbListTable t ON dbpsv.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE ParamNo=@ParamNo Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_UpdateGroupParamScalarValues_70.sql CREATE PROCEDURE [dbo].[EAUI_UpdateGroupParamScalarValues_70](@UserID nvarchar(20), @UserIP varchar(20), @CustID varchar(10), @GroupID varchar(10),@ParamName varchar(100), @ParamValue nvarchar(4000)) AS BEGIN BEGIN TRANSACTION IF @GroupID = 'all' OR @GroupID = '' BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Authentication', 'Cookie Parameter - Update All Groups', @CustID, @ParamName, @ParamValue DECLARE C1_C CURSOR FOR select [dbo].[UserGroup].[GroupID] from [dbo].[UserGroup] where [dbo].[UserGroup].[CustID] = @CustID DECLARE @tempGroupID varchar(10) OPEN C1_C FETCH NEXT FROM C1_C INTO @tempGroupID WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN EXEC [dbo].[EAIP_UpdateGroupParamScalarValue_70] @CustID, @tempGroupID, @ParamName, @ParamValue END FETCH NEXT FROM C1_C INTO @tempGroupID END CLOSE C1_C DEALLOCATE C1_C END ELSE BEGIN EXEC [dbo].[EAIP_UpdateGroupParamScalarValue_70] @CustID, @GroupID, @ParamName, @ParamValue EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Authentication', 'Cookie Parameter - Update This Group', @CustID, @GroupID, @ParamName, @ParamValue END COMMIT TRANSACTION END
--sql content merged from file: \Functions\EAIF_GetProfileClusterCaptions_99.sql Create FUNCTION dbo.EAIF_GetProfileClusterCaptions_99(@ProfNo int, @ClustNo varchar(20)) RETURNS nvarchar(max) AS Begin DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+isnull(pcc.Caption,gcc.Caption) +' ' FROM [dbo].[GlobalClusterCaption] gcc left outer join [dbo].[ClusterList] cl on gcc.ID=cl.ClustId left outer join [dbo].[ProfileClusterCaptions] pcc on cl.ClustNo=pcc.ClustNo and gcc.LangCode=pcc.LangCode and pcc.ProfNo=@ProfNo WHERE cl.ClustNo=@ClustNo return @Captions End
CREATE PROCEDURE [dbo].[EAUI_GetCustomerBrandingList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerBranding','C') SELECT [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue], @CustID as CustID FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_CopyProfileDbGroups_104]( @SrcProfNo int, @DstProfNo int, @Operation varchar(20), @SelectedDbGroups varchar(MAX)) AS BEGIN -- get the customer type (internal customers are handled differently) DECLARE @DstCustId VARCHAR(10) SELECT @DstCustId = [dbo].[Profile].[CustID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @DstProfNo DECLARE @CustType char(1) SELECT @CustType=[dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@DstCustID DECLARE @SelectedDbGroupsTable TABLE (GroupNo int) INSERT INTO @SelectedDbGroupsTable SELECT convert(int,[dbo].[EAIF_GetItemTable_70].[Item]) FROM dbo.EAIF_GetItemTable_70(@SelectedDbGroups,',') DECLARE @GroupNo INT DECLARE @Show BIT DECLARE @SeqNo INT DECLARE @SelDefault BIT DECLARE @NewGroupNo INT DECLARE @DstGroupNo INT IF (@Operation = 'r') BEGIN -- replace -- first remove whatever is there since we're doing a replace DELETE [dbo].[ProfCustGroupDb] where [dbo].[ProfCustGroupDb].[ProfNo]=@DstProfNo DELETE [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo DELETE [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo -- check if we're only updating a selected subset of db groups IF LEN(@SelectedDbGroups) > 0 BEGIN Declare CustGroupListCursor cursor for select pcgl.GroupNo, pcgl.Show, pcgl.SeqNo, pcgl.SelDefault From [dbo].[ProfCustGroupList] pcgl INNER JOIN @SelectedDbGroupsTable sdg ON sdg.GroupNo = pcgl.GroupNo WHERE ProfNo =@SrcProfNo Open CustGroupListCursor Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault WHILE (@@FETCH_STATUS <> -1) Begin Insert [dbo].[ProfCustGroupList] ( [dbo].[ProfCustGroupList].[ProfNo], [dbo].[ProfCustGroupList].[Show], [dbo].[ProfCustGroupList].[SeqNo], [dbo].[ProfCustGroupList].[SelDefault]) Select @DstProfNo, @Show, @SeqNo, @SelDefault Set @NewGroupNo=@@Identity Insert [dbo].[ProfCustGroupCaption] ([dbo].[ProfCustGroupCaption].[ProfNo], [dbo].[ProfCustGroupCaption].[GroupNo], [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption]) Select @DstProfNo, @NewGroupNo, [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption] From [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@SrcProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo -- if the database was added to ProfCustGroupDb, make sure it's enabled in ProfDatabase --EHPMEBSCOADMIN-870 -- copy the group dbs, adding any that aren't already in ProfDatabase exec [dbo].[EAIP_CopyProfileDbGroupsDatabases_104] @srcProfNo, @DstProfNo, @NewGroupNo, @GroupNo, @CustType -- check if groups have dbs IF @CustType ='S' OR @CustType='T' OR @CustType = 'U' BEGIN -- if there aren't any databases (they must be enabled and not expired) for the group we just added, remove it if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 AND datediff(hh, pd.AccessEndDate, getdate())<0 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo end END ELSE IF @CustType ='I' OR @CustType='P' BEGIN -- if there aren't any databases (they must be enabled) for the group we just added, remove it -- mode doesn't matter for these customers if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo end END Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault End CLOSE CustGroupListCursor DEALLOCATE CustGroupListCursor END ELSE -- get all of the groups from the source profile (don't join on @SelectedDbGroupsTable) BEGIN Declare CustGroupListCursor cursor for select [pcgl].[GroupNo], [pcgl].[Show], [pcgl].[SeqNo], [pcgl].[SelDefault] From [dbo].[ProfCustGroupList] pcgl WHERE [pcgl].[ProfNo] =@SrcProfNo Open CustGroupListCursor Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault WHILE (@@FETCH_STATUS <> -1) Begin Insert [dbo].[ProfCustGroupList] ( [dbo].[ProfCustGroupList].[ProfNo], [dbo].[ProfCustGroupList].[Show], [dbo].[ProfCustGroupList].[SeqNo], [dbo].[ProfCustGroupList].[SelDefault]) Select @DstProfNo, @Show, @SeqNo, @SelDefault Set @NewGroupNo= @@IDENTITY Insert [dbo].[ProfCustGroupCaption] ([dbo].[ProfCustGroupCaption].[ProfNo], [dbo].[ProfCustGroupCaption].[GroupNo], [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption]) Select @DstProfNo, @NewGroupNo, [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption] From [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@SrcProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo -- if the database was added to ProfCustGroupDb, make sure it's enabled in ProfDatabase --EHPMEBSCOADMIN-870 -- copy the group dbs, adding any that aren't already in ProfDatabase exec [dbo].[EAIP_CopyProfileDbGroupsDatabases_104] @srcProfNo, @DstProfNo, @NewGroupNo, @GroupNo, @CustType -- check if groups have dbs IF @CustType ='S' OR @CustType='T' OR @CustType = 'U' BEGIN -- if there aren't any databases (they must be enabled and not expired) for the group we just added, remove it if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 AND datediff(hh, pd.AccessEndDate, getdate())<0 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo end END ELSE IF @CustType ='I' OR @CustType='P' BEGIN -- if there aren't any databases (they must be enabled) for the group we just added, remove it -- mode and expiration don't matter for these customers if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo end END Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault End CLOSE CustGroupListCursor DEALLOCATE CustGroupListCursor END END ELSE BEGIN -- append -- check if we're only appending a selected subset of dbgroups IF LEN(@SelectedDbGroups) > 0 BEGIN -- need the max group sequence number to set the "next" one for the appended groups DECLARE @MaxGroupSeqNo INT SET @MaxGroupSeqNo = ISNULL((select MAX([dbo].[ProfCustGroupList].[SeqNo]) from [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo] = @DstProfNo), 0) -- need a counter to help set the "appended" SeqNo DECLARE @i INT SET @i = 0 -- get all groups, we'll check for add or update later Declare CustGroupListCursor cursor for select pcgl.GroupNo, pcgl.Show, pcgl.SeqNo, pcgl.SelDefault, a.DstGroupNo as DstGroupNo From [dbo].[ProfCustGroupList] pcgl JOIN [dbo].[ProfCustGroupCaption] pcgc ON pcgl.ProfNo = pcgc.ProfNo and pcgl.GroupNo = pcgc.GroupNo JOIN @SelectedDbGroupsTable sdg ON sdg.GroupNo = pcgl.GroupNo LEFT OUTER JOIN (SELECT dst.GroupNo as DstGroupNo, dstCaption.Caption FROM [dbo].[ProfCustGroupList] dst JOIN [dbo].[ProfCustGroupCaption] dstCaption ON dst.GroupNo =dstCaption.GroupNo and dstCaption.LangCode = 'en' and dst.ProfNo = @dstProfNo ) a ON pcgc.Caption = a.Caption WHERE pcgl.ProfNo =@srcProfNo and pcgc.LangCode = 'en' --AND a.GroupNo IS NULL ORDER BY pcgl.SeqNo Open CustGroupListCursor Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault, @DstGroupNo WHILE (@@FETCH_STATUS <> -1) Begin -- do we need to add a new group? IF (@DstGroupNo IS NULL) BEGIN SET @i = @i + 1 select @i as i select @MaxGroupSeqNo + @i Insert [dbo].[ProfCustGroupList] ([dbo].[ProfCustGroupList].[ProfNo], [dbo].[ProfCustGroupList].[Show], [dbo].[ProfCustGroupList].[SeqNo], [dbo].[ProfCustGroupList].[SelDefault]) Select @DstProfNo, @Show, @MaxGroupSeqNo + @i, @SelDefault Set @NewGroupNo=@@Identity Insert [dbo].[ProfCustGroupCaption] ([dbo].[ProfCustGroupCaption].[ProfNo], [dbo].[ProfCustGroupCaption].[GroupNo], [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption]) Select @DstProfNo, @NewGroupNo, [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption] From [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@SrcProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo exec [dbo].[EAIP_CopyProfileDbGroupsDatabases_104] @srcProfNo, @DstProfNo, @NewGroupNo, @GroupNo, @CustType END ELSE BEGIN -- check if we have to update the groups databases exec [dbo].[EAIP_CopyProfileDbGroupsDatabases_104] @srcProfNo, @DstProfNo, @DstGroupNo, @GroupNo, @CustType END -- check if groups have dbs IF @CustType ='S' OR @CustType='T' OR @CustType = 'U' BEGIN -- if there aren't any databases (they must be enabled and not expired) for the group we just added, remove it if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 AND datediff(hh, pd.AccessEndDate, getdate())<0 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo SET @i = @i - 1 end END ELSE IF @CustType ='I' OR @CustType='P' BEGIN -- if there aren't any databases (they must be enabled) for the group we just added, remove it -- mode doesn't matter for these customers if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo SET @i = @i - 1 end END --make sure we didn't create a copy of a group that was already there -- match on English caption IF EXISTS (SELECT 1 FROM [dbo].[ProfCustGroupCaption] old JOIN [dbo].[ProfCustGroupCaption] new on old.Caption = new.Caption and old.LangCode = new.LangCode and new.ProfNo = @DstProfNo and new.GroupNo = @NewGroupNo where old.ProfNo = @DstProfNo and new.GroupNo <> old.GroupNo and old.LangCode = 'en') BEGIN Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo SET @i = @i - 1 END Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault, @DstGroupNo End CLOSE CustGroupListCursor DEALLOCATE CustGroupListCursor END ELSE -- get all of the dbgroups from the source profile (don't join on @SelectedDbGroupsTable) BEGIN -- need the max group sequence number to set the "next" one for the appended groups --DECLARE @MaxGroupSeqNo INT SET @MaxGroupSeqNo = ISNULL((select MAX([dbo].[ProfCustGroupList].[SeqNo]) from [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo] = @DstProfNo), 0) -- need a counter to help set the "appended" SeqNo --DECLARE @i INT SET @i = 0 -- get all groups, we'll check for add or update later Declare CustGroupListCursor cursor for select pcgl.GroupNo, pcgl.Show, pcgl.SeqNo, pcgl.SelDefault, a.DstGroupNo as DstGroupNo From [dbo].[ProfCustGroupList] pcgl JOIN [dbo].[ProfCustGroupCaption] pcgc ON pcgl.ProfNo = pcgc.ProfNo and pcgl.GroupNo = pcgc.GroupNo LEFT OUTER JOIN (SELECT dst.GroupNo as DstGroupNo, dstCaption.Caption FROM [dbo].[ProfCustGroupList] dst JOIN [dbo].[ProfCustGroupCaption] dstCaption ON dst.GroupNo =dstCaption.GroupNo and dstCaption.LangCode = 'en' and dst.ProfNo = @dstProfNo ) a ON pcgc.Caption = a.Caption WHERE pcgl.ProfNo =@srcProfNo and pcgc.LangCode = 'en' --AND a.GroupNo IS NULL ORDER BY pcgl.SeqNo Open CustGroupListCursor Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault, @DstGroupNo WHILE (@@FETCH_STATUS <> -1) Begin -- do we need to add a new group? SELECT @DstGroupNo as DESTGROUPNO IF (@DstGroupNo IS NULL) BEGIN SET @i = @i + 1 Insert [dbo].[ProfCustGroupList] ([dbo].[ProfCustGroupList].[ProfNo], [dbo].[ProfCustGroupList].[Show], [dbo].[ProfCustGroupList].[SeqNo], [dbo].[ProfCustGroupList].[SelDefault]) Select @DstProfNo, @Show, @MaxGroupSeqNo + @i, @SelDefault Set @NewGroupNo= @@IDENTITY Insert [dbo].[ProfCustGroupCaption] ([dbo].[ProfCustGroupCaption].[ProfNo], [dbo].[ProfCustGroupCaption].[GroupNo], [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption]) Select @DstProfNo, @NewGroupNo, [dbo].[ProfCustGroupCaption].[LangCode], [dbo].[ProfCustGroupCaption].[Caption] From [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@SrcProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo exec [dbo].[EAIP_CopyProfileDbGroupsDatabases_104] @srcProfNo, @DstProfNo, @NewGroupNo, @GroupNo, @CustType END ELSE BEGIN -- check if we have to update the groups databases exec [dbo].[EAIP_CopyProfileDbGroupsDatabases_104] @srcProfNo, @DstProfNo, @DstGroupNo, @GroupNo, @CustType END -- check if groups have dbs IF @CustType ='S' OR @CustType='T' OR @CustType = 'U' BEGIN -- if there aren't any databases (they must be enabled and not expired) for the group we just added, remove it if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 AND datediff(hh, pd.AccessEndDate, getdate())<0 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo SET @i = @i - 1 end END ELSE IF @CustType ='I' OR @CustType='P' BEGIN -- if there aren't any databases (they must be enabled) for the group we just added, remove it -- mode doesn't matter for these customers if not exists (Select 1 from [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] pd on pcgd.ProfNo = pd.ProfNo AND pcgd.DbVerNo = pd.DbVerNo where pcgd.ProfNo=@DstProfNo AND pcgd.GroupNo=@NewGroupNo AND pd.Enable = 1 ) Begin Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo SET @i = @i - 1 end END --make sure we didn't create a copy of a group that was already there -- match on English caption IF EXISTS (SELECT 1 FROM [dbo].[ProfCustGroupCaption] old JOIN [dbo].[ProfCustGroupCaption] new on old.Caption = new.Caption and old.LangCode = new.LangCode and new.ProfNo = @DstProfNo and new.GroupNo = @NewGroupNo where old.ProfNo = @DstProfNo and new.GroupNo <> old.GroupNo and old.LangCode = 'en') BEGIN Delete [dbo].[ProfCustGroupCaption] where [dbo].[ProfCustGroupCaption].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupCaption].[GroupNo]=@NewGroupNo Delete [dbo].[ProfCustGroupList] where [dbo].[ProfCustGroupList].[ProfNo]=@DstProfNo and [dbo].[ProfCustGroupList].[GroupNo]=@NewGroupNo SET @i = @i - 1 END Fetch Next from CustGroupListCursor into @GroupNo, @Show, @SeqNo, @SelDefault, @DstGroupNo End CLOSE CustGroupListCursor DEALLOCATE CustGroupListCursor END END END
CREATE PROCEDURE [dbo].[EAIP_GetDbInterfaceLimiterNoAutoAdd_76] (@DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterNo int) AS BEGIN DECLARE @Interface nvarchar(150) DECLARE @ScreenDescr nvarchar(255) SELECT @Interface= il.InterfaceName+'('+il.InterfaceID+')' , @ScreenDescr=ins.Description FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[InterfaceLanguage] il ON ins.InterfaceID=il.InterfaceID AND ins.Version = il.Version WHERE ins.IntfScreenNo=@ScreenNo AND il.LangCode = 'en' SELECT ll.LimiterId, @Interface As Interface, @ScreenDescr As ScreenDescr, ISNULL(ilg.Description, '') AS GroupDescr , dlc.Caption, ISNULL(dil.ControlType,ll.ControlType) AS ControlType, ll.ControlSize, dil.Show, ISNULL(dil.DefValue, dl.DefValue) As DefValue, lct.ControlTag, lct.DefaultEditControl, lct.DefaultValueTemplate, ISNULL(ld.ControlTemplate,'') AS ControlTemplate, dil.DefPosn, dil.ColNum FROM [dbo].[LimiterList] ll INNER JOIN [dbo].[DbLimiter] dl ON ll.LimiterNo = dl.LimiterNo LEFT OUTER JOIN [dbo].[DbLimiterDetail] ld ON dl.DbVerNo=ld.DbVerNo AND dl.LimiterNo = ld.LimiterNo INNER JOIN [dbo].[DbLimiterCaption] dlc ON dl.DbVerNo = dlc.DbVerNo AND dl.LimiterNo = dlc.LimiterNo INNER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo = dil.DbVerNo AND dl.LimiterNo = dil.LimiterNo LEFT OUTER JOIN [dbo].[InterfaceLimiterGroup] ilg ON dil.IntfScreenNo = ilg.IntfScreenNo AND dil.GroupNo = ilg.GroupNo INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType WHERE ll.LimiterNo = @LimiterNo AND dl.DbVerNo = @DbVerNo AND dlc.LangCode = 'en' AND dil.IntfScreenNo=@ScreenNo AND (dil.GroupNo is null OR dil.GroupNo=@GroupNo ) END
CREATE PROCEDURE [dbo].[EAUI_PromoteInterfaceToLive_70](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10))AS BEGIN BEGIN TRANSACTION -- Let us create the live interface, if it is the first time IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version] = 'live') BEGIN INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode]) SELECT [dbo].[InterfaceVersion].[InterfaceID], 'live', [dbo].[InterfaceVersion].[SiteID],[dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) SELECT [dbo].[InterfaceLanguage].[InterfaceID], 'live', [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName] FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version] = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_CopyInterfaceVersionParameters_70] @InterfaceID, @Version ,@InterfaceID, 'live', 0 EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Promote to Live', @InterfaceID, @Version COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbTopic(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS TopicNo, [dbo].[TopicList].[TopicID] AS TopicID FROM [dbo].[DbTopic] LEFT JOIN [dbo].[TopicList] ON [dbo].[TopicList].[TopicNo] = [dbo].[DbTopic].[TopicNo] WHERE [dbo].[DbTopic].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, TopicNo FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseGroup_80] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @GroupNo int)AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbGroup] WHERE [dbo].[DbGroup].[DbVerNo]=@DbVerNo AND [dbo].[DbGroup].[GroupNo]=@GroupNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10), @Caption nvarchar(255) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @Caption=@Caption From [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo AND [dbo].[GroupCaption].[LangCode]='en' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Delete Group', @DbName,@DbLabel,@Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyInterfaceXmlParams_89] (@InterfaceIDFrom varchar(10), @VersionFrom varchar(10), @InterfaceIDTo varchar(10), @VersionTo varchar(10)) AS BEGIN Begin Try Select [cpxd].[ParamNo] into #ParamNos from [dbo].[CustomParamXmlDefaults] cpxd where [cpxd].[InterfaceID]=@InterfaceIDFrom and [cpxd].[Version]=@VersionFrom and exists(select 1 from [dbo].[CustomParamXmlFields] cpxf where cpxd.ParamNo=cpxf.ParamNo) Insert #ParamNos Select cpl.ParamNo from [dbo].[CustomParamList] cpl Join #ParamNos pn on ParentParamNo=pn.ParamNo Begin Transaction Delete [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDTo and [dbo].[InterfaceParamList].[Version]=@VersionTo and [dbo].[InterfaceParamList].[ParamNo] in (Select * from #ParamNos) Delete [dbo].[CustomParamXmlDefaults] where [dbo].[CustomParamXmlDefaults].[InterfaceID]=@InterfaceIDTo and [dbo].[CustomParamXmlDefaults].[Version]=@VersionTo Insert [dbo].[InterfaceParamList] ([dbo].[InterfaceParamList].[InterfaceID], [dbo].[InterfaceParamList].[Version], [dbo].[InterfaceParamList].[ParamNo], [dbo].[InterfaceParamList].[EditLevel]) Select @InterfaceIDTo, @VersionTo, [dbo].[InterfaceParamList].[ParamNo], [dbo].[InterfaceParamList].[EditLevel] From [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceIDFrom and [dbo].[InterfaceParamList].[Version]=@VersionFrom and [dbo].[InterfaceParamList].[ParamNo] in (Select * from #ParamNos) Insert [dbo].[CustomParamXmlDefaults]([cpxd].[ParamNo], [cpxd].[InterfaceID], [cpxd].[Version], [cpxd].[DefValue], [cpxd].[AllowAddItem]) Select [cpxd].[ParamNo], @InterfaceIDTo, @VersionTo, [cpxd].[DefValue], [cpxd].[AllowAddItem] From [dbo].[CustomParamXmlDefaults] cpxd where [cpxd].[InterfaceID]=@InterfaceIDFrom and [cpxd].[Version]=@VersionFrom and [cpxd].[ParamNo] in (Select * from #ParamNos) Commit Transaction End Try Begin Catch Rollback Transaction End Catch END
CREATE PROCEDURE [dbo].[EAUI_PromoteDatabase_131](@UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @OldDbVerNo int, @OldDbLabel varchar(10), @NewDbLabel varchar(10), @BasicParams bit, @Authorities bit, @Descriptions bit, @DocTypes bit, @Forms bit, @Limiters bit, @SegmentFileInfo bit, @SortOptions bit, @Subjects bit, @DbFields bit, @SearchOpts bit, @BrowseOpts bit, @AuthFilter bit, @Topics bit, @TOCs bit, @Groups bit, @Customizers bit, @Clusters bit, @MultiDbAuthorities bit, @ToolbarItems bit, @RtacItems bit, @SubsetDbs BIT, @SearchConceptMapping BIT ) AS BEGIN DECLARE @LogMessage varchar(15) SELECT @LogMessage='From '+@OldDbLabel EXEC dbo.EAIP_PromoteDatabase_131 @OldDbVerNo, @DbName, @NewDbLabel, @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields,@SearchOpts,@BrowseOpts, @AuthFilter,@Topics,@TOCs,@Groups,@Customizers,@Clusters,@MultiDbAuthorities,@ToolbarItems, @RtacItems, @SubsetDbs, @SearchConceptMapping, @UserID, @UserIP IF (@@ERROR <> 0 ) BEGIN RAISERROR ('Could not promote to %s %s.',16,-1,@DbName,@NewDbLabel) RETURN END DECLARE @Query varchar(250) SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo))>0 ) SET @Query = @Query+'&SegName='+dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PromoteDatabase',@Query,@DbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAUI_NotifyDatabase_70 @UserID,@UserIP,@DbName,@NewDbLabel if @SubsetDbs=1 Begin Declare @SubsetDbVerNo int Declare @SubsetDbName varchar(10) Declare SubsetDbs cursor For select [dbo].[DbSubset].[SubsetDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@OldDbVerNo open SubsetDbs fetch next from SubsetDbs into @SubsetDbVerNo while @@FETCH_STATUS =0 Begin select @SubsetDbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@SubsetDbVerNo SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo))>0 ) SET @Query = @Query+'&SegName='+dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PromoteDatabase',@Query,@SubsetDbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAUI_NotifyDatabase_70 @UserID,@UserIP,@SubsetDbName,@NewDbLabel fetch next from SubsetDbs into @SubsetDbVerNo End CLOSE SubsetDbs DEALLOCATE SubsetDbs End EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP,'Database','Promote',@DbName,@NewDbLabel,@LogMessage END
CREATE PROCEDURE [dbo].[EAUI_GetProfileBrowseOptions_76](@ProfNo int, @DbVerNo int, @ScreenNo int) AS BEGIN SELECT ibo.BrowseOptionNo, bol.BrowseOptionId, boc.OptionCaption, IsNULL(pbo.Show, ibo.Show) AS Show, ISNULL(pbo.SeqNo, ibo.SeqNo) AS SeqNo, ins.BrowseOptionNote AS Note FROM [dbo].[DbInterfaceBrowseOption] ibo LEFT OUTER JOIN [dbo].[ProfDbBrowseOption] pbo ON ibo.DbVerNo = pbo.DbVerNo AND ibo.IntfScreenNo = pbo.IntfScreenNo AND ibo.BrowseOptionNo = pbo.BrowseOptionNo AND pbo.ProfNo=@ProfNo INNER JOIN [dbo].[DbBrowseOptionCaption] boc ON ibo.DbVerNo = boc.DbVerNo AND ibo.BrowseOptionNo = boc.BrowseOptionNo INNER JOIN [dbo].[BrowseOptionList] bol ON ibo.BrowseOptionNo = bol.BrowseOptionNo INNER JOIN [dbo].[InterfaceScreen] ins ON ibo.IntfScreenNo = ins.IntfScreenNo WHERE ibo.DbVerNo = @DbVerNo AND ibo.IntfScreenNo = @ScreenNo AND boc.LangCode = 'en' ORDER BY SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AddDbBrowseOption_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @OptionID varchar(20), @OptionType varchar(1), @SearchString varchar(255), @TargetDb varchar(10), @SourceType varchar(100), @TabImage varchar (255), @SubsetID varchar(20), @ViewID varchar(20), @OptionCaption nvarchar(255), @ResultCaption nvarchar(255), @Description nvarchar(max), @Lang varchar(10), @IsHeading int) AS BEGIN DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo IF @SearchString='' SELECT @SearchString =null IF @TargetDb='' SELECT @TargetDb=null IF @SourceType='' SELECT @SourceType=null IF @TabImage='' SELECT @TabImage=null IF @SubsetID='' SELECT @SubsetID=null IF @ViewID='' SELECT @ViewID=null IF @ResultCaption='' SELECT @ResultCaption =null IF @Description='' SELECT @Description=null DECLARE @OptionNo int BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID) SELECT @OptionNo=[dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID ELSE BEGIN INSERT INTO [dbo].[BrowseOptionList] ([dbo].[BrowseOptionList].[BrowseOptionId]) VALUES(@OptionID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END SELECT @OptionNo=[dbo].[BrowseOptionList].[BrowseOptionNo] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionId]=@OptionID END INSERT INTO [dbo].[DbBrowseOption] ([dbo].[DbBrowseOption].[DbVerNo],[dbo].[DbBrowseOption].[BrowseOptionNo],[dbo].[DbBrowseOption].[OptionType],[dbo].[DbBrowseOption].[SearchString],[dbo].[DbBrowseOption].[TargetDb],[dbo].[DbBrowseOption].[SourceType],[dbo].[DbBrowseOption].[TabImage],[dbo].[DbBrowseOption].[AuthoritySubset],[dbo].[DbBrowseOption].[AuthorityView],[dbo].[DbBrowseOption].[IsHeading]) VALUES (@DbVerNo,@OptionNo,@OptionType,@SearchString,@TargetDb,@SourceType,@TabImage,@SubsetID,@ViewID,@IsHeading) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbBrowseOptionCaption] ([dbo].[DbBrowseOptionCaption].[DbVerNo],[dbo].[DbBrowseOptionCaption].[BrowseOptionNo],[dbo].[DbBrowseOptionCaption].[LangCode],[dbo].[DbBrowseOptionCaption].[OptionCaption],[dbo].[DbBrowseOptionCaption].[ResultCaption],[dbo].[DbBrowseOptionCaption].[Description] ) VALUES (@DbVerNo,@OptionNo,@Lang,@OptionCaption,@ResultCaption,@Description) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'BrowseOptions', 'Add DbBrowse Option', @DbName, @DbLabel, @OptionID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfDbFields_70](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @DbVerNo int ) AS BEGIN DECLARE @ProfNo int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) DECLARE @OutputModeDefaults varchar(8000) SET @OutputModeDefaults='' SELECT gid.FieldGroupId as 'groupID', dbo.EAIF_GetProfFieldDefaults_70(@ProfNo, @DbVerNo, pg.FieldGroupNo) as 'defaults' FROM [dbo].[ProfFieldGroupDefaults] pg INNER JOIN [dbo].[FieldGroupList] gid ON pg.FieldGroupNo=gid.FieldGroupNo WHERE pg.ProfNo=@ProfNo AND pg.DbVerNo=@DbVerNo END
CREATE PROCEDURE [dbo].[BLL_GetConsortiaDatabases_100](@ConsortiaCustID varchar(10), @ExcludeCustIDs varchar(max)) AS BEGIN DECLARE @CurrentDate DATETIME; SELECT @CurrentDate = GETDATE(); IF @ExcludeCustIDs IS NULL SET @ExcludeCustIDs = ''; SELECT DISTINCT c.CustID , c.CustName , db.DbName , db.DisplayName FROM [dbo].[Customer] c INNER JOIN [dbo].[Profile] p ON c.CustID = p.CustID INNER JOIN [dbo].[ProfDatabase] pd ON p.ProfNo = pd.ProfNo INNER JOIN [dbo].[DbList] db ON pd.DbVerNo = db.DbVerNo WHERE -- c.CustID != @ConsortiaCustID AND --AND db.dbname = db.dbname --AND db.dbname = g.dbname c.CustID IN (SELECT cg.ChildID FROM [dbo].[CustomerGroup] cg WHERE [cg].[ParentID] = @ConsortiaCustID) AND c.CustID NOT IN (SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ExcludeCustIDs, ',') ) AND pd.Enable = 1 AND (pd.AccessEndDate is null OR DateDiff(hh, pd.AccessEndDate, @CurrentDate)< 0 ) ORDER BY c.CustName, c.CustID, db.DbName END
Create Procedure [dbo].[EAUI_GetInterfaceMDbLimitersToAttach_89] (@ScreenNo int, @DbLabel varchar(10)) as if exists (select 1 from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo and [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=0) select mdbll.LimiterNo, [mdbll].[LimiterID] + ': ' + [mdbll].[Description] + ' (' + [lct].[ControlName] + ')' as LimiterText from [dbo].[MDbLimiterList] mdbll join [dbo].[LimiterControlType] lct on mdbll.ControlType=lct.ControlType where mdbll.LimiterNo not in (Select [dbo].[InterfaceMDbLimiterList].[LimiterNo] from [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@ScreenNo) and [mdbll].[DbLabel]=@DbLabel else Select mdbll.LimiterNo, [mdbll].[LimiterID] + ': ' + [mdbll].[Description] +' (' + [lct].[ControlName] + ')' as LimiterText from [dbo].[MDbLimiterList] mdbll join [dbo].[LimiterControlType] lct on mdbll.ControlType=lct.ControlType where [mdbll].[AutoAdd]=0 and mdbll.LimiterNo not in (Select [dbo].[InterfaceMDbLimiterList].[LimiterNo] from [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@ScreenNo) and [mdbll].[DbLabel]=@DbLabel
--sql content merged from file: \StoredProcedures\EAIS_UpdateConnectors_94.sql CREATE Procedure [dbo].[EAIS_UpdateConnectors_94] @UserID varchar(10), @UserIP varchar(15), @Mode char(1), @SourceType char(1), @ExternalDbID varchar(255), @DbName varchar(10), @DisplayName varchar(100), @ConnectorType varchar(20) = null, @DatabaseContentCaption varchar(70) = null, @Description varchar(1500) = null, @VendorName varchar(100) = null, @Added bit OUTPUT as Begin Declare @DbVerNo int Declare @ParamNo int Declare @Desc varchar(max) Declare @OldDisplayName varchar(100) Declare @OldSourceType char(1) Declare @OldVendorName varchar(100) Declare @OldConnectorType varchar(20) Declare @OldDatabaseContentCaption varchar(70) Declare @OldDescription varchar(1500) Declare @Changed bit Set @Changed=0 Set @Added=0 Begin try Begin transaction if not exists (select 1 from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName) Begin Insert [dbo].[DbList] ([dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel], [dbo].[DbList].[DisplayName], [dbo].[DbList].[DSFamilyName], [dbo].[DbList].[DbGroup], [dbo].[DbList].[DbType], [dbo].[DbList].[ContentType], [dbo].[DbList].[LastUpdateDate], [dbo].[DbList].[MultiSegment], [dbo].[DbList].[EnforceSimUsage], [dbo].[DbList].[ShowStats], [dbo].[DbList].[ShowOnDDSConsole], [dbo].[DbList].[WebClient], [dbo].[DbList].[WinClient], [dbo].[DbList].[CharClient], [dbo].[DbList].[Z3950Client], [dbo].[DbList].[InterfaceID], [dbo].[DbList].[DbCategory], [dbo].[DbList].[EPXBuild], [dbo].[DbList].[EDABuild], [dbo].[DbList].[IncludeWhenAutoAdd], [dbo].[DbList].[SourceType]) Values (@DbName, 'live', @DisplayName, '', null, 1, 1, GetDate(), 2, 0, 1, 0, 1, 0, 0, 0, null, null, 0, 0, 0, Upper(@SourceType)) Select @DbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName Insert [dbo].[DbListExternalSource] ([dbo].[DbListExternalSource].[ExternalDbID], [dbo].[DbListExternalSource].[DbVerNo], [dbo].[DbListExternalSource].[VendorName], [dbo].[DbListExternalSource].[ConnectorType]) Values (@ExternalDbID, @DbVerNo, @VendorName, @ConnectorType) Set @Added=1 End Else Begin IF (CharIndex('r',@Mode) > 0) Begin Select @DbVerNo=[dbo].[DbList].[DbVerNo], @OldDisplayName=[dbo].[DbList].[DisplayName], @OldSourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName if @DisplayName<>@OldDisplayName or @SourceType<>@OldSourceType Begin Update [dbo].[DbList] Set [dbo].[DbList].[DisplayName]=@Displayname, [dbo].[DbList].[SourceType]=@SourceType where [dbo].[DbList].[DbName]=@DbName Set @Changed=1 End Select @OldVendorName=[dbo].[DbListExternalSource].[VendorName], @OldConnectorType=[dbo].[DbListExternalSource].[ConnectorType] from [dbo].[DbListExternalSource] where [dbo].[DbListExternalSource].[DbVerNo]=@DbVerNo if @VendorName<>@OldVendorName or @ConnectorType<>@OldConnectorType Begin Update [dbo].[DbListExternalSource] set [dbo].[DbListExternalSource].[VendorName]=@VendorName, [dbo].[DbListExternalSource].[ConnectorType]=@ConnectorType where [dbo].[DbListExternalSource].[DbVerNo]=@DbVerNo Set @Changed=1 End End End Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='ResourceType' if not exists (Select 1 from [dbo].[DbParamScalarValues] where [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo) and @DatabaseContentCaption is not null Begin Insert [dbo].[DbParamScalarValues] ([dbo].[DbParamScalarValues].[DbVerNo], [dbo].[DbParamScalarValues].[ParamNo], [dbo].[DbParamScalarValues].[ParamValue]) Values (@DbVerNo, @ParamNo, @DatabaseContentCaption) IF (CharIndex('r',@Mode) > 0 and @Added=0) Set @Changed=1 End Else IF (CharIndex('r',@Mode) > 0) Begin select @OldDatabaseContentCaption=[dbo].[DbParamScalarValues].[ParamValue] from [dbo].[DbParamScalarValues] where [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo if @DatabaseContentCaption<>@OldDatabaseContentCaption Begin Update [dbo].[DbParamScalarValues] set [dbo].[DbParamScalarValues].[ParamValue]=@DatabaseContentCaption where [dbo].[DbParamScalarValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo Set @Changed=1 End End Select @paramNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription' if @Description is null set @Desc='' else set @Desc=' ' if not exists (Select 1 from [dbo].[DbParamXmlValues] where [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ItemName]='') and @Description is not null Begin Insert [dbo].[DbParamXmlValues] ([dbo].[DbParamXmlValues].[DbVerNo], [dbo].[DbParamXmlValues].[ParamNo], [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[ParamValue], [dbo].[DbParamXmlValues].[SeqNo]) Values (@DbVerNo, @ParamNo, '', @Desc, null) IF (CharIndex('r',@Mode) > 0 and @Added=0) Set @Changed=1 End Else IF (CharIndex('r',@Mode) > 0) Begin Select @OldDescription=[dbo].[DbParamXmlValues].[ParamValue] from [dbo].[DbParamXmlValues] where [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ItemName]='' if @Desc<>@OldDescription Begin Update [dbo].[DbParamXmlValues] set [dbo].[DbParamXmlValues].[ParamValue]=@Desc where [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo and [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo and [dbo].[DbParamXmlValues].[ItemName]='' Set @Changed=1 End End If @Changed=1 exec EASUPPORT.dbo.EAUI_NotifyDatabase_70 @UserID, @UserIP, @DbName, 'live' Commit transaction End Try Begin catch rollback transaction End Catch End ' + @Description + '
CREATE PROCEDURE [dbo].[EPCAS_GetPermLimiters](@ProfNo int) AS BEGIN DECLARE @DefLangCode varchar(10) SELECT @DefLangCode=[dbo].[Profile].[DefLangCode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT distinct Tag=CASE WHEN c.Exclude=1 THEN 'EX' ELSE 'LO' END, b.Caption, c.ColID as 'Value' FROM [dbo].[ProfLocalLimiter2] a INNER JOIN [dbo].[ProfLocalLimiterCaption2] b ON a.ProfNo=b.ProfNo AND a.ColNo=b.ColNo INNER JOIN [dbo].[Collection] c ON a.ColNo=c.ColNo WHERE a.ProfNo=@ProfNo AND a.DefValue='On' AND a.Show=0 AND b.LangCode=@DefLangCode AND c.IsDeleted = 0 END
Create FUNCTION [dbo].[EAIF_GetHiddenProfDbList_133]() RETURNS @DbList TABLE (DbVerNo INT) AS BEGIN DECLARE @ParamNo INT, @DefValue INT SELECT @ParamNo=dbpd.ParamNo, @DefValue=dbpd.DefValue FROM dbo.DbParamList dbpl LEFT JOIN dbo.DbParamDefaults dbpd ON dbpl.ParamNo = dbpd.ParamNo WHERE dbpl.ParamName = 'showOnProfDbList' IF @DefValue = 1 INSERT @DbList SELECT dbpsv.DbVerNo FROM dbo.DbParamScalarValues dbpsv WHERE dbpsv.ParamNo = @ParamNo AND dbpsv.ParamValue = 0 ELSE INSERT @DbList SELECT dbl.DbVerNo FROM [dbo].[DbList] dbl LEFT JOIN dbo.DbParamScalarValues dbpsv ON dbpsv.DbVerNo = dbl.DbVerNo AND dbpsv.ParamNo = @ParamNo WHERE dbpsv.ParamValue = 0 OR (dbpsv.ParamValue IS NULL AND @DefValue = 0) RETURN END
CREATE Procedure [dbo].[EAUI_GetDbParamList_96] ( @SourceType VARCHAR(10), @EditLevel INT ) AS BEGIN SELECT b.PromptText, a.ParamName AS ParamName, a.ParamNo, b.EditControl, b.ValueTemplate, ISNULL(c.DefValue,'') AS [Value], ISNULL(d.Description,'Undefined') AS ParamType FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] d ON d.FieldCode=a.ParamType AND d.FieldName='ParamType' WHERE a.ParamType IN ('B','S','N') AND a.ParamSourceType LIKE @SourceType + '%' AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) ORDER BY [b].[SeqNo] END
CREATE PROCEDURE [dbo].[EPCS_GetProfForDB_70](@CustID varchar(10), @GroupID varchar(10), @ShortDB varchar(10), @DbLabel varchar(10)='live' ) AS BEGIN DECLARE @ProfID varchar(10) DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDB AND [dbo].[DbList].[DbLabel]=@DbLabel SELECT @ProfID=a.ProfID FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.InterfaceID='ehost' AND b.Enable=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) AND b.DbVerNo=@DbVerNo IF @ProfID is NULL SELECT @ProfID=a.ProfID FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND b.Enable=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) AND b.DbVerNo=@DbVerNo EXEC [dbo].[EPCS_GetProfInfo_70] @CustID, @GroupID, @ProfID END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseScalarParams_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin try BEGIN TRANSACTION Delete dbpsv from [dbo].[DbParamScalarValues] dbpsv join #TempDbListTable t on dbpsv.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbParamScalarValues] Select t.UpperDbVerNo AS DbVerNo, ParamNo, ParamValue From [dbo].[DbParamScalarValues] dbpsv join #TempDbListTable t on dbpsv.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateGroupProfileOrder_70] ( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @GroupID varchar(10), @ProfNoList varchar(8000), @ProfOrderList varchar(8000)) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles','Update Profile Order',@CustID,@GroupID UPDATE [dbo].[Profile] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[Profile] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@ProfNoList, @ProfOrderList,'+') b ON a.ProfNo=convert(int,b.Item) WHERE a.CustID = @CustID AND a.GroupID = @GroupID COMMIT TRANSACTION END
--sql content merged from file: \Functions\EAIF_GetProfileParamScalarValue_70.sql CREATE FUNCTION [dbo].[EAIF_GetProfileParamScalarValue_70](@ProfNo int, @ParamName varchar(100)) RETURNS nvarchar(4000) AS BEGIN DECLARE @InterfaceId varchar(10),@Version varchar(10),@MarketId varchar(20),@STMode char(1) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo return dbo.EAIF_GetCustomParamScalarValue_70(@ParamName,@InterfaceID, @Version,@MarketID, @STMode,@ProfNo,'P') END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerCollection_70] (@ColNo int) AS BEGIN SELECT [dbo].[Collection].[ColNo], [dbo].[Collection].[ColID], [dbo].[Collection].[ColName], [dbo].[Collection].[Exclude], [dbo].[Collection].[Notes], [dbo].[Collection].[AddAlternates], [dbo].[Collection].[AutoRecreate], [dbo].[Collection].[ForceRecreate], [dbo].[Collection].[Eonline], [dbo].[Collection].[CrossRef], [dbo].[Collection].[Hidden] FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 END
CREATE PROCEDURE [dbo].[EAIP_CopyUserGroup_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @SrcCustID VARCHAR(10), @SrcGroupID NVARCHAR(10), @DstCustID VARCHAR(10), @DstGroupID NVARCHAR(10), @SsoAttributeMappingCount INT ) AS BEGIN DECLARE @SrcGroupNo INT , @DstGroupNo INT, @CustSsTextParamNo INT, @DestCustNo INT, @HasLinkSourceParamNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @SrcCustID AND [dbo].[UserGroup].[GroupID] = @SrcGroupID) BEGIN RAISERROR('The source Customer and Group (%s.%s) combination does not exist.', 16, -1, @SrcCustID, @SrcGroupID) RETURN END IF (@SrcGroupID = 'main') BEGIN RAISERROR('The source Group can not be the main group.', 16, -1, @SrcGroupID) RETURN END IF (@DstGroupID = 'main') BEGIN RAISERROR('The target Group can not be the main group.', 16, -1, @DstGroupID) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @DstCustID) BEGIN RAISERROR('The target Customer %s does not exist.', 16, -1, @DstCustID) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @DstCustID AND [dbo].[UserGroup].[GroupID] = @DstGroupID) BEGIN RAISERROR('The input is invalid, as the target Customer Group (%s.%s) already exists.', 16, -1, @DstCustID, @DstGroupID) RETURN END EXEC [dbo].[EAIP_CopyUserGroup_70] @SrcCustID, @SrcGroupID, @DstCustID, @DstGroupID SELECT @SrcGroupNo = [dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @SrcCustID AND [dbo].[UserGroup].[GroupID] = @SrcGroupID SELECT @DstGroupNo = [dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @DstCustID AND [dbo].[UserGroup].[GroupID] = @DstGroupID SELECT @DestCustNo = dbo.EAIF_GetCustNo_70(@DstCustID) SELECT @CustSsTextParamNo = dbo.EAIF_GetCustomParamNumber_70('customerSSText','C') SELECT @HasLinkSourceParamNo = dbo.EAIF_GetCustomParamNumber_70('hasLinkSource','C') --DELETE customerSSText Parameter specific value for Target customer if Target customer does not have same "Select Service" Version value not available as Source customer has IF EXISTS(SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @CustSsTextParamNo AND [dbo].[CustomParamXmlValues].[TargetNo] = @DstGroupNo) BEGIN IF (NOT EXISTS( SELECT 1 FROM [dbo].[CustomParamXmlValues] A INNER JOIN [dbo].[Customer] B ON A.TargetNo = B.CustNo INNER JOIN [dbo].[CustomerGroup] C ON B.CustID = C.ParentID WHERE [A].[ParamLevel] = 'C' AND [A].[ParamNo] = @CustSsTextParamNo AND C.ChildID = @DstCustID AND b.CustID <> @DstCustID) AND NOT EXISTS(SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo] = @DestCustNo AND [dbo].[CustomParamXmlValues].[ParamLevel] = 'C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @CustSsTextParamNo)) BEGIN DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[ParamNo] = @CustSsTextParamNo AND [dbo].[CustomParamXmlValues].[TargetNo] = @DstGroupNo END END --DELETE hasLinkSource Parameter specific value for Target customer if Target customer does not have this "Profile for Linking In" value available as the Source customer has --Theoritically this will never happen but this check is for safe checking IF (dbo.EAIF_GetCustomerParamScalarValue_70(@DstCustID,'hasLinkSource') = '1') AND EXISTS(SELECT 1 FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamNo] = @HasLinkSourceParamNo AND [dbo].[CustomParamScalarValues].[TargetNo] = @DstGroupNo) BEGIN IF (NOT EXISTS( SELECT 1 FROM [dbo].[Profile] A INNER JOIN [dbo].[Interface] B ON A.InterfaceID = B.InterfaceID WHERE [A].[CustID] = @DstCustID AND [A].[GroupID] = @DstGroupID AND B.ClientType = 'web') AND NOT EXISTS( SELECT 1 FROM [dbo].[CustomerGroup] G INNER JOIN [dbo].[Profile] A ON G.ParentID = A.CustID INNER JOIN [dbo].[Interface] B ON A.InterfaceID = B.InterfaceID WHERE G.ChildID = @DestCustNo AND A.CustID <> @DstCustID AND A.GroupID = @DstGroupID AND B.ClientType = 'web' AND dbo.EAIF_GetCustomerParamScalarValue_70(G.ParentID,'hasLinkSource') = '1')) BEGIN DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamNo] = @HasLinkSourceParamNo AND [dbo].[CustomParamScalarValues].[TargetNo] = @DstGroupNo END END --DELETE useSSOForPersonalization and useJITSSOUserProvisioning Parameter specific values from Target Customer since Customer does not have any SSO attribute mapping available IF (@SsoAttributeMappingCount <= 0) BEGIN DECLARE @UseSSOForPersonalizationParamNo INT, @UseJITSSOUserProvisioningParamNo INT SELECT @UseSSOForPersonalizationParamNo = dbo.EAIF_GetCustomParamNumber_70('useSSOForPersonalization','G') SELECT @UseJITSSOUserProvisioningParamNo = dbo.EAIF_GetCustomParamNumber_70('useJITSSOUserProvisioning','G') DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[ParamNo] IN (@UseSSOForPersonalizationParamNo, @UseJITSSOUserProvisioningParamNo) AND [dbo].[CustomParamScalarValues].[TargetNo] = @DstGroupNo END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Site/Group', 'Copy User Group', @SrcCustID, @SrcGroupID, @DstCustID, @DstGroupID END
CREATE PROCEDURE [dbo].[EAIP_GetDbInterfaceSearchOptions_76] (@DbVerNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ SELECT ins.InterfaceID, ins.Version, ins.ScreenID, ol.SearchOptionId, iso.Show, iso.SeqNo FROM [dbo].[InterfaceScreen] ins INNER JOIN [dbo].[DbInterfaceSearchOption] iso ON iso.IntfScreenNo =ins.IntfScreenNo INNER JOIN [dbo].[SearchOptionList] ol ON iso.SearchOptionNo=ol.SearchOptionNo WHERE iso.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_PromoteInterfaceToLive_76](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10))AS BEGIN BEGIN TRANSACTION -- Let us create the live interface, if it is the first time IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version] = 'live') BEGIN INSERT INTO [dbo].[InterfaceVersion] ([dbo].[InterfaceVersion].[InterfaceID], [dbo].[InterfaceVersion].[Version], [dbo].[InterfaceVersion].[SiteID], [dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[SupportDbTitleLists] ) SELECT [dbo].[InterfaceVersion].[InterfaceID], 'live', [dbo].[InterfaceVersion].[SiteID],[dbo].[InterfaceVersion].[SiteURL], [dbo].[InterfaceVersion].[PassingMode], [dbo].[InterfaceVersion].[SupportDbTitleLists] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName]) SELECT [dbo].[InterfaceLanguage].[InterfaceID], 'live', [dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName] FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version] = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_CopyInterfaceScreens_76] @InterfaceID, @Version ,@InterfaceID, 'live' EXEC [dbo].[EAIP_CopyInterfaceVersionParameters_76] @InterfaceID, @Version ,@InterfaceID, 'live' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Promote to Live', @InterfaceID, @Version COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_DbVolume(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbVolume].[Volume], [dbo].[DbVolume].[LastUpdateDate], [dbo].[DbVolume].[EpkPath] FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo] = @DbVerNo ORDER BY DbVerNo, [dbo].[DbVolume].[Volume], [dbo].[DbVolume].[LastUpdateDate], [dbo].[DbVolume].[EpkPath] FOR XML RAW('r') ) END
CREATE Procedure [dbo].[EAUI_DeleteDatabaseMDbAuthority_90]( @UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int, @MDbAID varchar(10)) AS DELETE FROM [dbo].[DBMultiDbAuthList] WHERE [dbo].[DBMultiDbAuthList].[MultiDbAuthID] = @MDbAID AND [dbo].[DBMultiDbAuthList].[DbVerNo] = @DbVerNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId, @UserIp, @DbVerNo,@MDbAID ,'Delete DbMDbAuth'
CREATE Procedure [dbo].[EAIP_CopyMDbAuthority_90](@MultiDbAuthId varchar(10), @Description nvarchar(255)) AS BEGIN IF Exists(SELECT 1 FROM [dbo].[MultiDbAuthList] WHERE [dbo].[MultiDbAuthList].[MultiDbAuthID] = @MultiDbAuthId) UPDATE [dbo].[MultiDbAuthList] SET [dbo].[MultiDbAuthList].[Description] = @Description WHERE [dbo].[MultiDbAuthList].[MultiDbAuthID] = @MultiDbAuthId ELSE INSERT INTO [dbo].[MultiDbAuthList] ([dbo].[MultiDbAuthList].[MultiDbAuthID], [dbo].[MultiDbAuthList].[Description]) VALUES (@MultiDbAuthId, @Description) END
CREATE PROCEDURE [dbo].[EAUI_PromoteDatabase_141](@UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @OldDbVerNo int, @OldDbLabel varchar(10), @NewDbLabel varchar(10), @BasicParams bit, @Authorities bit, @Descriptions bit, @DocTypes bit, @Forms bit, @Limiters bit, @SegmentFileInfo bit, @SortOptions bit, @Subjects bit, @DbFields bit, @SearchOpts bit, @BrowseOpts bit, @AuthFilter bit, @Topics bit, @TOCs bit, @Groups bit, @Customizers bit, @Clusters bit, @MultiDbAuthorities bit, @ToolbarItems bit, @RtacItems bit, @SubsetDbs BIT, @PickupLocations BIT=0, @SearchConceptMapping BIT, @DSParameters bit ) AS BEGIN DECLARE @LogMessage varchar(15) SELECT @LogMessage='From '+@OldDbLabel EXEC dbo.EAIP_PromoteDatabase_141 @OldDbVerNo, @DbName, @NewDbLabel, @BasicParams, @Authorities, @Descriptions, @DocTypes, @Forms, @Limiters, @SegmentFileInfo, @SortOptions, @Subjects, @DbFields,@SearchOpts,@BrowseOpts, @AuthFilter,@Topics,@TOCs,@Groups,@Customizers,@Clusters,@MultiDbAuthorities,@ToolbarItems, @RtacItems, @SubsetDbs, @PickupLocations, @SearchConceptMapping, @DSParameters, @UserID, @UserIP IF (@@ERROR <> 0 ) BEGIN RAISERROR ('Could not promote to %s %s.',16,-1,@DbName,@NewDbLabel) RETURN END DECLARE @Query varchar(250) SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo))>0 ) SET @Query = @Query+'&SegName='+dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PromoteDatabase',@Query,@DbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAUI_NotifyDatabase_70 @UserID,@UserIP,@DbName,@NewDbLabel if @SubsetDbs=1 Begin Declare @SubsetDbVerNo int Declare @SubsetDbName varchar(10) Declare SubsetDbs cursor For select [dbo].[DbSubset].[SubsetDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@OldDbVerNo open SubsetDbs fetch next from SubsetDbs into @SubsetDbVerNo while @@FETCH_STATUS =0 Begin select @SubsetDbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@SubsetDbVerNo SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo))>0 ) SET @Query = @Query+'&SegName='+dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 @UserID,'PromoteDatabase',@Query,@SubsetDbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAUI_NotifyDatabase_70 @UserID,@UserIP,@SubsetDbName,@NewDbLabel fetch next from SubsetDbs into @SubsetDbVerNo End CLOSE SubsetDbs DEALLOCATE SubsetDbs End EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP,'Database','Promote',@DbName,@NewDbLabel,@LogMessage END
CREATE PROCEDURE [dbo].[EAUI_GetProfileCatalogList_104](@ProfNo int) AS BEGIN Select pd.DbVerNo, d.DisplayName+ N' ('+d.DbName+N')' AS DisplayName FROM [dbo].[ProfDatabase] pd inner Join [dbo].[DbList] d on d.DbVerNo=pd.DbVerNo WHERE pd.ProfNo = @ProfNo AND pd.Enable = 1 AND d.SourceType = 'C' and d.DbName like 'cat%' AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) END
CREATE PROCEDURE [dbo].[EAUI_AddDbFieldGroup_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @FieldGroupNo int, @ElementsList nvarchar(max), @Caption nvarchar(255)) AS BEGIN /* This Proc will Insert Row(s) in (a) DbFieldGroup (b) DbFieldElement (c) DbFieldGroupCaption */ IF NOT EXISTS (SELECT 1 FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroup].[FieldGroupNo]=@FieldGroupNo) BEGIN BEGIN TRANSACTION /* (a) DbFieldGroup */ INSERT INTO [dbo].[DbFieldGroup]([dbo].[DbFieldGroup].[DbVerNo], [dbo].[DbFieldGroup].[FieldGroupNo]) VALUES(@DbVerNo, @FieldGroupNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Insert failed for Add Group.', 16, -1) RETURN END /* (b) DbFieldElement */ INSERT INTO [dbo].[DbFieldElement]([dbo].[DbFieldElement].[DbVerNo], [dbo].[DbFieldElement].[FieldGroupNo], [dbo].[DbFieldElement].[FieldElementNo]) SELECT @DbVerNo, @FieldGroupNo, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ElementsList,'+') IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Insert failed for Add Group--Assign Elements.', 16, -1) RETURN END /* (c) DbFieldGroupCaption */ INSERT INTO [dbo].[DbFieldGroupCaption]([dbo].[DbFieldGroupCaption].[DbVerNo], [dbo].[DbFieldGroupCaption].[FieldGroupNo], [dbo].[DbFieldGroupCaption].[LangCode], [dbo].[DbFieldGroupCaption].[Caption]) VALUES(@DbVerNo, @FieldGroupNo, 'en', @Caption) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RAISERROR('Insert failed for Add Group--Default English Caption.', 16, -1) RETURN END /* Log the Transaction */ DECLARE @DbName varchar(10), @DbLabel varchar(10), @FieldGroupId varchar(100), @ElementNameList nvarchar(950) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @FieldGroupId=[dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo SELECT @ElementNameList = COALESCE(@ElementNameList+',','') + [dbo].[FieldElementList].[FieldElementName] FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementNo] IN ( SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ElementsList,'+') ) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Field Customization', 'Add Group:', @FieldGroupId, 'Field Names:', @ElementNameList, '', @Caption COMMIT TRANSACTION END END
CREATE PROCEDURE [dbo].[EPCS_GetProfDbGroups_102](@CustId varchar(10), @GroupID varchar(10), @ProfID varchar(10))AS BEGIN DECLARE @ProfNo int, @showDefaultGroups varchar (10), @showIntegratedSearchPanel varchar (5), @SourcetypeTobeIgnored char(1) Select @SourcetypeTobeIgnored='' SELECT @ProfNo=dbo.EAIF_GetProfNo_70(@CustId,@GroupID,@ProfID) SELECT @showIntegratedSearchPanel=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'showIntegratedSearchPanel') -- If the ShowIntegratedSearchPanel is turned off, Connectors needs to be filtered out -- from the customized db groups If @showIntegratedSearchPanel = '0' SET @SourcetypeTobeIgnored='M' -- Get the Param Value SET @showDefaultGroups=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'showDefaultEPDatabaseGroup') IF @showDefaultGroups = '0' -- Do not show Default EPDatabase Groups BEGIN SELECT * FROM ( SELECT CONVERT( varchar, pg.GroupNo) AS GroupID, 'C' AS GroupType, dbo.EAIF_GetProfCustGroupCaptions_86(@ProfNo, pg.GroupNo) AS Captions, dbo.EAIF_GetProfCustGroupShortDbList_86(@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) AS Dbs, dbo.EAIF_GetProfCustGroupDbInfo_102 (@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) As GroupDbs, ISNULL(pg.SeqNo,0) As SeqNo, CASE pg.SelDefault WHEN 1 THEN 'Y' ELSE 'N' END as SelDefault FROM [dbo].[ProfCustGroupList] pg WHERE pg.ProfNo = @ProfNo AND pg.Show=1 ) a Where [a].[Dbs] <> ',' ORDER BY [a].[SeqNo] -- Note : Dbs check was added due to the new parameter '@showIntegratedSearchPanel'. If it is turned off -- customized groups containing only external connectors was showing up as empty group in EPClient. END ELSE -- Show Default EP Database Groups i.e. @showDefaultGroups = '1' BEGIN Select * from ( SELECT CONVERT( varchar, pg.GroupNo) AS GroupID, 'C' AS GroupType, dbo.EAIF_GetProfCustGroupCaptions_86(@ProfNo, pg.GroupNo) AS Captions, dbo.EAIF_GetProfCustGroupShortDbList_86(@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) AS Dbs, dbo.EAIF_GetProfCustGroupDbInfo_102 (@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) As GroupDbs, ISNULL(pg.SeqNo,0) As SeqNo, CASE pg.SelDefault WHEN 1 THEN 'Y' ELSE 'N' END as SelDefault FROM [dbo].[ProfCustGroupList] pg WHERE pg.ProfNo = @ProfNo AND pg.Show=1 ) a Where [a].[Dbs] <> ',' UNION ALL SELECT distinct gl.GroupID, 'G' AS GroupType, dbo.EAIF_GetProfGroupCaptions_86(@ProfNo, gl.GroupNo) AS Captions, dbo.EAIF_GetProfGroupShortDbList_86(@ProfNo, gl.GroupNo) AS Dbs, dbo.EAIF_GetProfGroupDbInfo_92 (@ProfNo, gl.GroupNo) As GroupDbs, ISNULL(pgl.SeqNo, 0) AS SeqNo, CASE pgl.SelDefault WHEN 1 THEN 'Y' ELSE 'N' END as SelDefault FROM [dbo].[GroupList] gl LEFT OUTER JOIN [dbo].[ProfGroupList] pgl ON pgl.ProfNo=@ProfNo AND gl.GroupNo=pgl.GroupNo INNER JOIN [dbo].[DbGroup] gdb ON gl.GroupNo = gdb.GroupNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = gdb.DbVerNo WHERE pdb.ProfNo=@ProfNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND (pgl.Show is null OR pgl.Show=1) ORDER BY [a].[SeqNo] END END
CREATE PROCEDURE [dbo].[BLL_GetCustParamValue](@CustID varchar(10)) AS BEGIN DECLARE @CustNo int, @STMode char(1), @MarketID varchar(20), @CustType char(1) SELECT @CustNo=[dbo].[Customer].[CustNo], @MarketID=[dbo].[Customer].[MarketID],@STMode=CASE [dbo].[Customer].[CustType] WHEN 'T' THEN 'T' ELSE 'S' END, @CustType = [dbo].[Customer].[CustType] FROM [dbo].[Customer] Where [dbo].[Customer].[CustID]=@CustID SELECT Upper(left(clst.ParamName,1))+ substring(clst.ParamName,2,255) as ParamName, ParamValue=ISNULL(ISNULL(val.ParamValue, cpctd.DefValue), dval.DefValue), CASE WHEN [clst].[ParamName]='EnforceSimUsage' THEN 'N' ELSE clst.ParamType END as 'DataType' FROM [dbo].[CustomParamCategory] ctg INNER JOIN [dbo].[CustomParamList] clst ON ctg.ParamNo=clst.ParamNo INNER JOIN [dbo].[CustomParamDefaults] dval ON clst.ParamNo=dval.ParamNo LEFT OUTER JOIN [dbo].[CustomParamCustTypeDefaults] cpctd ON cpctd.ParamNo = clst.ParamNo AND cpctd.CustType = @CustType LEFT JOIN [dbo].[CustomParamScalarValues] val ON dval.ParamNo=val.ParamNo AND val.TargetNo=@CustNo AND val.ParamLevel='C' WHERE ctg.Category='basicCustomer' AND clst.ParamLevel='C' AND dval.InterfaceID='all' AND dval.Version='all' AND dval.MarketID=@MarketID AND dval.STMode=@STMode ORDER BY DataType END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceMDbSTSDetails_90] (@InterfaceID varchar(10), @Version varchar(10), @MultiDbSTSID varchar(10), @LangCode varchar(10)) AS Declare @SearchImage varchar(255) Declare @IsSearchImageDefault bit Declare @ResultImage varchar(255) Declare @IsResultImageDefault bit Declare @Caption nvarchar(255) Declare @IsCaptionDefault bit Declare @MouseOverText nvarchar(255) Declare @IsMouseOverTextDefault bit set @IsSearchImageDefault=0 set @IsResultImageDefault=0 set @IsCaptionDefault=0 set @IsMouseOverTextDefault=0 Select @SearchImage=[dbo].[InterfaceMultiDbSTSList].[SearchImage] from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version and [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID if @SearchImage is NULL-- or @SearchImage='' Begin Select @SearchImage=[dbo].[MultiDbSTSList].[SearchImage] from [dbo].[MultiDbSTSList] where [dbo].[MultiDbSTSList].[MultiDBSTSID]=@MultiDbSTSID Select @IsSearchImageDefault=1 End Select @ResultImage=[dbo].[InterfaceMultiDbSTSList].[ResultImage] from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version and [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID if @ResultImage is NULL-- or @ResultImage='' Begin Select @ResultImage=[dbo].[MultiDbSTSList].[ResultImage] from [dbo].[MultiDbSTSList] where [dbo].[MultiDbSTSList].[MultiDBSTSID]=@MultiDbSTSID Select @IsResultImageDefault=1 End Select @Caption=[imdbsc].[Caption] from [dbo].[InterfaceMultiDbSTSList] imdbsl Join [dbo].[InterfaceMultiDbSTSCaption] imdbsc on imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version and [imdbsl].[MultiDbSTSID]=@MultiDbSTSID and [imdbsc].[LangCode]=@LangCode if @Caption is NULL-- or @Caption='' Begin Select @Caption=[mdbsc].[Caption] from [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where mdbsl.MultiDBSTSID=@MultiDbSTSID and [mdbsc].[LangCode]=@LangCode Select @IsCaptionDefault=1 End Select @MouseOverText=[imdbsc].[MouseOverText] from [dbo].[InterfaceMultiDbSTSList] imdbsl Join [dbo].[InterfaceMultiDbSTSCaption] imdbsc on imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version and [imdbsl].[MultiDbSTSID]=@MultiDbSTSID and [imdbsc].[LangCode]=@LangCode if @MouseOverText is NULL-- or @MouseOverText='' Begin Select @MouseOverText=[mdbsc].[MouseOverText] from [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc on mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where mdbsl.MultiDBSTSID=@MultiDbSTSID and [mdbsc].[LangCode]=@LangCode Select @IsMouseOverTextDefault=1 End Select @SearchImage as SearchImage, @IsSearchImageDefault as IsSearchImageDefault, @ResultImage as ResultImage, @IsResultImageDefault as IsResultImageDefault, [dbo].[InterfaceMultiDbSTSList].[DefValue], @Caption as Caption, @IsCaptionDefault as IsCaptionDefault, @MouseOverText as MouseOverText, @IsMouseOverTextDefault as IsMouseOverTextDefault from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version and [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID
CREATE PROCEDURE [dbo].[EAIS_UpdateEOColTitle_70]( @ColNo int, @PaperISSN varchar(20), @OnlineISSN varchar(20), @JournalTitle nvarchar(200), @EJSJournalID int, @FromDate char(8), @ToDate char(8), @TxnType char(1)) AS BEGIN IF @PaperISSN <> '' BEGIN IF @TxnType = 'd' EXEC [dbo].[EAIS_DelEOColTitle_70] @ColNo, @PaperISSN, @FromDate, @ToDate ELSE EXEC [dbo].[EAIS_AddEOColTitle_70] @ColNo, @PaperISSN, @JournalTitle, @EJSJournalID, @FromDate, @ToDate END IF @OnlineISSN <> '' BEGIN IF @TxnType = 'd' EXEC [dbo].[EAIS_DelEOColTitle_70] @ColNo, @OnlineISSN, @FromDate, @ToDate ELSE EXEC [dbo].[EAIS_AddEOColTitle_70] @ColNo, @OnlineISSN, @JournalTitle, @EJSJournalID, @FromDate, @ToDate END END
CREATE PROCEDURE [dbo].[EPCAS_GetProfDbList](@Profile int, @Label varchar(20), @AuthDbIncluded bit=null) AS BEGIN DECLARE @ClientType varchar(10) SET @ClientType=dbo.EAIF_GetInterfaceClientType_70(@Profile) /* This parameter is removed from Admin, but EPCAS code is still using it */ /* Here it is being reset to the desired value */ SET @AuthDbIncluded=1 SELECT ms.DbName, ms.DisplayName, ms.DbType, 0 Seq1, p.SeqNo Seq2, 0 Seq3 FROM [dbo].[ProfDatabase] p INNER JOIN [dbo].[DbList] ms ON p.DbVerNo = ms.DbVerNo WHERE p.ProfNo = @Profile AND p.Enable <> 0 AND (p.Mode is null OR p.Mode<>'X') AND (p.AccessEndDate is null or datediff(hh, p.AccessEndDate, getdate())<0 ) UNION ALL SELECT DISTINCT ms.DbName, ms.DisplayName, ms.DbType, 1 Seq1, p.SeqNo Seq2, a.SeqNo Seq3 FROM [dbo].[ProfDatabase] p INNER JOIN [dbo].[DbAuthority] a ON p.DbVerNo = a.MainDbVerNo INNER JOIN [dbo].[DbList] ms ON a.AuthDbVerNo = ms.DbVerNo WHERE @AuthDbIncluded <> 0 AND p.ProfNo = @Profile AND p.Enable <> 0 AND (p.Mode is null OR p.Mode<>'X') AND (p.AccessEndDate is null or datediff(hh, p.AccessEndDate, getdate())<0 ) AND @ClientType=CASE WHEN [ms].[WebClient]=1 Then 'web' WHEN [ms].[WinClient]=1 THEN 'win' WHEN [ms].[CharClient]=1 THEN 'char' WHEN [ms].[Z3950Client]=1 THEN 'z3950' END UNION ALL SELECT [ms].[DbName], [ms].[DisplayName], [ms].[DbType], 2 Seq1, 1000 Seq2, 2 Seq3 FROM [dbo].[DbList] ms WHERE [ms].[DbName]='explain' AND [ms].[DbLabel]=@Label ORDER BY Seq1, Seq2, Seq3 END
CREATE FUNCTION dbo.EAIF_GetInterfaceListForDefaultLang_161( @LangCode varchar(10), @startRow INT, @endRow INT ) RETURNS @retTable TABLE (LangCode VARCHAR(10),Interfacelist VARCHAR(max),TotalCount INT) AS BEGIN DECLARE @IntList VARCHAR(8000) SET @IntList='' DECLARE @Count INT SELECT @Count=[temp].[TotalCount], @IntList=@IntList+[temp].[InterfaceID]+'-'+[temp].[Version]+', ' FROM ( SELECT TOP(@endRow) ROW_NUMBER() OVER(ORDER BY [a].[InterfaceID] ) as RowNumber ,COUNT([a].[InterfaceID]) OVER() AS 'TotalCount',[a].[InterfaceID],[a].[Version] FROM [dbo].[InterfaceVersion] a WHERE [a].[DefLangCode]=@LangCode AND [a].[InterfaceID]<>'all' ) AS temp WHERE [temp].[RowNumber] >= @startRow ORDER BY [temp].[InterfaceID] IF(@Count is null) SELECT @Count =COUNT(1) from [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[DefLangCode]=@LangCode AND [dbo].[InterfaceVersion].[InterfaceID]<>'all' INSERT INTO @retTable VALUES(@LangCode, STUFF(@IntList,LEN(@IntList),LEN(@IntList),''),@Count) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamList_97.sql CREATE Procedure dbo.EAUI_GetDbParamList_97 (@SourceType varchar(10), @EditLevel int, @ParamNo int) AS BEGIN Declare @Item char(1) Declare @Table Table (PromptText varchar(255), ParamName varchar(100), ParamNo smallint, EditControl varchar(50), ValueTemplate varchar(1000), [Value] nvarchar(2000), ParamType varchar(100), IsDbCustomized int, SourceType varchar(10), SourceTypeName varchar(max)) Declare ItemCursor Cursor for select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@SourceType,';') open ItemCursor fetch next from ItemCursor into @Item While @@FETCH_STATUS = 0 Begin if @ParamNo=0 Insert @Table SELECT b.PromptText, a.ParamName as ParamName, a.ParamNo, b.EditControl, b.ValueTemplate, ISNULL(c.DefValue,'') as Value, IsNull(d.Description,'Undefined') AS ParamType, dbo.EAIF_CheckIfDbParamIsCustomized_96(a.ParamNo) as IsDbCustomized, a.ParamSourceType, dbo.EAIF_GetSourceNameList_97([a].[ParamSourceType]) as SourceTypeName FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] d ON d.FieldCode=a.ParamType AND d.FieldName='ParamType' Where a.ParamType IN ('B','S','N') and a.ParamSourceType like '%' + @Item + '%' AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) else Insert @Table SELECT b.PromptText, a.ParamName as ParamName, a.ParamNo, b.EditControl, b.ValueTemplate, ISNULL(c.DefValue,'') as Value, IsNull(d.Description,'Undefined') AS ParamType, dbo.EAIF_CheckIfDbParamIsCustomized_96(a.ParamNo) as IsDbCustomized, a.ParamSourceType, dbo.EAIF_GetSourceNameList_97([a].[ParamSourceType]) as SourceTypeName FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] d ON d.FieldCode=a.ParamType AND d.FieldName='ParamType' Where a.ParamType IN ('B','S','N') and a.ParamSourceType like '%' + @Item + '%' AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) and a.ParamNo<>@ParamNo fetch next from ItemCursor into @Item End CLOSE ItemCursor DEALLOCATE ItemCursor select distinct * from @Table order by PromptText END
CREATE PROCEDURE [dbo].[EPLR_GetSubscribedSources_99](@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @TempProxyTargetTypes table ( ItemIndex int identity(1,1) PRIMARY KEY, TargetType varchar(20) ) insert Into @TempProxyTargetTypes select [dbo].[DbSourceTargetTypeList].[TargetType] from [dbo].[DbSourceTargetTypeList] where [dbo].[DbSourceTargetTypeList].[Category]='proxy' and [dbo].[DbSourceTargetTypeList].[EPLRUse]=1 DECLARE @ItemCount int, @ItemIndex int DECLARE @TargetType varchar(20) SELECT @ItemCount = count(*) FROM @TempProxyTargetTypes SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @TargetType =TargetType FROM @TempProxyTargetTypes WHERE ItemIndex=@ItemIndex EXEC [dbo].[EPLR_GetSubscribedSourcesForTargetType_99] @DbName, @DbLabel,@TargetType END END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseScalarParams_70]( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbParamScalarValues] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbParamScalarValues].[ParamNo],[dbo].[DbParamScalarValues].[ParamValue] FROM [dbo].[DbParamScalarValues] WHERE [dbo].[DbParamScalarValues].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceCaptions_70] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10), @Interfacename nvarchar(100), @HelpText nvarchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceLanguage] SET [dbo].[InterfaceLanguage].[InterfaceName]=@Interfacename, [dbo].[InterfaceLanguage].[HelpText]=@HelpText WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version],[dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName], [dbo].[InterfaceLanguage].[HelpText]) VALUES (@InterfaceID, @Version, @LangCode, @Interfacename, @HelpText) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Edit Captions', @InterfaceID, @Version, @LangCode, @Interfacename, @HelpText END
CREATE FUNCTION [dbo].[EAIF_GetProfNo_70](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) RETURNS int AS BEGIN DECLARE @ProfNo int SELECT @ProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF @ProfNo IS NULL AND @ProfID='web' SELECT @ProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]='ehost' RETURN (@ProfNo) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerCollectionList_70](@CustID varchar(20), @UserType int) AS BEGIN IF @UserType = 1 --EP Administrator SELECT a.ColNo, a.ColID, a.ColName, Owned=CASE a.SharedFrom WHEN 0 THEN 'Yes' ELSE 'No' END, Owner=IsNull(b.CustID,'Self'), a.Notes, Hidden=CASE a.Hidden WHEN 1 THEN 'Yes' ELSE 'No' END, a.LastUpdateDate FROM [dbo].[Collection] a LEFT OUTER JOIN [dbo].[Collection] b ON a.SharedFrom = b.ColNo WHERE a.CustID = @CustID AND a.IsDeleted = 0 ORDER BY a.ColID ELSE SELECT a.ColNo, a.ColID, a.ColName, Owned=CASE a.SharedFrom WHEN 0 THEN 'Yes' ELSE 'No' END, Owner=IsNull(b.CustID,'Self'), a.Notes FROM [dbo].[Collection] a LEFT OUTER JOIN [dbo].[Collection] b ON a.SharedFrom = b.ColNo WHERE a.CustID = @CustID AND a.Hidden = 0 AND a.IsDeleted = 0 ORDER BY a.ColID END
CREATE PROCEDURE [dbo].[EAIP_CreatePassword_144] AS BEGIN --Note:Logic taken from EAIPO_CreatePassword_81. This code is not in SVN! I got from EASUPPORT Database on adminsql706. DECLARE @password varchar(100) Declare @out_str varchar(100) DECLARE @len INT -- DE665 Fix:Generates a 15 digit Random password. -- 8 Random Characters + 1 random lowercase alphabet + 4 random special Characters + 1 random lowercase alphabet+ 1 random Upper case alphabet = 15 digit password SET @len = 8 EXEC [dbo].[UTIL_GetRandomString] '0123456789!$%^*()_+=?|][{}ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz', @len, @out_str output SET @password = @out_str -- END --Appending a random lower case alphabet SET @password = @password + CHAR(ROUND(97 + (RAND() * (25)),0)) ----Appending a random special characters EXEC [dbo].[UTIL_GetRandomString] '0123456789!$%^*()_+=?|][{}', 3, @out_str output SET @password = @password + @out_str --Appending a random lower case alphabet SET @password = @password + CHAR(ROUND(97 + (RAND() * (25)),0)) --Appending a random upper case alphabet SET @password = @password + CHAR(ROUND(65 + (RAND() * (25)),0)) --Appending a random number between 0 to 9 SET @password = @password + CHAR(ROUND(48 + (RAND() * (9)),0)) SELECT @password as Password END
CREATE PROCEDURE [dbo].[EAIP_GetDbInterfaceTopicList](@DbVerNo int)AS /** procedure is used by EPCopy **/ BEGIN SELECT distinct pit.InterfaceID, pit.Version, ptl.TopicID, pit.Image, pit.Photo1, pit.Photo2, pit.Photo3, pit.SeqNo, dbo.EAIF_InterfaceTopicLangAndCaptions_77(pit.IntfTopicNo) As Captions, dbo.EAIF_InterfaceTopicLangAndMouseOverTexts_77(pit.IntfTopicNo)As MouseOverTexts, dbo.EAIF_InterfaceTopicLangAndPhotoAltTexts_77(pit.IntfTopicNo)As PhotoAltTexts FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo = ptl.TopicNo INNER JOIN [dbo].[InterfaceTopic] pit ON ptl.TopicNo = pit.TopicNo INNER JOIN [dbo].[DbTopic] db ON db.TopicNo = tl.TopicNo WHERE db.DbVerNo=@DbVerNo UNION ALL SELECT it.InterfaceID, it.Version, tl.TopicID, it.Image, it.Photo1, it.Photo2, it.Photo3, it.SeqNo, dbo.EAIF_InterfaceTopicLangAndCaptions_77(it.IntfTopicNo) As Captions, dbo.EAIF_InterfaceTopicLangAndMouseOverTexts_77(it.IntfTopicNo)As MouseOverTexts, dbo.EAIF_InterfaceTopicLangAndPhotoAltTexts_77(it.IntfTopicNo)As PhotoAltTexts FROM [dbo].[TopicList] tl INNER JOIN [dbo].[InterfaceTopic] it ON tl.TopicNo = it.TopicNo INNER JOIN [dbo].[DbTopic] db ON tl.TopicNo = db.TopicNo WHERE db.DbVerNo=@DbVerNo END
--sql content merged from file: \StoredProcedures\EAUI_PromoteMDbLimiters_89.sql CREATE Procedure [dbo].[EAUI_PromoteMDbLimiters_89] (@UserID nvarchar(20), @userIP varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10), @LimiterNoList varchar(1000)) As Declare @LimiterNo int Declare @NewLimiterNo int Declare @LimiterID varchar(10) Declare @DotPos int Declare @NewLimiterNoList varchar(1000) Begin Try Begin Transaction Set @NewLimiterNoList=@LimiterNoList SELECT @DotPos=charindex('+',@NewLimiterNoList) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @LimiterNo=left(@NewLimiterNoList,@DotPos-1) select @LimiterID=[dbo].[MDbLimiterList].[LimiterID] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo and [dbo].[MDbLimiterList].[DbLabel]=@OldDbLabel if not exists (Select 1 from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID and [dbo].[MDbLimitersExternalSource].[DbLabel]=@NewDbLabel) Begin Delete [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterID]=@LimiterID and [dbo].[MDbLimiterList].[DbLabel]=@NewDbLabel Insert [dbo].[MDbLimiterList] Select [dbo].[MDbLimiterList].[LimiterID], @NewDbLabel, [dbo].[MDbLimiterList].[ControlType], [dbo].[MDbLimiterList].[LogicalOpCode], [dbo].[MDbLimiterList].[SearchString], [dbo].[MDbLimiterList].[AutoAdd], [dbo].[MDbLimiterList].[Description], [dbo].[MDbLimiterList].[EnableQueryMask], [dbo].[MDbLimiterList].[QueryMaskId], [dbo].[MDbLimiterList].[ControlTemplate] From [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo Set @NewLimiterNo=@@Identity insert [dbo].[InterfaceMDbLimiterList] Select [dbo].[InterfaceMDbLimiterList].[IntfScreenNo], @NewLimiterNo From [dbo].[InterfaceMDbLimiterList] Where [dbo].[InterfaceMDbLimiterList].[LimiterNo]=@LimiterNo End Else Begin Update [dbo].[MDbLimiterList] set [ControlType]=a.ControlType, [LogicalOpCode]=a.LogicalOpCode, [SearchString]=a.SearchString, [AutoAdd]=a.AutoAdd, [Description]=a.Description, [EnableQueryMask]=a.EnableQueryMask, [QueryMaskId]=a.QueryMaskId, [ControlTemplate]=a.ControlTemplate from [dbo].[MDbLimiterList] mdbl join (select a.LimiterID, a.ControlType, a.LogicalOpCode, a.SearchString, a.AutoAdd, a.Description, a.EnableQueryMask, a.QueryMaskId, a.ControlTemplate from [dbo].[MDbLimiterList] a join [dbo].[MDbLimiterList] b on a.LimiterID=b.LimiterID where a.DbLabel=@OldDbLabel and b.DbLabel=@NewDbLabel and a.LimiterNo=@LimiterNo) a on mdbl.LimiterID=a.LimiterID End SELECT @NewLimiterNoList=substring(@NewLimiterNoList,@DotPos+1,Len(@NewLimiterNoList)-@DotPos) SELECT @DotPos=charindex('+',@NewLimiterNoList) End If (@NewDbLabel = 'live' AND @OldDbLabel<>'liveQC') Begin exec dbo.EAUI_PromoteMDbLimiters_89 @UserID, @userIP, @OldDbLabel, 'liveQC', @LimiterNoList End Commit Transaction Exec [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbLimiters', 'Promote Limiters', @OldDbLabel, @NewDbLabel End Try Begin Catch Rollback Transaction End Catch
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbList_InterfaceNonSearchDbs(@DbVerNo int) RETURNS XML BEGIN RETURN( SELECT [dbo].[InterfaceNonSearchDbs].[InterfaceID], [dbo].[InterfaceNonSearchDbs].[Version], 0 AS DbVerNo, [dbo].[InterfaceNonSearchDbs].[SeqNo] FROM [dbo].[InterfaceNonSearchDbs] WHERE [dbo].[InterfaceNonSearchDbs].[DbVerNo] = @DbVerNo ORDER BY [dbo].[InterfaceNonSearchDbs].[InterfaceID], [dbo].[InterfaceNonSearchDbs].[Version], DbVerNo, [dbo].[InterfaceNonSearchDbs].[SeqNo] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabasePickupLocation_141]( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @DbLabel varchar(10), @ID nvarchar(255)) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] from dbo.DbList WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @@ROWCOUNT=0 BEGIN RAISERROR('Database name( %s ) label( %s ) does not exist',16,-1, @DbName, @DbLabel) RETURN END DELETE FROM dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@DbVerNo AND ([dbo].[DbPickupLocation].[LocationID]=@ID OR @ID IS NULL) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete PickupLocation', '', @ID END
CREATE Procedure [dbo].[EAIP_CopyMDbAuthorityCaption_90](@MultiDbAuthId varchar(10), @LangCode varchar(50), @LinkText nvarchar(255), @MouseOverText nvarchar(255)) AS BEGIN IF Exists(SELECT 1 FROM [dbo].[MultiDbAuthCaption] WHERE [dbo].[MultiDbAuthCaption].[MultiDbAuthID] = @MultiDbAuthId AND [dbo].[MultiDbAuthCaption].[LangCode] = @LangCode) UPDATE [dbo].[MultiDbAuthCaption] SET [dbo].[MultiDbAuthCaption].[LinkText] = @LinkText, [dbo].[MultiDbAuthCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[MultiDbAuthCaption].[MultiDbAuthID] = @MultiDbAuthId AND [dbo].[MultiDbAuthCaption].[LangCode] = @LangCode ELSE INSERT INTO [dbo].[MultiDbAuthCaption] ([dbo].[MultiDbAuthCaption].[MultiDbAuthID], [dbo].[MultiDbAuthCaption].[LangCode], [dbo].[MultiDbAuthCaption].[LinkText], [dbo].[MultiDbAuthCaption].[MouseOverText]) VALUES (@MultiDbAuthId, @LangCode, @LinkText, @MouseOverText) END
CREATE PROCEDURE [dbo].[EPC_PromoteAndNotifyDatabase_103]( @UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10) ) AS BEGIN DECLARE @LogMessage varchar(15) SELECT @LogMessage='From '+@OldDbLabel DECLARE @OldDbVerNo int SET @OldDbVerNo = dbo.EAIF_GetDbVerNo_70(@DbName,@OldDbLabel) EXEC dbo.EAIP_PromoteDatabase_141 @OldDbVerNo, @DbName, @NewDbLabel, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1 IF (@@ERROR <> 0 ) BEGIN RAISERROR ('Could not promote to %s %s.',16,-1,@DbName,@NewDbLabel) RETURN END DECLARE @Query varchar(250) SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo))>0 ) SET @Query = @Query+'&SegName='+ dbo.EAIF_GetDbPromoteSegmentList_80(@OldDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','PromoteDatabase',@Query,@DbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','DatabaseInfo', 'item=db&db={param1}&label={param2}',@DbName,@NewDbLabel IF EXISTS (SELECT 1 FROM dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@OldDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','PickupLoc', 'item=db&db={param1}&label={param2}',@DbName,@NewDbLabel --Notify all authorities - see EHPMADMIND-515 DECLARE @TempDb table( ItemIndex int identity(1,1) PRIMARY KEY, DbName varchar(10), DbVerNo int NULL ) Insert into @TempDb(DbName) select da.DbName from [dbo].[DbList] d join [dbo].[DbAuthority] a on d.DbVerNo=a.MainDbVerNo join [dbo].[DbList] da on a.AuthDbVerNo=da.DbVerNo where d.DbName=@DbName and d.DbLabel=@NewDbLabel and da.DbType<>4 DECLARE @ItemCount int, @ItemIndex int DECLARE @AuthDbName varchar(10) SELECT @ItemCount = count(*) FROM @TempDb SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @AuthDbName=DbName FROM @TempDb Where ItemIndex=@ItemIndex EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','DatabaseInfo', 'item=db&db={param1}&label={param2}',@AuthDbName,@NewDbLabel END -- Notify all Subset Databases Delete @TempDb Insert @TempDb (DbName, DbVerNo) Select Dbl.DbName, dbl.DbVerNo from [dbo].[DbList] dbl join [dbo].[DbSubset] dbs on dbl.DbVerNo=dbs.SubsetDbVerNo and dbs.PhysDbVerNo=dbo.EAIF_GetDbVerNo_70(@DbName,@NewDbLabel) DECLARE @SubsetDbName varchar(10) Declare @SubsetDbVerNo int SELECT @ItemCount = count(*) FROM @TempDb SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @SubsetDbName=DbName FROM @TempDb Where ItemIndex=@ItemIndex Select @SubsetDbVerNo=DbVerNo FROM @TempDb Where ItemIndex=@ItemIndex SET @Query = 'item=PromoteDatabase&DbName={param1}&OldLabel={param2}&NewLabel={param3}' IF ( LEN(dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo))>0 ) SET @Query = @Query+'&SegName='+ dbo.EAIF_GetDbPromoteSegmentList_80(@SubsetDbVerNo) EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','PromoteDatabase',@Query,@SubsetDbName,@OldDbLabel,@NewDbLabel EXEC EASUPPORT.dbo.EAIP_NotifyAppServers_76 'system','DatabaseInfo', 'item=db&db={param1}&label={param2}',@SubsetDbName,@NewDbLabel End EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Database','Promote',@DbName,@NewDbLabel,@LogMessage END
CREATE PROCEDURE [dbo].[EAUI_GetProfileChildrenParamList_83] (@ParentParamName varchar(100), @ProfNo int) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char Select @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID], @STMode = [dbo].[Profile].[STMode] From [dbo].[Profile] Where [dbo].[Profile].[ProfNo] = @ProfNo Select cpl.ParamNo, cpl.ParamName, -- isnull(icped.PromptText, cped.PromptText) PromptText, -- isnull(icped.HelpText, cped.HelpText) HelpText, cped.PromptText, cped.HelpText, cped.EditSubGroup, cped.EditControl, -- isnull(icped.ValueTemplate, cped.ValueTemplate) ValueTemplate, cped.ValueTemplate, ISNULL(ISNULL(cpsv.ParamValue,cpd.DefValue),cpl.DefValue) as Value, cpl.ParamType, ISNULL(cped.ProcInfo,'') as ProcInfo, -- ISNULL(IsNull(icped.HintText, cped.HintText),'') as HintText, ISNULL(cped.HintText,'') as HintText, (SELECT Count(cplc.ParamNo) FROM [dbo].[CustomParamList] cplc WHERE cplc.ParentParamNo = cpl.ParamNo) as HasChildParams, [cped].[HierarchyDisplayOptions], isnull(cped.ChildParamGroupHeading, '') ChildParamGroupHeading, case when (Select [cpsv].[ParamValue] from [dbo].[CustomParamScalarValues] cpsv where [cpsv].[TargetNo]=@ProfNo and [cpsv].[ParamLevel] = 'P' and cpsv.ParamNo=cped.ParamNo) is null then 1 else 0 end as IsDefault, IsNull(IsNull(cpd.DefValuePrefix,cpl.DefValuePrefix),N'') as DefValuePrefix, ISNULL(ipl.EditLevel, ipl2.EditLevel) AS EditLevel From [dbo].[CustomParamList] parent Inner Join [dbo].[CustomParamList] cpl On cpl.ParentParamNo = parent.ParamNo Inner Join [dbo].[CustomParamEditDetail] cped On cped.ParamNo = cpl.ParamNo And cped.EditControl != '''' Left Outer Join [dbo].[CustomParamDefaults] cpd On cpd.ParamNo = cpl.ParamNo And cpd.InterfaceID = @InterfaceID And cpd.Version = @Version And cpd.MarketID = @MarketID And cpd.STMode = @STMode Left Outer Join [dbo].[CustomParamScalarValues] cpsv On cpsv.TargetNo = @ProfNo And cpsv.ParamNo = cpl.ParamNo Left Outer Join [dbo].[InterfaceParamList] ipl On ipl.ParamNo = cpl.ParamNo and ipl.Version = @Version and ipl.InterfaceID = @InterfaceID Left Outer Join [dbo].[InterfaceParamList2] ipl2 On ipl2.ParamNo = cpl.ParamNo and ipl2.Version = @Version and ipl2.InterfaceID = @InterfaceID and ipl2.Mode = @STMode -- Left Outer Join InterfaceCustomParamEditDetail icped on cpl.ParamNo=icped.ParamNo and icped.InterfaceID=@InterfaceID and icped.Version=@Version Where parent.ParamName = @ParentParamName AND NOT (ipl.EditLevel is null AND ipl2.EditLevel is null) Order By cped.SeqNo SELECT IsNull([cped].[ChildEditPromptText], [cped].[PromptText]) ParentPromptText, cplParent.ParamName Parent2ParamName, cpl.ParentParamNo Parent2ParamNo, ISNULL(cped.HelpLinkClassID, '') HelpLinkClassID FROM [dbo].[CustomParamEditDetail] cped INNER JOIN [dbo].[CustomParamList] cpl ON cped.ParamNo = cpl.ParamNo LEFT OUTER JOIN [dbo].[CustomParamList] cplParent ON cpl.ParentParamNo = cplParent.ParamNo WHERE cpl.ParamName = @ParentParamName select distinct isnull(cped2.ChildParamGroupHeading, cped.PromptText) Heading, ISNULL(cped2.ChildParamGroupHeadingSeqNo, 1) SeqNo from [dbo].[CustomParamList] cpl join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo=cped.ParamNo join [dbo].[CustomParamList] cpl2 on cpl.ParamNo=cpl2.ParentParamNo join [dbo].[CustomParamEditDetail] cped2 on cpl2.ParamNo=cped2.ParamNo where cpl.ParamName=@ParentParamName order by ISNULL(cped2.ChildParamGroupHeadingSeqNo, 1) END
--updated to set show atttribute to 0 for hidden limiters CREATE PROCEDURE [dbo].[EAUI_AddDbInterfaceLimiters_76] (@UserID nvarchar(20), @UserIP varchar(15),@DbVerNo int, @ScreenNo int, @GroupNo int, @LimiterList varchar(2000) ) AS BEGIN DECLARE @DbName varchar(10) DECLARE @DbLabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[DbInterfaceLimiter].[SeqNo])+1 FROM [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[DbVerNo]=@DbVerNo AND [dbo].[DbInterfaceLimiter].[IntfScreenNo]=@ScreenNo AND ([dbo].[DbInterfaceLimiter].[GroupNo] is null OR [dbo].[DbInterfaceLimiter].[GroupNo]=@GroupNo) SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) IF @GroupNo=-1 SELECT @GroupNo=null BEGIN TRANSACTION INSERT INTO [dbo].[DbInterfaceLimiter] ([dbo].[DbInterfaceLimiter].[DbVerNo], [dbo].[DbInterfaceLimiter].[IntfScreenNo], [dbo].[DbInterfaceLimiter].[LimiterNo], [dbo].[DbInterfaceLimiter].[GroupNo], [dbo].[DbInterfaceLimiter].[Show], [dbo].[DbInterfaceLimiter].[DefValue], [dbo].[DbInterfaceLimiter].[SeqNo]) SELECT @DbVerNo, @ScreenNo, CONVERT(int, a.Item), @GroupNo, CASE WHEN ll.BitFlag1 = 1 THEN 0 ELSE 1 END, ISNULL(dl.DefValue, ''), a.Num FROM [dbo].[DbLimiter] dl INNER JOIN dbo.EAIF_GetEnumValueTable_70(@LimiterList, '+', @NextSeqNo, 1) a ON dl.LimiterNo = CONVERT(int, a.Item) INNER JOIN [dbo].[LimiterList] ll ON dl.LimiterNo = ll.LimiterNo WHERE dl.DbVerNo = @DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@LimiterList,1,1024),'+',',') IF DATALENGTH(@LimiterList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@LimiterList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Limiter','Add DBInterface Limiters', @DbName,@DbLabel,@Plist1,@Plist2 COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EPCS_GetProfDbGroups_86.sql CREATE PROCEDURE [dbo].[EPCS_GetProfDbGroups_86](@CustId varchar(10), @GroupID varchar(10), @ProfID varchar(10))AS BEGIN DECLARE @ProfNo int, @showDefaultGroups varchar (10), @showIntegratedSearchPanel varchar (5), @SourcetypeTobeIgnored char(1) Select @SourcetypeTobeIgnored='' SELECT @ProfNo=dbo.EAIF_GetProfNo_70(@CustId,@GroupID,@ProfID) SELECT @showIntegratedSearchPanel=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'showIntegratedSearchPanel') -- If the ShowIntegratedSearchPanel is turned off, Connectors needs to be filtered out -- from the customized db groups If @showIntegratedSearchPanel = '0' SET @SourcetypeTobeIgnored='M' -- Get the Param Value SET @showDefaultGroups=dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo,'showDefaultEPDatabaseGroup') IF @showDefaultGroups = '0' -- Do not show Default EPDatabase Groups BEGIN SELECT * FROM ( SELECT CONVERT( varchar, pg.GroupNo) AS GroupID, 'C' AS GroupType, dbo.EAIF_GetProfCustGroupCaptions_86(@ProfNo, pg.GroupNo) AS Captions, dbo.EAIF_GetProfCustGroupShortDbList_86(@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) AS Dbs, dbo.EAIF_GetProfCustGroupDbInfo_92 (@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) As GroupDbs, ISNULL(pg.SeqNo,0) As SeqNo, CASE pg.SelDefault WHEN 1 THEN 'Y' ELSE 'N' END as SelDefault FROM [dbo].[ProfCustGroupList] pg WHERE pg.ProfNo = @ProfNo AND pg.Show=1 ) a Where [a].[Dbs] <> ',' ORDER BY [a].[SeqNo] -- Note : Dbs check was added due to the new parameter '@showIntegratedSearchPanel'. If it is turned off -- customized groups containing only external connectors was showing up as empty group in EPClient. END ELSE -- Show Default EP Database Groups i.e. @showDefaultGroups = '1' BEGIN Select * from ( SELECT CONVERT( varchar, pg.GroupNo) AS GroupID, 'C' AS GroupType, dbo.EAIF_GetProfCustGroupCaptions_86(@ProfNo, pg.GroupNo) AS Captions, dbo.EAIF_GetProfCustGroupShortDbList_86(@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) AS Dbs, dbo.EAIF_GetProfCustGroupDbInfo_92 (@ProfNo, pg.GroupNo,@SourcetypeTobeIgnored) As GroupDbs, ISNULL(pg.SeqNo,0) As SeqNo, CASE pg.SelDefault WHEN 1 THEN 'Y' ELSE 'N' END as SelDefault FROM [dbo].[ProfCustGroupList] pg WHERE pg.ProfNo = @ProfNo AND pg.Show=1 ) a Where [a].[Dbs] <> ',' UNION ALL SELECT distinct gl.GroupID, 'G' AS GroupType, dbo.EAIF_GetProfGroupCaptions_86(@ProfNo, gl.GroupNo) AS Captions, dbo.EAIF_GetProfGroupShortDbList_86(@ProfNo, gl.GroupNo) AS Dbs, dbo.EAIF_GetProfGroupDbInfo_92 (@ProfNo, gl.GroupNo) As GroupDbs, ISNULL(pgl.SeqNo, 0) AS SeqNo, CASE pgl.SelDefault WHEN 1 THEN 'Y' ELSE 'N' END as SelDefault FROM [dbo].[GroupList] gl LEFT OUTER JOIN [dbo].[ProfGroupList] pgl ON pgl.ProfNo=@ProfNo AND gl.GroupNo=pgl.GroupNo INNER JOIN [dbo].[DbGroup] gdb ON gl.GroupNo = gdb.GroupNo INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = gdb.DbVerNo WHERE pdb.ProfNo=@ProfNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) AND (pgl.Show is null OR pgl.Show=1) ORDER BY [a].[SeqNo] END END
CREATE PROCEDURE [dbo].[BLL_GetDBCtrlID](@CustID as varchar(10), @GroupID as varchar(10), @ProfID as varchar(10) ) AS BEGIN Declare @EnforceSimUsage int SET @EnforceSimUsage = dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'EnforceSimUsage') SELECT m.DbName as 'shortdbname', CtrlCustId = CASE @EnforceSimUsage WHEN 1 THEN pd.CtrlCustID ELSE '' END, pd.SelDefault FROM [dbo].[ProfDatabase] pd INNER JOIN [dbo].[Profile] p ON pd.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] m ON m.DbVerNo = pd.DbVerNo WHERE p.CustID=@CustID AND p.GroupID=@GroupID AND p.ProfID=@ProfID AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceMDbSTSList_90] (@InterfaceID varchar(10), @Version varchar(10)) AS SELECT mdbsl.MultiDBSTSID , IsNull((Select [imdbsc].[Caption] from [dbo].[InterfaceMultiDbSTSCaption] imdbsc where imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo and [InterfaceID]=@InterfaceID and [Version]=@Version and [imdbsc].[LangCode]='en'), msdsc.Caption) Caption , mdbsl.Description , [imdbsl].[SeqNo] FROM [dbo].[MultiDbSTSList] mdbsl INNER JOIN [dbo].[MultiDbSTSCaption] msdsc ON mdbsl.MultiDBSTSID = msdsc.MultiDBSTSID INNER JOIN [dbo].[InterfaceMultiDbSTSList] imdbsl ON mdbsl.MultiDBSTSID = imdbsl.MultiDbSTSID WHERE msdsc.LangCode = 'en' AND imdbsl.InterfaceID = @InterfaceID AND imdbsl.Version = @Version ORDER BY imdbsl.SeqNo, imdbsl.MultiDbSTSID
CREATE PROCEDURE [dbo].[EAIS_UpdateESSLocalTitle_70]( @Account varchar(5), @SubCode varchar(2), @ISSN varchar(20) ) AS BEGIN DECLARE @ColNo int DECLARE @TitleNo int DECLARE @YesMsgNo int DECLARE @NoMsgNo int DECLARE @CustID varchar(10) SELECT @ColNo = [col].[ColNo], @CustID = es.CustID FROM EASUPPORT.dbo.ESSCollection es INNER JOIN dbo.Collection col ON es.CustID = col.CustID AND es.ColID = col.ColID WHERE es.ESSAccount = @Account AND es.SubscrCode = @SubCode IF @ColNo IS NOT NULL BEGIN SELECT @TitleNo =.dbo.EAIF_GetTitleNo_70(@ISSN) IF @TitleNo is not null BEGIN EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID, 'This title is held locally', @YesMsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID, 'This title is not held locally',@NoMsgNo OUTPUT EXEC [dbo].[EAIP_AddModLocalTitle_70] @ColNo,@TitleNo,1,@YesMsgNo,@NoMsgNo,NULL,NULL,NULL SELECT 1 END ELSE SELECT 0,'ISSN not found in EBSCOadmin database' END ELSE SELECT 0, 'No Matching collection for this account' END
CREATE PROCEDURE [dbo].[EPCAS_GetProfForDB](@CustID varchar(10), @GroupID varchar(10), @ShortDB varchar(10), @DbLabel varchar(10)='live' ) AS BEGIN DECLARE @ProfNo int DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDB AND [dbo].[DbList].[DbLabel]=@DbLabel SELECT @ProfNo=a.ProfNo FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.InterfaceID='ehost' AND b.Enable=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) AND b.DbVerNo=@DbVerNo ORDER BY a.SeqNo IF @ProfNo is NULL SELECT @ProfNo=a.ProfNo FROM [dbo].[Profile] a INNER JOIN [dbo].[ProfDatabase] b ON a.ProfNo=b.ProfNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.InterfaceID NOT IN ( 'unix', 'win','z3950') AND b.Enable=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) AND b.DbVerNo=@DbVerNo SELECT [dbo].[Profile].[ProfID], [dbo].[Profile].[ProfPwd] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo END
--sql content merged from file: \Functions\EAIF_GetInterfaceTblParamItemsForProfDB_90.sql CREATE Function [dbo].[EAIF_GetInterfaceTblParamItemsForProfDB_90] ( @InterfaceID varchar(10), @Version varchar(10), @ProfNo int) RETURNS @ItemsTable TABLE ( ParamNo int, ItemID VARCHAR(10))AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[InterfaceParamList] ip ON f.ParamNo=ip.ParamNo WHERE f.FieldType='SD' AND ip.InterfaceID=@InterfaceID AND ip.Version=@Version ) BEGIN INSERT INTO @ItemsTable SELECT f.ParamNo, it.ItemID FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[InterfaceParamList] ip ON f.ParamNo=ip.ParamNo INNER JOIN [dbo].[CustomParamTblItems] it ON f.ParamNo=it.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON it.ParamNo=ii.ParamNo AND it.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version WHERE ip.InterfaceID=@InterfaceID AND ip.Version=@Version AND (it.AutoAddToInterface =1 OR ii.ParamNo is not null) AND f.ReturnToClient=1 RETURN END INSERT INTO @ItemsTable SELECT f.ParamNo,i.ItemID FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[InterfaceParamList] ip ON f.ParamNo=ip.ParamNo INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo=i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON f.ParamNo= v.ParamNo AND i.ItemID=v.ItemID AND f.FieldNo=v.FieldNo WHERE ip.InterfaceID=@InterfaceID AND ip.Version=@Version AND f.FieldType='SD' AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) AND f.ReturnToClient=1 AND v.DbName in ( SELECT db.DbName FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfDatabase] pdb ON db.DbVerNo=pdb.DbVerNo WHERE pdb.ProfNo = @ProfNo AND pdb.Enable=1 and (pdb.Mode is null or pdb.Mode<>'X') and (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) UNION ALL SELECT db2.DbName FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfDatabase] pdb ON db.DbVerNo=pdb.DbVerNo INNER JOIN [dbo].[DbAuthority] dba ON db.DbVerNo= dba.MainDbVerNo INNER JOIN [dbo].[DbList] db2 ON dba.AuthDbVerNo=db2.DbVerNo WHERE pdb.ProfNo = @ProfNo AND pdb.Enable=1 AND (pdb.Mode is null or pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) ) UNION ALL SELECT f.ParamNo,i.ItemID FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[InterfaceParamList] ip ON f.ParamNo=ip.ParamNo INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo=i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON v.ParamNo=i.ParamNo AND i.ItemID=v.ItemID LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version WHERE ip.InterfaceID=@InterfaceID AND ip.Version=@Version AND f.FieldType='SD' AND v.ParamNo is null and (i.AutoAddToInterface =1 OR ii.ParamNo is not null) AND f.ReturnToClient=1 INSERT INTO @ItemsTable SELECT distinct f.ParamNo, it.ItemID FROM [dbo].[CustomParamXmlFields] f LEFT OUTER JOIN [dbo].[CustomParamXmlFields] f2 ON f.ParamNo=f2.ParamNo AND f2.FieldType='SD' INNER JOIN [dbo].[InterfaceParamList] ip ON f.ParamNo=ip.ParamNo INNER JOIN [dbo].[CustomParamTblItems] it ON f.ParamNo=it.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON it.ParamNo=ii.ParamNo AND it.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version WHERE ip.InterfaceID=@InterfaceID AND ip.Version=@Version AND f2.ParamNo is null and (it.AutoAddToInterface =1 OR ii.ParamNo is not null) AND f.ReturnToClient=1 RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamListBySeqNo_97.sql CREATE Procedure dbo.EAUI_GetDbParamListBySeqNo_97(@SourceType varchar(10), @EditLevel int, @ParamNo int) AS BEGIN Declare @Item char(1) Declare @Table Table (PromptText varchar(255), ParamName varchar(100), ParamNo smallint, EditControl varchar(50), ValueTemplate varchar(1000), [Value] nvarchar(2000), ParamType varchar(100), IsDbCustomized int, SourceType varchar(10), SourceTypeName varchar(max), SeqNo int) Declare ItemCursor Cursor for select [dbo].[EAIF_GetItemTable_70].[Item] from dbo.EAIF_GetItemTable_70(@SourceType,';') open ItemCursor fetch next from ItemCursor into @Item While @@FETCH_STATUS = 0 Begin if @ParamNo=0 Insert @Table SELECT b.PromptText, a.ParamName as ParamName, a.ParamNo, b.EditControl, b.ValueTemplate, ISNULL(c.DefValue,'') as Value, IsNull(d.Description,'Undefined') AS ParamType, dbo.EAIF_CheckIfDbParamIsCustomized_96(a.ParamNo) as IsDbCustomized, a.ParamSourceType, dbo.EAIF_GetSourceNameList_97([a].[ParamSourceType]) as SourceTypeName, b.SeqNo FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] d ON d.FieldCode=a.ParamType AND d.FieldName='ParamType' Where a.ParamType IN ('B','S','N') and a.ParamSourceType like '%' + @Item + '%' AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) else Insert @Table SELECT b.PromptText, a.ParamName as ParamName, a.ParamNo, b.EditControl, b.ValueTemplate, ISNULL(c.DefValue,'') as Value, IsNull(d.Description,'Undefined') AS ParamType, dbo.EAIF_CheckIfDbParamIsCustomized_96(a.ParamNo) as IsDbCustomized, a.ParamSourceType, dbo.EAIF_GetSourceNameList_97([a].[ParamSourceType]) as SourceTypeName, b.SeqNo FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] d ON d.FieldCode=a.ParamType AND d.FieldName='ParamType' Where a.ParamType IN ('B','S','N') and a.ParamSourceType like '%' + @Item + '%' AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) and a.ParamNo<>@ParamNo fetch next from ItemCursor into @Item End CLOSE ItemCursor DEALLOCATE ItemCursor select distinct * from @Table order by SeqNo END
--Do not execute within a transaction. CREATE PROCEDURE [dbo].[UTIL_AddContentFilters_234] @ContentFilterListIDs VARCHAR(MAX), @CustIDAndProfNoToAdd [dbo].[CustIDAndProfNoType] READONLY, @BatchSize INT = 100, @WaitForReplicationSec INT = 10 AS BEGIN IF NOT EXISTS ( SELECT NULL FROM sys.schemas WHERE name = 'BACK' ) BEGIN EXEC('CREATE SCHEMA BACK'); END IF NOT EXISTS (SELECT NULL FROM sys.tables st WHERE st.name = 'UTIL_AddContentFilters_234') CREATE TABLE BACK.UTIL_AddContentFilters_234 ( CustID VARCHAR (10) NOT NULL, ContentFilters VARCHAR(MAX) NOT NULL, ErrorMessage NVARCHAR(4000), DateCreated DATETIME DEFAULT (GETDATE()) NOT NULL ); -- In this case, the temporary table has better performance results. SELECT [CustID], [ProfNo], [InterfaceID], [Version] INTO #CustIDAndProfNoToAdd FROM @CustIDAndProfNoToAdd CREATE NONCLUSTERED INDEX [CustID_Index] ON #CustIDAndProfNoToAdd ([CustID]) DECLARE @ContentFilterNos TABLE(ContentFilterNo INT) INSERT @ContentFilterNos (ContentFilterNo) SELECT ContentFilterNo FROM dbo.ContentFilterList cfl INNER JOIN STRING_SPLIT(@ContentFilterListIDs, ',') id ON id.value = cfl.ContentFilterListID DECLARE @ParamNo_ContentFilter SMALLINT = [dbo].[EAIF_GetCustomParamNumber_70]('contentFiltersAsLimiters', 'P') IF @ParamNo_ContentFilter IS NULL RETURN DECLARE @CustID VARCHAR(10) DECLARE CustID_cursor CURSOR FAST_FORWARD FOR SELECT DISTINCT CustID FROM #CustIDAndProfNoToAdd c WHERE NOT EXISTS ( SELECT NULL FROM @ContentFilterNos f INNER JOIN dbo.CustContentFilters ccf ON ccf.ContentFilterNo = f.ContentFilterNo AND ccf.CustID = c.CustID INNER JOIN dbo.ProfContentFilters pcf ON pcf.CustContentFilterNo = ccf.CustContentFilterNo AND pcf.ProfNo = c.ProfNo ) OPEN CustID_cursor FETCH NEXT FROM CustID_cursor INTO @CustID WHILE @@FETCH_STATUS = 0 BEGIN BEGIN TRY DECLARE @IsOuterTransactionExisting BIT --Check for a tSQLt transaction. IF @@TRANCOUNT > 0 SET @IsOuterTransactionExisting = 1 ELSE SET @IsOuterTransactionExisting = 0 IF @IsOuterTransactionExisting = 1 SAVE TRANSACTION CustSave ELSE BEGIN TRANSACTION; DECLARE @TransId BIGINT = CURRENT_TRANSACTION_ID() DECLARE @CustContentFilterNos TABLE(CustContentFilterNo INT) MERGE dbo.CustContentFilters as [Target] USING (SELECT ContentFilterNo FROM @ContentFilterNos) AS [Source] (ContentFilterNo) ON [Target].ContentFilterNo = [Source].ContentFilterNo AND [Target].CustID = @CustID WHEN NOT MATCHED THEN INSERT (ContentFilterNo, CustID) VALUES ([Source].ContentFilterNo, @CustID); INSERT INTO @CustContentFilterNos SELECT CustContentFilterNo FROM dbo.CustContentFilters ccf INNER JOIN @ContentFilterNos cfn ON ccf.ContentFilterNo = cfn.ContentFilterNo WHERE ccf.CustID = @CustID MERGE dbo.ProfContentFilters AS [Target] USING ( SELECT cp.ProfNo, [is].IntfScreenNo, cn.CustContentFilterNo FROM #CustIDAndProfNoToAdd cp INNER JOIN dbo.InterfaceScreen [is] ON cp.InterfaceID = [is].InterfaceID AND cp.Version = [is].Version INNER JOIN dbo.InterfaceParamList ipl ON cp.InterfaceID = ipl.InterfaceID AND cp.Version = ipl.Version AND ipl.ParamNo = @ParamNo_ContentFilter CROSS JOIN @CustContentFilterNos cn WHERE cp.CustID = @CustID ) AS [Source] (ProfNo, IntfScreenNo, CustContentFilterNo) ON [Source].ProfNo = [Target].ProfNo AND [Target].IntfScreenNo = [Source].IntfScreenNo AND [Target].CustContentFilterNo = [Source].CustContentFilterNo WHEN NOT MATCHED THEN INSERT (ProfNo, IntfScreenNo, CustContentFilterNo, DefValue) VALUES ([Source].ProfNo, [Source].IntfScreenNo, [Source].CustContentFilterNo, 'On'); INSERT INTO BACK.UTIL_AddContentFilters_234 (CustID, ContentFilters) VALUES (@CustID, @ContentFilterListIDs) IF @IsOuterTransactionExisting = 0 COMMIT TRANSACTION; EXEC [dbo].[UTIL_WaitForReplicationComplete_224] @XactId = @TransId, @WaitSec = @WaitForReplicationSec END TRY BEGIN CATCH IF @IsOuterTransactionExisting = 0 ROLLBACK TRANSACTION; ELSE IF XACT_STATE() <> -1 ROLLBACK TRANSACTION CustSave; INSERT INTO BACK.UTIL_AddContentFilters_234 (CustID, ContentFilters, ErrorMessage) VALUES (@CustID, @ContentFilterListIDs, ERROR_MESSAGE()) END CATCH DELETE @CustContentFilterNos FETCH NEXT FROM CustID_cursor INTO @CustID END CLOSE CustID_cursor DEALLOCATE CustID_cursor END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseSearchConceptMapping_131](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN IF NOT EXISTS (SELECT 1 FROM dbo.DbSearchContextMapping WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@OldDbVerNo) DELETE [dbo].[DbSearchContextMapping] WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@NewDbVerNo ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[DbSearchContextMapping] WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@NewDbVerNo) INSERT INTO [dbo].[DbSearchContextMapping]([dbo].[DbSearchContextMapping].[DbVerNo], [dbo].[DbSearchContextMapping].[ContextName], [dbo].[DbSearchContextMapping].[ConceptName], [dbo].[DbSearchContextMapping].[SearchTag]) SELECT @NewDbVerNo, [dbo].[DbSearchContextMapping].[ContextName], [dbo].[DbSearchContextMapping].[ConceptName], [dbo].[DbSearchContextMapping].[SearchTag] FROM [dbo].[DbSearchContextMapping] WHERE [dbo].[DbSearchContextMapping].[DbVerNo] = @OldDbVerNo ELSE BEGIN -- first remove the existing record for the db being promoted to DELETE FROM dbo.DbSearchContextMapping WHERE [dbo].[DbSearchContextMapping].[DbVerNo] = @NewDbVerNo -- now insert the new values for that DbVerNo INSERT INTO dbo.DbSearchContextMapping ( [dbo].[DbSearchContextMapping].[DbVerNo] , [dbo].[DbSearchContextMapping].[ContextName] , [dbo].[DbSearchContextMapping].[ConceptName] , [dbo].[DbSearchContextMapping].[SearchTag] ) SELECT @NewDbVerNo, [dbo].[DbSearchContextMapping].[ContextName], [dbo].[DbSearchContextMapping].[ConceptName], [dbo].[DbSearchContextMapping].[SearchTag] FROM [dbo].[DbSearchContextMapping] WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@OldDbVerNo END END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceCaptions_76] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10), @Interfacename nvarchar(100), @HelpText nvarchar(255),@LinkText nvarchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceLanguage] SET [dbo].[InterfaceLanguage].[InterfaceName]=@Interfacename, [dbo].[InterfaceLanguage].[HelpText]=@HelpText, [dbo].[InterfaceLanguage].[LinkText]=@LinkText WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceLanguage] ([dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version],[dbo].[InterfaceLanguage].[LangCode], [dbo].[InterfaceLanguage].[InterfaceName], [dbo].[InterfaceLanguage].[HelpText], [dbo].[InterfaceLanguage].[LinkText]) VALUES (@InterfaceID, @Version, @LangCode, @Interfacename, @HelpText, @LinkText) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Edit Captions', @InterfaceID, @Version, @LangCode, @Interfacename, @LinkText END
CREATE FUNCTION [dbo].[EAIF_GetProfTopDbLimiterCaption_70](@ProfNo int, @LimiterNo int, @LangCode varchar(10)) RETURNS nvarchar(100) AS BEGIN DECLARE @DbVerNo int SELECT TOP 1 @DbVerNo=a.DbVerNo FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbLimiter] b ON a.DbVerNo=b.DbVerNo WHERE [a].[ProfNo]=@ProfNo AND b.LimiterNo=@LimiterNo AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) ORDER BY a.SeqNo RETURN dbo.EAIF_GetProfDbLimiterCaption_70(@ProfNo, @DbVerNo, @LimiterNo, @LangCode) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerCollectionListToShare_70] (@CustID varchar(20)) AS BEGIN SELECT a.ColNo, a.ColID, a.ColName FROM [dbo].[Collection] a WHERE a.CustID = @CustID AND a.SharedFrom=0 AND a.Hidden=0 AND a.IsDeleted = 0 order by a.ColID END
--sql content merged from file: \StoredProcedures\EAIP_Customer_Persist.sql CREATE PROCEDURE [dbo].[EAIP_Customer_Persist] @CustNo int = NULL, @CustID varchar(10), @CustName nvarchar(100), @CustType char(1), @MarketID varchar(20), @Status char(1), @Consortium bit, @UserId nvarchar(20) = null, @UserIp varchar(15) = null AS IF @CustNo IS NULL BEGIN INSERT INTO [dbo].[Customer] ( [dbo].[Customer].[CustID], [dbo].[Customer].[CustName], [dbo].[Customer].[CustType], [dbo].[Customer].[MarketID], [dbo].[Customer].[Status], [dbo].[Customer].[Consortium] , [dbo].[Customer].[TimeStamp] ) VALUES ( @CustID, @CustName, @CustType, @MarketID, @Status, @Consortium ,GETDATE() ) SELECT @CustNo = SCOPE_IDENTITY() IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Customer', 'Insert Customer', @CustID, @CustName, @CustType, @MarketID, @Status END END ELSE BEGIN UPDATE [dbo].[Customer] SET [dbo].[Customer].[CustID] = @CustID, [dbo].[Customer].[CustName] = @CustName, [dbo].[Customer].[CustType] = @CustType, [dbo].[Customer].[MarketID] = @MarketID, [dbo].[Customer].[Status] = @Status, [dbo].[Customer].[Consortium] = @Consortium , [dbo].[Customer].[TimeStamp] = GETDATE() WHERE [dbo].[Customer].[CustNo] = @CustNo IF @UserId IS NOT NULL AND @UserIp IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer', 'Update Customer', @CustID, @CustName, @CustType, @MarketID, @Status END END SELECT @CustNo
Create Procedure [dbo].[EAIP_GetDbNames_91] @DbLabel varchar(10) as IF @DbLabel = 'custom' Begin SELECT l.DisplayName, l.DbName FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType WHERE [l].[DbLabel] not in ('live', 'liveQC', 'rebuild', 'rebuildQC') ORDER BY l.DisplayName Return End Else Begin If @DbLabel='All' Begin SELECT Distinct l.DisplayName, l.DbName FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType WHERE [l].[DbLabel] in ('live', 'liveQC', 'rebuild', 'rebuildQC') ORDER BY l.DisplayName Return End ELSE Begin SELECT l.DisplayName, l.DbName FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType WHERE [l].[DbLabel] = @DbLabel ORDER BY l.DisplayName Return End End
CREATE PROCEDURE [dbo].[EAUI_RebuildLocalLimiter_70](@UserID nvarchar(20), @UserIP varchar(15), @ColNo int , @Email nvarchar(200)) AS BEGIN --Chandra - 08/1/06 - @ReqType has been hardcoded as 'C' until we enhance Admin UI for EJS collections -- if the request is from Customer collection set to to 'C' or if it is from EJS collection set to 'E' EXEC [dbo].[EAIP_RebuildLocalLimiter_70] @UserID, 'C', @ColNo,@Email -- DECLARE @ColID varchar(50) -- DECLARE @CustID varchar(10) -- SELECT @CustID=CustID, @ColID=ColID FROM Collection WHERE ColNo=@ColNo -- EXEC EASUPPORT.dbo.EAIP_DeleteTempUpdatedCollection_81 @CustID, @ColID END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbSearchOption_DbInterfaceSearchOption(@DbVerNo int, @SearchOptionNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS IntfScreenNo, 0 AS SearchOptionNo, [dbo].[DbInterfaceSearchOption].[Show], [dbo].[DbInterfaceSearchOption].[SeqNo], [dbo].[InterfaceScreen].[InterfaceID] AS InterfaceID, [dbo].[InterfaceScreen].[Version] AS Version, [dbo].[InterfaceScreen].[ScreenID] AS ScreenID, [dbo].[SearchOptionList].[SearchOptionId] AS SearchOptionId FROM [dbo].[DbInterfaceSearchOption] LEFT JOIN [dbo].[InterfaceScreen] ON [dbo].[InterfaceScreen].[IntfScreenNo] = [dbo].[DbInterfaceSearchOption].[IntfScreenNo] LEFT JOIN [dbo].[SearchOptionList] ON [dbo].[SearchOptionList].[SearchOptionNo] = [dbo].[DbInterfaceSearchOption].[SearchOptionNo] WHERE [dbo].[DbInterfaceSearchOption].[DbVerNo] = @DbVerNo AND [dbo].[DbInterfaceSearchOption].[SearchOptionNo] = @SearchOptionNo ORDER BY DbVerNo, IntfScreenNo, SearchOptionNo, [dbo].[DbInterfaceSearchOption].[Show], [dbo].[DbInterfaceSearchOption].[SeqNo] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseSegment_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Segment', '', @SegName DELETE FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@DbVerNo AND [dbo].[DbSegment].[SegName]=@SegName END
CREATE Procedure [dbo].[EAIP_CopyMDbAuthorityContentType_90](@MultiDbAuthId varchar(10), @ContentType smallint) AS BEGIN IF Not Exists(SELECT 1 FROM [dbo].[MultiDbAuthContentTypes] WHERE [dbo].[MultiDbAuthContentTypes].[MultiDbAuthID] = @MultiDbAuthId AND [dbo].[MultiDbAuthContentTypes].[ContentType] = @ContentType) BEGIN INSERT INTO [dbo].[MultiDbAuthContentTypes] ([dbo].[MultiDbAuthContentTypes].[MultiDbAuthID], [dbo].[MultiDbAuthContentTypes].[ContentType]) VALUES (@MultiDbAuthId, @ContentType) END END
/* Created in Admin 10.3 Release Implements EHPMEBSCOADMIN-730 Logic is derived from EPC_PromoteDatabase_77 However, the Promote DB and Notify Servers logic (in the original proc) has been split into separate procedures. Functionality : This new procedure promotes database. */ CREATE PROCEDURE [dbo].[EPC_PromoteDatabase_103] (@UserID nvarchar(20), @UserIP varchar(15), @DbName varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10) ) AS BEGIN DECLARE @LogMessage varchar(15) SELECT @LogMessage='From '+@OldDbLabel DECLARE @OldDbVerNo int SET @OldDbVerNo = dbo.EAIF_GetDbVerNo_70(@DbName,@OldDbLabel) EXEC dbo.EAIP_PromoteDatabase_141 @OldDbVerNo, @DbName, @NewDbLabel, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1 IF (@@ERROR <> 0 ) BEGIN RAISERROR ('Could not promote to %s %s.',16,-1,@DbName,@NewDbLabel) RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Database','Promote',@DbName,@NewDbLabel,@LogMessage END
CREATE PROCEDURE [dbo].[EAUI_GetProfileClusters_133] (@ProfNo int, @LangCode varchar(10), @IncludedContentTypes nvarchar(max)='All', @ExcludedContentTypes nvarchar(max)='')AS BEGIN DECLARE @ShowDefToOpen int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(10) DECLARE @STMode char(1) DECLARE @DbLabel varchar(10) DECLARE @pdbCount int DECLARE @EditLevel int DECLARE @profDatabaseTable table (DbVerNo int) DECLARE @ContentTypeTable TABLE (ContentType INT) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode], @DbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' INSERT @ContentTypeTable SELECT [cl].[ContentType] FROM dbo.DbContentList cl JOIN dbo.EAIF_GetItemTable_70(@IncludedContentTypes, ',') i ON cl.Description=i.Item OR i.Item='all' LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@ExcludedContentTypes, ',') e ON cl.Description=e.Item WHERE e.Item IS NULL Insert @profDatabaseTable (DbVerNo) select distinct isnull(s.PhysDbVerNo, p.DbVerNo) as DbVerNo -- use physicalDB if database is subsetDB from [dbo].[ProfDatabase] p left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=p.DbVerNo JOIN dbo.DbList dbl ON isnull(s.PhysDbVerNo, p.DbVerNo)=dbl.DbVerNo JOIN @ContentTypeTable ctt ON dbl.ContentType=ctt.ContentType where p.ProfNo=@ProfNo and (AccessEndDate is null or datediff(hh, AccessEndDate, getdate())<0) and Enable=1 SELECT @ShowDefToOpen=isnull(cpd.DefValue, cpl.DefValue), @EditLevel=isnull(ipl.EditLevel, cped.EditLevel) from [dbo].[CustomParamList] cpl left outer join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo=cped.ParamNo left outer join [dbo].[InterfaceParamList] ipl on cpl.ParamNo=ipl.ParamNo and ipl.InterfaceID=@InterfaceID and ipl.Version=@Version left outer join [dbo].[CustomParamDefaults] cpd on cpl.ParamNo=cpd.ParamNo and cpd.InterfaceID=@InterfaceID and cpd.Version=@Version and cpd.MarketID=@MarketID and cpd.STMode=@STMode where [cpl].[ParamName]='showProfileClusterExpandCollapse' select a.ClustNo ID, a.ClustId, ISNULL(pc.Show,ISNULL(gcid.Show, gc.Show)) AS Show, isnull(pcc.Caption,isnull(cp.Caption, cp2.Caption)) as Caption, ISNULL(pc.SeqNo, a.SeqNo) as SeqNo, dbo.EAIF_GetDbListByClusterAndProfile_89(a.ClustId, a.DbLabel, @ProfNo) dbs, isnull(isnull(pc.DefaultToOpen, ic.DefaultToOpen),0) as DefaultToOpen, @ShowDefToOpen ShowDefaultToOpen, @EditLevel EditLevel, isnull(cp.Caption, cp2.Caption) as DefaultCaption from ( --Clusters that are enabled for the profile databases -- a. all explicitly enabled clusters select cl.ClustNo, cl.ClustId, cl.SeqNo, cl.DbLabel from [dbo].[ClusterList] cl join [dbo].[DbCluster] dc On cl.ClustNo=dc.ClustNo join @profDatabaseTable pdb On pdb.DbVerNo=dc.DbVerNo where dc.Enable=1 and cl.DbLabel = @DbLabel union -- b.AutoAdded clusters, not explicitly disabled select cl.ClustNo,cl.ClustId, cl.SeqNo, cl.DbLabel from @profDatabaseTable pdb join [dbo].[ClusterList] cl on 1=1 left outer join [dbo].[DbCluster] dc on pdb.DbVerNo=dc.DbVerNo and cl.ClustNo=dc.ClustNo and dc.Enable=0 where cl.AutoAdd2Db=1 and cl.DbLabel=@DbLabel and dc.DbVerNo is null ) a left outer join [dbo].[GlobalClusterCaption] cp ON a.ClustID=cp.ID AND cp.LangCode=@LangCode join [dbo].[GlobalClusterCaption] cp2 ON a.ClustID=cp2.ID AND cp2.LangCode='en' left outer join [dbo].[ProfileClusters2] pc on pc.ProfNo = @ProfNo AND a.ClustNo = pc.ClustNo left outer join [dbo].[InterfaceClusters] ic on ic.InterfaceID=@InterfaceID and ic.Version=@Version and a.ClustNo=ic.ClustNo left outer join [dbo].[ProfileClusterCaptions] pcc on a.ClustNo=pcc.ClustNo and pcc.ProfNo=@ProfNo and pcc.LangCode=@LangCode JOIN [dbo].[GlobalCluster] AS gc ON a.ClustId = gc.ID LEFT OUTER JOIN [dbo].[GlobalClusterInterface] AS gci ON gci.ClustId = gc.ID AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT OUTER JOIN [dbo].[GlobalClusterInterfaceDetails] AS gcid ON gcid.ClustId = gci.ClustId AND gcid.InterfaceId = gci.InterfaceId AND gcid.Version = gci.Version where ((gc.AutoAdd2Interfaces=0 and gci.ClustId is not null) or gc.AutoAdd2Interfaces=1) order by ISNULL(pc.SeqNo, a.SeqNo) END
CREATE PROCEDURE [dbo].[EAUI_AddDbLabelCluster_102] (@UserID nvarchar(20), @UserIP varchar(30), @ID varchar(20), @DbLabel varchar(10), @AutoAdd2Db int) AS BEGIN -- check for custom label IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' IF EXISTS (SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel) BEGIN RAISERROR('The cluster %s already attached to %s label',16,-1,@ID, @DbLabel) RETURN END DECLARE @SeqNo int IF EXISTS (SELECT 1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[DbLabel] = @DbLabel) SELECT @SeqNo=Max([dbo].[ClusterList].[SeqNo])+1 FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[DbLabel] = @DbLabel ELSE SET @SeqNo=1 BEGIN TRANSACTION INSERT INTO [dbo].[ClusterList] ([dbo].[ClusterList].[ClustId], [dbo].[ClusterList].[DbLabel], [dbo].[ClusterList].[SeqNo], [dbo].[ClusterList].[AutoAdd2Db]) VALUES (@ID, @DbLabel, @SeqNo, @AutoAdd2Db) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Attach Cluster to DbLabel', @ID, @DbLabel COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfDbLimiters_70]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @DbVerNo int ) AS BEGIN DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @MarketID = [dbo].[Profile].[MarketID] FROM dbo.Profile WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT c.LimiterId, a.ControlDefault, a.BitFlag1, a.BitFlag2, a.BitFlag3, a.BitFlag4, c.BitFlag1 as Hidden, a.IsCustomCaption as IsCustomCaption, dbo.EAIF_GetProfDbLimiterCaptions_70(@ProfNo,@DbVerNo,a.LimiterNo) as Captions, a.SeqNo FROM dbo.ProfDbLimiter a INNER JOIN dbo.LimiterList c ON a.LimiterNo=c.LimiterNo WHERE a.ProfNo=@ProfNo AND a.DbVerNo = @DbVerNo AND (a.BitFlag1 = 1 OR a.BitFlag2 = 1 OR a.BitFlag3 = 1 OR a.BitFlag4 = 1) UNION ALL SELECT c.LimiterId, ISNULL(convert(bit ,[b].[ControlDefault]),0) ControlDefault, ISNULL(convert(bit ,b.BitFlag1),0) BitFlag1, ISNULL(convert(bit ,b.BitFlag2),1) BitFlag2, ISNULL(convert(bit ,b.BitFlag3),0) BitFlag3, ISNULL(convert(bit ,b.BitFlag4),1) BitFlag4, c.BitFlag1 as Hidden, 0 as IsCustomCaption, '' as Captions, a.SeqNo FROM dbo.DbLimiter a LEFT OUTER JOIN dbo.LimiterDefaults b ON a.LimiterNo = b.LimiterNo AND b.InterfaceID=@InterfaceID AND b.Version = @Version AND b.MarketID=@MarketID INNER JOIN dbo.LimiterList c ON a.LimiterNo=c.LimiterNo WHERE a.DbVerNo=@DbVerNo AND a.LimiterNo NOT IN ( SELECT [dbo].[ProfDbLimiter].[LimiterNo] FROM dbo.ProfDbLimiter WHERE [dbo].[ProfDbLimiter].[ProfNo]=@ProfNo AND [dbo].[ProfDbLimiter].[DbVerNo]=@DbVerNo ) AND c.BitFlag1=0 ORDER BY a.SeqNo END
CREATE PROCEDURE [dbo].[BLL_GetDbDocType](@ShortDbName varchar(10), @DbLabel varchar(10)='live' ) AS BEGIN DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int DECLARE @ParamNo int DECLARE @DbVerNo int DECLARE @DbDocTypeTable table(ItemIndex int identity(1,1) PRIMARY KEY, DocType varchar(255), Native char(1), DefaultState varchar(3), SeqNo smallint, SearchDb varchar(100), SearchString varchar(255), ButtonImage varchar(255), SourceImage varchar(255), ShortDBName varchar(10),LinkText varchar(255), MouseOverText varchar(255)) SELECT @ParamNo = [dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName]='dbDocType' SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDbName AND [dbo].[DbList].[DbLabel]=@DbLabel INSERT INTO @DbDocTypeTable(DocType, SeqNo) SELECT [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[SeqNo] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo DECLARE @ItemCount int, @ItemIndex int SELECT @ItemCount = count(*) FROM @DbDocTypeTable SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @xmlText=ParamValue FROM @DbDocTypeTable a INNER JOIN [dbo].[DbParamXmlValues] b ON a.DocType=b.ItemName WHERE a.ItemIndex = @ItemIndex AND b.DbVerNo=@DbVerNo AND b.ParamNo=@ParamNo --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText -- Execute a SELECT statement that uses the OPENXML rowset provider. UPDATE @DbDocTypeTable SET [a].[Native]=b.Native, [a].[DefaultState]=b.defaultState, [a].[SearchDb]=dbo.EAIF_GetDbDisplayName_70(b.searchDb, @DbLabel), [a].[SearchString]=b.SearchString, [a].[ButtonImage]=b.tabImage, [a].[SourceImage]=b.SourceImage, [a].[ShortDBName]=b.searchDb, [a].[LinkText]=b.LinkText, [a].[MouseOverText]=b.MouseOverText FROM @DbDocTypeTable a CROSS JOIN OPENXML (@xmlDocHandle, '/dbDocType',2) WITH (native char(1) '@native', defaultState varchar(3) '@defaultState', searchString varchar(255), tabImage varchar(255), searchDb varchar(10), sourceImage varchar(255), linkText varchar(8000) 'linkText[@lang="en"]', mouseOverText varchar(8000) 'mouseOverText[@lang="en"]') b WHERE a.ItemIndex = @ItemIndex EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END SELECT DocType, Native,DefaultState, SeqNo, SearchDb, SearchString, ButtonImage,SourceImage, ShortDBName,LinkText, MouseOverText FROM @DbDocTypeTable ORDER BY seqNo END
CREATE Procedure [dbo].[EAUI_GetInterfaceMDbSTSListBrowseByCaption_90] @InterfaceID varchar(10), @Version varchar(10), @Caption nvarchar(50) as Select * From (Select imdbsl.MultiDbSTSID, IsNull([imdbsc].[Caption], (Select [msdsc].[Caption] From [dbo].[MultiDbSTSCaption] msdsc where imdbsl.MultiDbSTSID=msdsc.MultiDBSTSID and [msdsc].[LangCode]='en')) as Caption, IsNull([imdbsc].[LangCode], 'en') as LangCode, [mdbsl].[Description], [imdbsl].[SeqNo] From [dbo].[InterfaceMultiDbSTSList] imdbsl Left Outer Join [dbo].[InterfaceMultiDbSTSCaption] imdbsc on imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo Join [dbo].[MultiDbSTSList] mdbsl On imdbsl.MultiDbSTSID=mdbsl.MultiDBSTSID where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version) as a where a.LangCode='en' and a.Caption >= @Caption Order by [a].[SeqNo]
CREATE PROCEDURE [dbo].[EAIS_UpdateLocalTitle_70]( @CustID varchar(10), @ColID varchar(50), @ISSN varchar(20), @Title nvarchar(430), @Notes nvarchar(2000), @SummaryHoldings varchar (255), @CallNumber varchar (2000), @YesMessage nvarchar(MAX), @NoMessage nvarchar (MAX), @FromDate varchar(8), @ToDate varchar(8) ) AS BEGIN DECLARE @ColNo int DECLARE @YesMsgNo int DECLARE @NoMsgNo int DECLARE @TitleNo int IF @YesMessage is null SELECT @YesMessage='This title is held locally' IF @NoMessage is null SELECT @NoMessage='This title is not held locally' SET @ColNo=dbo.EAIF_GetColNo_70(@CustID,@ColID) SET @TitleNo = dbo.EAIF_FindTitle_70(@Title, @ISSN) IF @TitleNo is NULL BEGIN SELECT 0,'Title not found in EBSCOadmin database' RETURN END BEGIN TRANSACTION EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID, @YesMessage, @YesMsgNo OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID, @NoMessage, @NoMsgNo OUTPUT EXEC [dbo].[EAIP_AddModLocalTitle_70] @ColNo,@TitleNo,1,@YesMsgNo,@NoMsgNo,@Notes,@SummaryHoldings,@CallNumber IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @FromDate IS NOT NULL OR @ToDate IS NOT NULL BEGIN EXEC [dbo].[EAIP_AddModLocalDate_70] @ColNo, @TitleNo, @FromDate, @ToDate IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION SELECT 1 END
CREATE PROCEDURE [dbo].[EPCAS_GetProfLocalAFile](@ProfNo int) AS BEGIN SELECT c.ColID, c.ColName FROM [dbo].[ProfLocalAuthority] p INNER JOIN [dbo].[Collection] c ON p.ColNo=c.ColNo WHERE p.ProfNo=@ProfNo AND c.IsDeleted = 0 ORDER BY [c].[ColID] END
--sql content merged from file: \Functions\EAIF_GetItemTable_70.sql CREATE FUNCTION [dbo].[EAIF_GetItemTable_70]( @ItemList nvarchar(max), @Sep char(1)) RETURNS @ItemTable TABLE (Item nvarchar(255)) AS BEGIN DECLARE @DotPos int DECLARE @Item nvarchar(255) DECLARE @len int DECLARE @leftLen int SET @len=len(@ItemList) SET @leftLen = 0 SELECT @DotPos=charindex(@Sep,@ItemList) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item=left(@ItemList,@DotPos-1) INSERT INTO @ItemTable VALUES(@Item) SET @leftLen+= @DotPos SELECT @ItemList=substring(@ItemList,@DotPos+1,@len-@leftLen) SELECT @DotPos=charindex(@Sep,@ItemList) END INSERT INTO @ItemTable VALUES(@ItemList) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamNumber_96.sql CREATE Procedure dbo.EAUI_GetDbParamNumber_96 (@ParamName varchar(100)) AS BEGIN SELECT dbo.EAIF_GetDbParamNumber_70 (@ParamName) END
CREATE PROCEDURE [dbo].[UTIL_DeleteProfileIfNoUsageOnPeriod] @ProfNo INT, @ProfileTriplet [ProfileTripletType] READONLY, @NumberOfYearsWithNoUsage SMALLINT AS BEGIN IF NOT EXISTS ( SELECT * FROM sys.schemas WHERE name = 'BACK' ) BEGIN EXEC('CREATE SCHEMA BACK'); END; IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US678026_Deleted_profiles' ) CREATE TABLE BACK.US678026_Deleted_profiles ( [ProfNo] INT, [CustID] VARCHAR(10), [GroupID] VARCHAR(10), [ProfID] VARCHAR(10), [InterfaceID] VARCHAR(10), [Version] VARCHAR(10), [MarketID] VARCHAR(20), [DateDeleted] DATETIME ) DECLARE @WaitForReplicationSec SMALLINT = 600; DECLARE @TransId BIGINT; DECLARE @CurrentDate DATETIME = GETDATE() DECLARE @CurrentYear NVARCHAR(4) = CAST(YEAR(@CurrentDate) AS NVARCHAR(4)) DECLARE @Increment SMALLINT = 0 BEGIN TRY IF NOT EXISTS(SELECT 1 FROM EAUSAGE.sys.tables WHERE name IN ('SessionUsage_' + CAST(CAST(@CurrentYear AS SMALLINT)-@NumberOfYearsWithNoUsage AS VARCHAR(4)))) BEGIN RAISERROR('Table SessionUsage for such period does not exist.', 16, -1) RETURN; END; DECLARE @Query NVARCHAR(MAX) = N'SELECT @ResultOut = 1 FROM @ProfileTripletTable pt' WHILE (@Increment <= @NumberOfYearsWithNoUsage) BEGIN DECLARE @PreviousYear NVARCHAR(250) = CAST(CAST(@CurrentYear AS INT)-@Increment AS NVARCHAR(4)) SET @Query = @Query + N' LEFT OUTER JOIN EAUSAGE.dbo.SessionUsage_' + @PreviousYear + N' su' + @PreviousYear + N' ON su' + @PreviousYear + N'.CustID = pt.CustID ' + N'AND su' + @PreviousYear + N'.GroupID = pt.GroupID ' + N'AND su' + @PreviousYear + N'.ProfID = pt.ProfID ' + N'AND (su' + @PreviousYear + N'.UsageMonth > DATEADD(YEAR, -' + CAST(@NumberOfYearsWithNoUsage AS NVARCHAR(2)) + ', ''' + CONVERT(NVARCHAR, @CurrentDate, 23) + N'''))' SET @Increment = @Increment + 1 END SET @Query = @Query +' WHERE ' SET @Increment = 0 WHILE (@Increment <= @NumberOfYearsWithNoUsage) BEGIN SET @PreviousYear = CAST(CAST(@CurrentYear AS INT)-@Increment AS NVARCHAR(4)) SET @Query = @Query + 'su' + @PreviousYear + N'.Sessions IS NOT NULL' IF (@Increment < @NumberOfYearsWithNoUsage) SET @Query = @Query + ' OR ' SET @Increment = @Increment + 1 END DECLARE @Result NVARCHAR(MAX) = '' DECLARE @ParmDefinition NVARCHAR(500) SET @ParmDefinition = N'@ProfileTripletTable [ProfileTripletType] READONLY, @ResultOut NVARCHAR(MAX) OUTPUT' EXEC sp_executesql @Query, @ParmDefinition, @ProfileTripletTable = @ProfileTriplet, @ResultOut = @Result OUTPUT IF(@Result <> N'1') BEGIN BEGIN TRAN SET @TransId = CURRENT_TRANSACTION_ID(); INSERT BACK.US678026_Deleted_profiles SELECT ProfNo, CustID, GroupID, ProfID, InterfaceID, Version, MarketID, @CurrentDate FROM Profile WHERE ProfNo = @ProfNo EXEC dbo.EAUI_DeleteProfile_70 N'DML_DltUnusedProf', '', @ProfNo COMMIT TRAN SET @Increment = @Increment + 1 EXEC dbo.UTIL_WaitForReplicationComplete_224 @TransId, @WaitForReplicationSec END END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR ( @ErrorMessage, @ErrorSeverity, @ErrorState ) END CATCH END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseSearchConceptMapping_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try Begin Transaction DELETE dbscm FROM [dbo].[DbSearchContextMapping] dbscm JOIN #TempDbListTable t on dbscm.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbSearchContextMapping] select t.UpperDbVerNo, ContextName, ConceptName, SearchTag from [dbo].[DbSearchContextMapping] dbscm Join #TempDbListTable t on dbscm.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Commit Transaction End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceCluster_102](@UserID nvarchar(20), @UserIP varchar(30), @ClustID varchar(20), @InterfaceID varchar(10), @Version varchar(10), @MinDisplay smallint, @MaxDisplay smallint, @MaxResults tinyint, @Show bit) AS BEGIN DECLARE @GlobalMinDisplay smallint DECLARE @GlobalMaxDisplay smallint DECLARE @GlobalMaxResults tinyint DECLARE @GlobalShow bit DECLARE @AutoAdd2Interfaces bit SELECT @GlobalMinDisplay = gc.MinDisplay, @GlobalMaxDisplay = gc.MaxDisplay, @GlobalMaxResults = gc.MaxPercentageResults, @GlobalShow = gc.Show, @AutoAdd2Interfaces = gc.AutoAdd2Interfaces FROM [dbo].[GlobalCluster] gc WHERE gc.ID = @ClustID -- don't store values in the details table if they are the same as the GlobalCluster values (i.e. set them to NULL) IF (@GlobalMinDisplay = @MinDisplay) SET @MinDisplay = NULL IF (@GlobalMaxDisplay = @MaxDisplay) SET @MaxDisplay = NULL IF (@GlobalMaxResults = @MaxResults) SET @MaxResults = NULL IF (@GlobalShow = @Show) SET @Show = NULL -- check if all the values are the same as in GlobalCluster table, if so, remove entry from -- the GlobalClusterInterfaceDetails table if it exists or don't add a new one IF (@MinDisplay IS NULL AND @MaxDisplay IS NULL AND @MaxResults IS NULL AND @Show IS NULL) BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[GlobalClusterInterfaceDetails] WHERE [dbo].[GlobalClusterInterfaceDetails].[ClustId] = @ClustID AND [dbo].[GlobalClusterInterfaceDetails].[InterfaceId] = @InterfaceID AND [dbo].[GlobalClusterInterfaceDetails].[Version] = @Version -- if it's an AutoAdd2Interfaces cluster and the values are the same as in GlobalCluster, then -- also remove the entry from GlobalClusterInterface IF (@AutoAdd2Interfaces = 1) BEGIN DELETE FROM [dbo].[GlobalClusterInterface] WHERE [dbo].[GlobalClusterInterface].[ClustId] = @ClustID AND [dbo].[GlobalClusterInterface].[InterfaceId] = @InterfaceID AND [dbo].[GlobalClusterInterface].[Version] = @Version END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END ELSE BEGIN BEGIN TRANSACTION -- insert new or update? --UPDATE ClusterInterfaceDetails SET SortOption=@SortOption, SearchImage=@SearchImage, -- ResultImage=@ResultImage ,DefValue=@DefaultValue --WHERE IntfDocTypeNo=@IntfDocTypeNo -- use merge to do update or insert? -- if it's an AutoAdd2Interfaces cluster, add an entry to the GlobalClusterInterface table to create the relationship for overriding the values IF (@AutoAdd2Interfaces = 1) BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[GlobalClusterInterface] WHERE [dbo].[GlobalClusterInterface].[ClustId] = @ClustID AND [dbo].[GlobalClusterInterface].[InterfaceId] = @InterfaceID AND [dbo].[GlobalClusterInterface].[Version] = @Version) BEGIN INSERT INTO [dbo].[GlobalClusterInterface] ([dbo].[GlobalClusterInterface].[ClustId], [dbo].[GlobalClusterInterface].[InterfaceId], [dbo].[GlobalClusterInterface].[Version]) VALUES (@ClustID, @InterfaceID, @Version) END END IF EXISTS(SELECT 1 FROM [dbo].[GlobalClusterInterfaceDetails] WHERE [dbo].[GlobalClusterInterfaceDetails].[ClustId] = @ClustID AND [dbo].[GlobalClusterInterfaceDetails].[InterfaceId] = @InterfaceID AND [dbo].[GlobalClusterInterfaceDetails].[Version] = @Version) BEGIN UPDATE [dbo].[GlobalClusterInterfaceDetails] SET [dbo].[GlobalClusterInterfaceDetails].[MinDisplay] = @MinDisplay, [dbo].[GlobalClusterInterfaceDetails].[MaxDisplay] = @MaxDisplay, [dbo].[GlobalClusterInterfaceDetails].[MaxPercentageResults] = @MaxResults, [dbo].[GlobalClusterInterfaceDetails].[Show] = @Show WHERE [dbo].[GlobalClusterInterfaceDetails].[ClustId] = @ClustID AND [dbo].[GlobalClusterInterfaceDetails].[InterfaceId] = @InterfaceID AND [dbo].[GlobalClusterInterfaceDetails].[Version] = @Version END ELSE BEGIN INSERT INTO [dbo].[GlobalClusterInterfaceDetails] ([dbo].[GlobalClusterInterfaceDetails].[ClustId], [dbo].[GlobalClusterInterfaceDetails].[InterfaceId], [dbo].[GlobalClusterInterfaceDetails].[Version], [dbo].[GlobalClusterInterfaceDetails].[MinDisplay], [dbo].[GlobalClusterInterfaceDetails].[MaxDisplay], [dbo].[GlobalClusterInterfaceDetails].[MaxPercentageResults], [dbo].[GlobalClusterInterfaceDetails].[Show]) VALUES (@ClustID, @InterfaceID, @Version, @MinDisplay, @MaxDisplay, @MaxResults, @Show) END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters','Update Interface Cluster ', @InterfaceID, @Version, @ClustID END
CREATE FUNCTION dbo.EAIF_GetSearchDescriptions_76(@DbVerNo int, @SearchOptionNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+a.Description +' ' FROM [dbo].[DbSearchOptionCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[SearchOptionNo]=@SearchOptionNo RETURN @Captions END
-- ============================================= -- Author: jjalbert -- Create date: October 12, 2011 -- Description: SP to get an individual CustomerConnector -- 2011.12.16: fixed AccessDate retrieval. Fixed Notes retrieval. -- 2012.02.23: Accurately retrieve default values from global connector record when no -- record has been saved in CustDbListExternalData . -- ============================================= CREATE PROCEDURE dbo.EAUI_GetCustomerConnector_102 @custshortname varchar(10), @dbverno int AS BEGIN declare @custid int select @custid = c.CustNo from [dbo].[Customer] c where c.CustID = @custshortname DECLARE @AccessEndDate DATETIME SELECT @AccessEndDate = MAX([cs].[EndDate]) from EASUPPORT.dbo.CustSubscription cs inner join EASUPPORT.dbo.ProductOffering po ON po.PrdOffNo = cs.PrdOffNo WHERE po.SourceType = 'M' AND cs.CustID = @custshortname; SELECT de.DbVerNo, [d].[DisplayName] , ISNULL(muse.ExternalDbID,'') as ExternalSourceID, ISNULL(cd.ConnectorProvider,de.ConnectorProvider) as ConnectorProvider, de.Free as PaidFree, case cd.Status when 'A' then 'Available' when 'P' then 'Pending' else 'Error' end as Status, ISNULL(@AccessEndDate,GETDATE()) as AccessEndDate, ISNULL(cd.LastModified,GETDATE()) as LastModified, c.CustNo, c.CustID, ISNULL(de.ConnectorType,'') as ConnectorType, ISNULL(ISNULL(cedia.ConnectorURL,indexData.ConnectorURL),N'') as ConnectorURL, ISNULL(cd.PrimaryProxyHostIp,ISNULL(EASUPPORT.dbo.EAIF_GetCustPrimaryHostIp_102(c.CustID),'')) as PrimaryProxyHostIp, ISNULL(cedia.ConnectorID,N'') as ConnectorID, ISNULL(cedia.ConnectorPassword,N'') as ConnectorPassword, ISNULL(indexData.ExternalDbID, '') as ExternalSourceID_I, d.DbName, ISNULL(ISNULL(cd.CustomerNotes,de.Notes),'') as Notes, ISNULL(ISNULL(cedia.ProxyForResult, indexData.ProxyForResult),0) as ProxyForResult, ISNULL(ISNULL(cedia.ProxyForSearch, indexData.ProxyForSearch),0) as ProxyForSearch, ISNULL(cedia.KeyValuePairs,'') as KeyValuePairs , ISNULL(indexData.KeyValuePairs,N'') as GlobalKeyValuePairs , ISNULL(sv.ParamValue,N'') as ShortDescription, ISNULL(cedia.Z3950URLPort,'') as Z3950URLPort FROM [dbo].[DbList] d JOIN [dbo].[DbListExternalSource] de ON (de.DbVerNo = d.DbVerNo) JOIN [dbo].[CustExternalDbList] cd ON (cd.DbVerNo = de.DbVerNo) JOIN [dbo].[Customer] c ON (c.CustNo = cd.CustNo) LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbParamList] dl ON dl.ParamNo = sv.ParamNo AND dl.ParamName = 'ShortDescription' LEFT OUTER JOIN [dbo].[CustExternalDbListIndexData] cedia on (cedia.CustNo = cd.CustNo and cedia.DbVerNo = cd.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON (muse.DbVerNo = de.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData on (indexData.DbVerNo = de.DbVerNo) WHERE cd.CustNo = @custid AND cd.DbVerNo = @dbverno END;
CREATE PROCEDURE [dbo].[EAIP_DeleteAZDate_97] ( @ColNo int, @itemCount int, @titlenoList varchar(8000), @fromdateList varchar(8000) ) AS BEGIN SET NOCOUNT ON DECLARE @TitleNo int, @FromDate int, @idx int, @x1 int, @x2 int, @y1 int, @y2 int set @x1=1 set @x2=1 set @idx=1 WHILE (@idx <= @itemCount) BEGIN set @y1=charindex(',', @titlenoList, @x1) -- all strings always have a trailing comma set @y2=charindex(',', @fromdateList, @x2) set @TitleNo = case when @y1=@x1 then null else cast(substring(@titlenoList,@x1,@y1-@x1) as int) end set @FromDate = case when @y2=@x2 then null else cast(substring(@fromdateList,@x2,@y2-@x2) as int) end BEGIN TRY DELETE FROM [dbo].[LocalDate] where [dbo].[LocalDate].[ColNo]=@ColNo and [dbo].[LocalDate].[TitleNo]=@titleno and [dbo].[LocalDate].[FromDate]=@fromdate END TRY BEGIN CATCH if (ERROR_NUMBER()<>2627) -- primary key violation. allow these since they can occur in a race condition exec [dbo].[EAIP_RethrowAZError_97] END CATCH set @x1=@y1+1 set @x2=@y2+1 set @idx = @idx + 1 END RETURN END
CREATE Procedure [dbo].[EAIP_GetDbNames_92] ( @DbLabel varchar(10) ) AS IF @DbLabel = 'custom' Begin SELECT l.DisplayName, l.DbName FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType WHERE [l].[DbLabel] not in ('live', 'liveQC', 'rebuild', 'rebuildQC') ORDER BY l.DbName Return End Else Begin If @DbLabel='All' Begin SELECT Distinct l.DisplayName, l.DbName FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType WHERE [l].[DbLabel] in ('live', 'liveQC', 'rebuild', 'rebuildQC') ORDER BY l.DbName Return End ELSE Begin SELECT l.DisplayName, l.DbName FROM [dbo].[DbList] l LEFT JOIN [dbo].[DbTypeList] t ON l.DbType=t.DbType LEFT JOIN [dbo].[DbContentList] c ON l.ContentType=c.ContentType WHERE [l].[DbLabel] = @DbLabel ORDER BY l.DbName Return End End
-- ============================================= -- Author: jjalbert -- Create date: October 10, 2011 -- Description: SP to set CustExternalDbList.Status for series of Connectors -- 2011.11.30: JJalbert makes UserID nvarchar -- ============================================= CREATE PROCEDURE dbo.EAUI_RemoveCustomerConnectors_102 ( @UserID NVARCHAR(255), @UserIP VARCHAR(15), @custshortname VARCHAR(10), @ids VARCHAR(max) ) AS BEGIN DECLARE @DbName VARCHAR(10) declare @t table ( id int ) insert into @t select CONVERT(int,[dbo].[Util_SplitToTable].[SplitData]) from dbo.Util_SplitToTable(',',@ids) declare @i int select @i = c.CustNo from [dbo].[Customer] c where c.CustID = @custshortname delete from [dbo].[CustExternalDbList] where [dbo].[CustExternalDbList].[DbVerNo] in (select id from @t) and [dbo].[CustExternalDbList].[CustNo] = @i delete from [dbo].[CustExternalDbListIndexData] where [dbo].[CustExternalDbListIndexData].[DbVerNo] in (select id from @t) and [dbo].[CustExternalDbListIndexData].[CustNo] = @i begin --delete from ProfDatabase --where DbVerNo in (select id from @t) --and CtrlCustID = @custshortname Delete [dbo].[ProfDatabase] from [dbo].[ProfDatabase] pd JOIN [dbo].[Profile] p ON p.ProfNo=pd.ProfNo JOIN @t t ON t.id=pd.DbVerNo where p.CustID = @custshortname end DECLARE IdList Cursor FOR SELECT id FROM @t OPEN IdList DECLARE @cust VARCHAR(100) = '' SET @cust = 'CustID='+@custshortname DECLARE @id int Fetch NEXT FROM IdList INTO @id While (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN SELECT @DbName=[dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo] = @id EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP, @DbName, 'live','remove',@cust END Fetch NEXT FROM IdList INTO @id END CLOSE IdList DEALLOCATE IdList END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbSearchOption_DbSearchOptionCaption(@DbVerNo int, @SearchOptionNo int) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, 0 AS SearchOptionNo, [dbo].[DbSearchOptionCaption].[LangCode], [dbo].[DbSearchOptionCaption].[OptionCaption], [dbo].[DbSearchOptionCaption].[ResultCaption], [dbo].[DbSearchOptionCaption].[Description], [dbo].[SearchOptionList].[SearchOptionId] AS SearchOptionId FROM [dbo].[DbSearchOptionCaption] LEFT JOIN [dbo].[SearchOptionList] ON [dbo].[SearchOptionList].[SearchOptionNo] = [dbo].[DbSearchOptionCaption].[SearchOptionNo] WHERE [dbo].[DbSearchOptionCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbSearchOptionCaption].[SearchOptionNo] = @SearchOptionNo ORDER BY DbVerNo, SearchOptionNo, [dbo].[DbSearchOptionCaption].[LangCode], [dbo].[DbSearchOptionCaption].[OptionCaption], [dbo].[DbSearchOptionCaption].[ResultCaption] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseSortOption_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SortID varchar(10)) AS BEGIN DELETE FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@DbVerNo AND [dbo].[DbSort].[SortID]=@SortID EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Sort Option','Sort ID:', @SortID END
CREATE Procedure [dbo].[EAIP_CopyMDbAuthorityDbRecord_90](@MultiDbAuthId varchar(10), @DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SET NOCOUNT ON; DECLARE @DbVerNo Int; SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel; IF(@@ROWCOUNT > 0) BEGIN IF NOT Exists(SELECT 1 FROM [dbo].[DBMultiDbAuthList] WHERE [dbo].[DBMultiDbAuthList].[MultiDbAuthID] = @MultiDbAuthId AND [dbo].[DBMultiDbAuthList].[DbVerNo] = @DbVerNo) INSERT INTO [dbo].[DBMultiDbAuthList] ([dbo].[DBMultiDbAuthList].[MultiDbAuthID], [dbo].[DBMultiDbAuthList].[DbVerNo]) VALUES (@MultiDbAuthId, @DbVerNo) END END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileClusters_80.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileClusters_80] (@ProfNo int, @LangCode varchar(10))AS BEGIN DECLARE @ShowDefToOpen int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(10) DECLARE @STMode char(1) DECLARE @DbLabel varchar(10) DECLARE @pdbCount int DECLARE @EditLevel int DECLARE @profDatabaseTable table (DbVerNo int) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode], @DbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' Insert @profDatabaseTable (DbVerNo) select distinct isnull(s.PhysDbVerNo, p.DbVerNo) as DbVerNo -- use physicalDB if database is subsetDB from [dbo].[ProfDatabase] p left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=p.DbVerNo where p.ProfNo=@ProfNo and ([p].[AccessEndDate] is null or datediff(hh, [p].[AccessEndDate], getdate())<0) and [p].[Enable]=1 SELECT @ShowDefToOpen=isnull(cpd.DefValue, cpl.DefValue), @EditLevel=isnull(ipl.EditLevel, cped.EditLevel) from [dbo].[CustomParamList] cpl left outer join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo=cped.ParamNo left outer join [dbo].[InterfaceParamList] ipl on cpl.ParamNo=ipl.ParamNo and ipl.InterfaceID=@InterfaceID and ipl.Version=@Version left outer join [dbo].[CustomParamDefaults] cpd on cpl.ParamNo=cpd.ParamNo and cpd.InterfaceID=@InterfaceID and cpd.Version=@Version and cpd.MarketID=@MarketID and cpd.STMode=@STMode where [cpl].[ParamName]='showProfileClusterExpandCollapse' select a.ClustNo ID, a.ClustId, ISNULL(pc.Show,ISNULL(gcid.Show, gc.Show)) AS Show, isnull(pcc.Caption,isnull(cp.Caption, cp2.Caption)) as Caption, ISNULL(pc.SeqNo, a.SeqNo) as SeqNo, dbo.EAIF_GetDbListByClusterAndProfile_89(a.ClustId, a.DbLabel, @ProfNo) dbs, isnull(isnull(pc.DefaultToOpen, ic.DefaultToOpen),0) as DefaultToOpen, @ShowDefToOpen ShowDefaultToOpen, @EditLevel EditLevel, isnull(cp.Caption, cp2.Caption) as DefaultCaption from ( --Clusters that are enabled for the profile databases -- a. all explicitly enabled clusters select cl.ClustNo, cl.ClustId, cl.SeqNo, cl.DbLabel from [dbo].[ClusterList] cl join [dbo].[DbCluster] dc On cl.ClustNo=dc.ClustNo join @profDatabaseTable pdb On pdb.DbVerNo=dc.DbVerNo where dc.Enable=1 and cl.DbLabel = @DbLabel union -- b.AutoAdded clusters, not explicitly disabled select cl.ClustNo,cl.ClustId, cl.SeqNo, cl.DbLabel from @profDatabaseTable pdb join [dbo].[ClusterList] cl on 1=1 left outer join [dbo].[DbCluster] dc on pdb.DbVerNo=dc.DbVerNo and cl.ClustNo=dc.ClustNo and dc.Enable=0 where cl.AutoAdd2Db=1 and cl.DbLabel=@DbLabel and dc.DbVerNo is null ) a left outer join [dbo].[GlobalClusterCaption] cp ON a.ClustID=cp.ID AND cp.LangCode=@LangCode join [dbo].[GlobalClusterCaption] cp2 ON a.ClustID=cp2.ID AND cp2.LangCode='en' left outer join [dbo].[ProfileClusters2] pc on pc.ProfNo = @ProfNo AND a.ClustNo = pc.ClustNo left outer join [dbo].[InterfaceClusters] ic on ic.InterfaceID=@InterfaceID and ic.Version=@Version and a.ClustNo=ic.ClustNo left outer join [dbo].[ProfileClusterCaptions] pcc on a.ClustNo=pcc.ClustNo and pcc.ProfNo=@ProfNo and pcc.LangCode=@LangCode JOIN [dbo].[GlobalCluster] AS gc ON a.ClustId = gc.ID LEFT OUTER JOIN [dbo].[GlobalClusterInterface] AS gci ON gci.ClustId = gc.ID AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT OUTER JOIN [dbo].[GlobalClusterInterfaceDetails] AS gcid ON gcid.ClustId = gci.ClustId AND gcid.InterfaceId = gci.InterfaceId AND gcid.Version = gci.Version where ((gc.AutoAdd2Interfaces=0 and gci.ClustId is not null) or gc.AutoAdd2Interfaces=1) order by ISNULL(pc.SeqNo, a.SeqNo) End
CREATE PROCEDURE [dbo].[EAUI_AddDbSearchOption_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @OptionID varchar(20), @OptionType varchar(1), @SearchString varchar(255), @TargetDb varchar(10), @SourceType varchar(100), @TabImage varchar (255), @SubsetID varchar(20), @ViewID varchar(20), @OptionCaption nvarchar(255), @ResultCaption nvarchar(255), @Description nvarchar(max), @Lang varchar(10)) AS BEGIN DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo IF @SearchString='' SELECT @SearchString =null IF @TargetDb='' SELECT @TargetDb=null IF @SourceType='' SELECT @SourceType=null IF @TabImage='' SELECT @TabImage=null IF @SubsetID='' SELECT @SubsetID=null IF @ViewID='' SELECT @ViewID=null IF @ResultCaption='' SELECT @ResultCaption =null IF @Description='' SELECT @Description=null DECLARE @OptionNo int BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID) SELECT @OptionNo=[dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID ELSE BEGIN INSERT INTO [dbo].[SearchOptionList] ([dbo].[SearchOptionList].[SearchOptionId]) VALUES(@OptionID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END SELECT @OptionNo=[dbo].[SearchOptionList].[SearchOptionNo] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionId]=@OptionID END INSERT INTO [dbo].[DbSearchOption] ([dbo].[DbSearchOption].[DbVerNo],[dbo].[DbSearchOption].[SearchOptionNo],[dbo].[DbSearchOption].[OptionType],[dbo].[DbSearchOption].[SearchString],[dbo].[DbSearchOption].[TargetDb],[dbo].[DbSearchOption].[SourceType],[dbo].[DbSearchOption].[TabImage],[dbo].[DbSearchOption].[AuthoritySubset],[dbo].[DbSearchOption].[AuthorityView]) VALUES (@DbVerNo,@OptionNo,@OptionType,@SearchString,@TargetDb,@SourceType,@TabImage,@SubsetID,@ViewID) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbSearchOptionCaption] ([dbo].[DbSearchOptionCaption].[DbVerNo],[dbo].[DbSearchOptionCaption].[SearchOptionNo],[dbo].[DbSearchOptionCaption].[LangCode],[dbo].[DbSearchOptionCaption].[OptionCaption],[dbo].[DbSearchOptionCaption].[ResultCaption],[dbo].[DbSearchOptionCaption].[Description] ) VALUES (@DbVerNo,@OptionNo,@Lang,@OptionCaption,@ResultCaption,@Description) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'SearchOptions', 'Add DbSearch Option', @DbName, @DbLabel, @OptionID COMMIT TRANSACTION END
-- EPCS_GetProfDbLimiters_76 CREATE PROCEDURE [dbo].[EPCS_GetProfDbLimiters_76]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @DbVerNo int ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) Declare @SourceType char(1) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID DECLARE @ShowOff bit Declare @ShowOn bit SET @ShowOff =0 Set @ShowOn=1 Select @SourceType=[dbo].[DbList].[SourceType] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo if @SourceType in ('M') Begin select ifs.ScreenID, 1 as GroupNo, mdbles.LimiterID, mdbles.DefValue, [mdbll].[ControlType], IsNull(a.Show, @ShowOn) as Show, dbo.EAIF_GetProfDbLimiterCaptions_76(@ProfNo,ifs.IntfScreenNo,@DbVerNo,mdbles.LimiterNo) as Captions, mdbles.SeqNo, Null as DefPosn, null as Colnum, null as HelpUrl from [dbo].[InterfaceScreen] ifs Cross Join [dbo].[MDbLimitersExternalSource] mdbles Join [dbo].[MDbLimiterList] mdbll on mdbles.LimiterID=mdbll.LimiterID and mdbll.DbLabel='live' left outer join [dbo].[ProfMDbLimitersExternalSource] a on mdbles.LimiterNo=a.LimiterNo and ifs.IntfScreenNo=a.IntfScreenNo and a.ProfNo=@ProfNo where ifs.InterfaceID=@InterfaceID AND ifs.Version=@Version Order by mdbles.SeqNo End else Begin --Limiters attached to the interface manually or customized by interface SELECT ifs.ScreenID, IsNull(dil.GroupNo,1) as GroupNo, ll.LimiterId, IsNull(dil.ControlType,ll.ControlType) as ControlType, IsNull(pdl.DefValue,dil.DefValue) as DefValue, IsNull(pdl.Show,dil.Show) as Show, dbo.EAIF_GetProfDbLimiterCaptions_76(@ProfNo,ifs.IntfScreenNo,@DbVerNo,dl.LimiterNo) as Captions, IsNull(pdl.SeqNo,dil.SeqNo) as SeqNo, dil.DefPosn, dil.ColNum, ll.HelpUrl FROM [dbo].[InterfaceScreen] ifs JOIN [dbo].[DbInterfaceLimiter] dil ON ifs.InterfaceID=@InterfaceID AND ifs.Version=@Version AND dil.DbVerNo=@DbVerNo AND dil.IntfScreenNo=ifs.IntfScreenNo JOIN [dbo].[DbLimiter] dl ON dil.DbVerNo=dl.DbVerNo AND dil.LimiterNo=dl.LimiterNo LEFT JOIN [dbo].[ProfDbLimiter2] pdl ON pdl.ProfNo=@ProfNo AND pdl.DbVerNo=dl.DbVerNo AND pdl.LimiterNo=dl.LimiterNo AND pdl.IntfScreenNo=ifs.IntfScreenNo JOIN [dbo].[LimiterList] ll ON dl.LimiterNo=ll.LimiterNo UNION ALL --All other database limiters with "Include when AutoAdd" for screens with "AutoAdd" SELECT ifs.ScreenID, IsNull(dil.GroupNo,1) as GroupNo, ll.LimiterId, IsNull(dil.ControlType,ll.ControlType) as ControlType, IsNull(pdl.DefValue,IsNull(dil.DefValue,dl.DefValue)) as DefValue, CASE WHEN ll.BitFlag1=1 THEN IsNull(pdl.Show,IsNull(dil.Show,@ShowOff)) ELSE IsNull(pdl.Show,IsNull(dil.Show,ifs.LimiterShow)) END AS Show, dbo.EAIF_GetProfDbLimiterCaptions_76(@ProfNo,ifs.IntfScreenNo,@DbVerNo,dl.LimiterNo) as Captions, IsNull(pdl.SeqNo,IsNull(dil.SeqNo,dl.SeqNo)) as SeqNo, dil.DefPosn, dil.ColNum, ll.HelpUrl FROM [dbo].[InterfaceScreen] ifs JOIN [dbo].[DbLimiter] dl ON ifs.InterfaceID=@InterfaceID AND ifs.Version=@Version AND ifs.AutoAddLimiter=1 AND dl.DbVerNo=@DbVerNo AND dl.ResFlag=1 LEFT JOIN [dbo].[DbInterfaceLimiter] dil ON dil.DbVerNo=dl.DbVerNo AND dil.LimiterNo=dl.LimiterNo AND dil.IntfScreenNo=ifs.IntfScreenNo LEFT JOIN [dbo].[ProfDbLimiter2] pdl ON pdl.ProfNo=@ProfNo AND pdl.DbVerNo=dl.DbVerNo AND pdl.LimiterNo=dl.LimiterNo AND pdl.IntfScreenNo=ifs.IntfScreenNo JOIN [dbo].[LimiterList] ll ON dl.LimiterNo=ll.LimiterNo WHERE dil.LimiterNo is null ORDER By ifs.ScreenID,SeqNo End END
CREATE PROCEDURE [dbo].[BLL_GetDbFields](@ShortDBName varchar(10), @Label varchar(10)) AS BEGIN SELECT DISTINCT df.FieldTag, df.Description, df.IndexType FROM [dbo].[DbFieldTag] df INNER JOIN [dbo].[DbList] m ON m.DbVerNo = df.DbVerNo WHERE m.DbName = @ShortDBName AND m.DbLabel = @Label END
CREATE Procedure [dbo].[EAUI_GetInterfaceMDbSTSListBrowseByID_90] @InterfaceID varchar(10), @Version varchar(10), @MultiDbSTSID varchar(10) as Select * From (Select imdbsl.MultiDbSTSID, IsNull([imdbsc].[Caption], (Select [msdsc].[Caption] From [dbo].[MultiDbSTSCaption] msdsc where imdbsl.MultiDbSTSID=msdsc.MultiDBSTSID and [msdsc].[LangCode]='en')) as Caption, IsNull([imdbsc].[LangCode], 'en') as LangCode, [mdbsl].[Description], [imdbsl].[SeqNo] From [dbo].[InterfaceMultiDbSTSList] imdbsl Left Outer Join [dbo].[InterfaceMultiDbSTSCaption] imdbsc on imdbsl.IntfMultiDbSTSNo=imdbsc.IntfMultiDbSTSNo Join [dbo].[MultiDbSTSList] mdbsl On imdbsl.MultiDbSTSID=mdbsl.MultiDBSTSID where [imdbsl].[InterfaceID]=@InterfaceID and [imdbsl].[Version]=@Version) as a where a.LangCode='en' and a.MultiDbSTSID >= @MultiDbSTSID Order by [a].[SeqNo]
CREATE PROCEDURE [dbo].[EAIS_UpdateTOC_80](@TocID varchar(50),@FieldXML nvarchar(max)) AS BEGIN DECLARE @FeatureNo int DECLARE @ItemNo int SELECT @FeatureNo=[dbo].[FeatureList].[FeatureNo] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]='toc' AND [dbo].[FeatureList].[FeatureName]=@TocID SELECT @ItemNo=ISNULL(MAX([dbo].[FeatureValues].[ItemNo])+1, 1) FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo INSERT INTO [dbo].[FeatureValues] ([dbo].[FeatureValues].[FeatureNo], [dbo].[FeatureValues].[ItemNo], [dbo].[FeatureValues].[FieldValueXml], [dbo].[FeatureValues].[SeqNo] ) VALUES (@FeatureNo, @ItemNo, @FieldXML, @ItemNo) END
CREATE PROCEDURE [dbo].[EPCAS_GetProfParamValues](@Profile int) AS BEGIN DECLARE @Category varchar(50) SET @Category='basicProfile' DECLARE @CustomerNo int, @CustSTMode char(1), @CustMarketID varchar(20), @CustID varchar(10), @LogStats varchar(1) SELECT @CustomerNo=a.CustNo, @CustID=a.CustID, @CustMarketID=a.MarketID, @CustSTMode=CASE a.CustType WHEN 'T' THEN 'T' ELSE 'S' END FROM [dbo].[Customer] a INNER JOIN [dbo].[Profile] b ON a.CustID=b.CustID Where b.ProfNo=@Profile SET @LogStats=dbo.EAIF_GetCustomParamScalarValue_70( 'logStatistics','all','all',@CustMarketID,@CustSTMode,@CustomerNo,'C') DECLARE @InterfaceId varchar(10) DECLARE @Version varchar(10) DECLARE @MarketId varchar(20) DECLARE @STMode char(1) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@Profile DECLARE @SelectTable TABLE (ExportName varchar(100), ParamValue varchar(2000), DataType char(1)) --Could not use this proc --EXEC EAIP_GetProfileParamByCategory_70 'basicProfile', @Profile INSERT INTO @SelectTable SELECT lst.ParamName as 'ExportName', CASE WHEN (lst.ParamName='searchScreen' AND val.ParamValue='2') THEN '3' ELSE ( ISNULL(val.ParamValue, ISNULL(dfl.DefValue, lst.DefValue)) ) END as 'ParamValue', lst.ParamType as 'DataType' FROM [dbo].[CustomParamCategory] ctg INNER JOIN [dbo].[CustomParamList] lst ON ctg.Category=@Category AND ctg.ParamNo=lst.ParamNo LEFT OUTER JOIN [dbo].[CustomParamDefaults] dfl ON lst.ParamNo=dfl.ParamNo AND dfl.InterfaceID=@InterfaceID AND dfl.Version=@Version AND dfl.MarketID=@MarketId AND dfl.STMode=@STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON lst.ParamNo=val.ParamNo AND val.TargetNo=@Profile AND val.ParamLevel='P' INNER JOIN [dbo].[InterfaceParamList] int ON lst.ParamNo=int.ParamNo AND int.InterfaceID=@InterfaceID AND int.Version=@Version UNION ALL SELECT 'logStatistics' as 'ExportName', @LogStats as 'ParamValue', 'B' as 'DataType' DECLARE @DotPosn int, @CrossRefColIDVal varchar(2000) SELECT @CrossRefColIDVal=ParamValue FROM @SelectTable WHERE ExportName='crossRefColID' SET @DotPosn=CHARINDEX('.',@CrossRefColIDVal) IF @DotPosn>0 BEGIN DECLARE @ColId varchar(50), @ColIdCustId varchar(10) SET @ColIdCustId = SUBSTRING(@CrossRefColIDVal, 1, @DotPosn-1) SET @ColId = SUBSTRING(@CrossRefColIDVal, @DotPosn+1, 2000) IF @ColIdCustId = @CustID UPDATE @SelectTable SET ParamValue=@ColId WHERE ExportName='crossRefColID' ELSE UPDATE @SelectTable SET ParamValue='' WHERE ExportName='crossRefColID' END SELECT * FROM @SelectTable END
CREATE FUNCTION [dbo].[EAIF_GetItemTable_70_2]( @ItemList nvarchar(max), @Sep char(1)) RETURNS @ItemTable TABLE (Item varchar(200)) AS BEGIN DECLARE @DotPos int DECLARE @Item nvarchar(255) DECLARE @len int DECLARE @leftLen int SET @len=len(@ItemList) SET @leftLen = 0 SELECT @DotPos=charindex(@Sep,@ItemList) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item=left(@ItemList,@DotPos-1) INSERT INTO @ItemTable VALUES(@Item) SET @leftLen+= @DotPos SELECT @ItemList=substring(@ItemList,@DotPos+1,@len-@leftLen) SELECT @DotPos=charindex(@Sep,@ItemList) END INSERT INTO @ItemTable VALUES(@ItemList) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamScalarValue_92.sql CREATE PROCEDURE [dbo].[EAUI_GetDbParamScalarValue_92] (@DbVerNo int,@ParamName varchar(100)) AS BEGIN SELECT dbo.EAIF_GetDbParamScalarValue_70 (@DbVerNo,@ParamName) As ParamValue END
CREATE PROCEDURE [dbo].[UTIL_DeleteProfileListByCGP] @ProfileTriplet [ProfileTripletType] READONLY AS BEGIN PRINT N'Deleting Profiles is starting...'; IF NOT EXISTS ( SELECT * FROM sys.schemas WHERE name = 'BACK' ) BEGIN EXEC('CREATE SCHEMA BACK'); END IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US678027_DeletedProfiles' ) BEGIN CREATE TABLE BACK.US678027_DeletedProfiles ( [DateDeleted] DATETIME NOT NULL, [ProfNo] INT NOT NULL, [CustID] VARCHAR (10) NOT NULL, [GroupID] VARCHAR (10) NOT NULL, [ProfID] VARCHAR (10) NOT NULL, [InterfaceID] VARCHAR (10) NOT NULL, [Version] VARCHAR (10) NOT NULL, [MarketID] VARCHAR (20) NOT NULL, [STMode] CHAR (1) NOT NULL ) END BEGIN TRY DECLARE @CurrentDate DATETIME = GETDATE(), @ProfNo INT, @custId VARCHAR(10), @groupId VARCHAR(10), @profId VARCHAR(10), @TransId BIGINT DECLARE profNo_cursor CURSOR STATIC FOR SELECT ProfNo FROM Profile p WITH (NOLOCK) INNER JOIN @ProfileTriplet pt ON pt.CustID = p.CustID AND pt.GroupID = p.GroupID AND pt.ProfID = p.ProfID OPEN profNo_cursor FETCH NEXT FROM profNo_cursor INTO @ProfNo WHILE @@FETCH_STATUS = 0 BEGIN BEGIN TRAN INSERT BACK.US678027_DeletedProfiles SELECT @CurrentDate, ProfNo, CustID, GroupID, ProfID, InterfaceID, Version, MarketID, STMode FROM Profile WHERE ProfNo = @ProfNo EXEC EAIP_DeleteProfile_70 @ProfNo SET @TransId = CURRENT_TRANSACTION_ID(); COMMIT TRAN EXEC dbo.UTIL_WaitForReplicationComplete_224 @TransId, 120 FETCH NEXT FROM profNo_cursor INTO @ProfNo END CLOSE profNo_cursor DEALLOCATE profNo_cursor PRINT N'Finished deleting profiles'; END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); PRINT 'FAILURE'; PRINT @ErrorMessage; RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); RETURN; END CATCH END;
Create PROCEDURE [dbo].[EAIP_PromoteDatabaseSearchOptions_161] ( @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit ) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE dbso FROM [dbo].[DbSearchOption] dbso INNER JOIN #TempDbListTable t on dbso.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); INSERT INTO [dbo].[DbSearchOption] SELECT t.UpperDbVerNo AS DbVerNo,SearchOptionNo,OptionType,SearchString,TargetDb,SourceType,TabImage,AuthoritySubset,AuthorityView FROM [dbo].[DbSearchOption] dbso JOIN #TempDbListTable t ON dbso.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); DELETE dbsoc FROM [dbo].[DbSearchOptionCaption] dbsoc INNER JOIN #TempDbListTable t on dbsoc.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); INSERT INTO [dbo].[DbSearchOptionCaption] SELECT t.UpperDbVerNo AS DbVerNo,SearchOptionNo,LangCode,OptionCaption,ResultCaption,Description FROM [dbo].[DbSearchOptionCaption] dbsoc JOIN #TempDbListTable t ON dbsoc.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); DELETE dbiso FROM [dbo].[DbInterfaceSearchOption] dbiso INNER JOIN #TempDbListTable t on dbiso.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); INSERT INTO [dbo].[DbInterfaceSearchOption] SELECT t.UpperDbVerNo AS DbVerN,IntfScreenNo,SearchOptionNo,Show,SeqNo FROM [dbo].[DbInterfaceSearchOption] dbiso JOIN #TempDbListTable t ON dbiso.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)); -- Remove Customized Profile Browse Options that are not found in DbBrowseOptions DELETE [dbo].[ProfDbSearchOption] FROM [dbo].[ProfDbSearchOption] pdbbo join #TempDbListTable t on pdbbo.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) left outer join [dbo].[DbSearchOption] dbbo on t.UpperDbVerNo=dbbo.DbVerNo and pdbbo.SearchOptionNo=dbbo.SearchOptionNo where dbbo.DbVerNo is null COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_UpdateInterfaceCluster_98.sql CREATE procedure [dbo].[EAUI_UpdateInterfaceCluster_98] (@UserID nvarchar(20), @UserIP varchar(20), @InterfaceID varchar(10), @Version varchar(10), @ClustNo int, @DefaultToOpen int) as Begin Begin Try Begin Transaction set @DefaultToOpen=case when @DefaultToOpen=0 then 0 when @DefaultToOpen=1 then 1 else Null End if exists (select 1 from [dbo].[InterfaceClusters] where [dbo].[InterfaceClusters].[InterfaceID]=@InterfaceID and [dbo].[InterfaceClusters].[Version]=@Version and [dbo].[InterfaceClusters].[ClustNo]=@ClustNo) Update [dbo].[InterfaceClusters] set [dbo].[InterfaceClusters].[DefaultToOpen]=@DefaultToOpen where [dbo].[InterfaceClusters].[InterfaceID]=@InterfaceID and [dbo].[InterfaceClusters].[Version]=@Version and [dbo].[InterfaceClusters].[ClustNo]=@ClustNo else insert [dbo].[InterfaceClusters] ([dbo].[InterfaceClusters].[InterfaceID], [dbo].[InterfaceClusters].[Version], [dbo].[InterfaceClusters].[ClustNo], [dbo].[InterfaceClusters].[DefaultToOpen]) values (@InterfaceID, @Version, @ClustNo, @DefaultToOpen) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceClusters', 'Update Interface Cluster', @InterfaceID, @Version, @ClustNo commit transaction End Try Begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch End
CREATE FUNCTION dbo.EAIF_GetSearchOptionCaptions_76(@DbVerNo int, @SearchOptionNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+a.OptionCaption +' ' FROM [dbo].[DbSearchOptionCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[SearchOptionNo]=@SearchOptionNo RETURN @Captions END
/** updates to address ##844 *****/ CREATE PROCEDURE [dbo].[EAUI_GetCustomerCustomLinkItemName_70](@ItemName varchar(255)) AS BEGIN DECLARE @CustParamNo int SELECT @CustParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT SUBSTRING([pv].[ParamValue], CHARINDEX(' linkName="',[pv].[ParamValue])+11, CHARINDEX('" linkCategory=',[pv].[ParamValue])-CHARINDEX(' linkName="',[pv].[ParamValue])-11) As LinkName, a.Description 'LinkCategory', [pv].[ParamValue] as 'CustomerCustomLinkXML' FROM dbo.CustomParamXmlValues pv INNER JOIN dbo.StringValueMap a ON a.FieldCode = SUBSTRING([pv].[ParamValue], CHARINDEX('" linkCategory="',[pv].[ParamValue])+16, CHARINDEX(' linkOrigin="',[pv].[ParamValue])-CHARINDEX(' linkCategory="',[pv].[ParamValue])-16) WHERE pv.ParamNo= @CustParamNo AND pv.ItemName=@ItemName AND a.FieldName='CLCategory' END
CREATE PROCEDURE [dbo].[EAIP_DeleteAZTitle_97] ( @ColNo int, @itemCount int, @titlenoList varchar(8000) ) AS BEGIN SET NOCOUNT ON DECLARE @TitleNo int, @idx int, @x1 int, @y1 int set @x1=1 set @idx=1 WHILE (@idx <= @itemCount) BEGIN set @y1=charindex(',', @titlenoList, @x1) -- all strings always have a trailing comma set @TitleNo = case when @y1=@x1 then null else cast(substring(@titlenoList,@x1,@y1-@x1) as int) end BEGIN TRY DELETE FROM [dbo].[LocalTitle] where [dbo].[LocalTitle].[ColNo]=@ColNo and [dbo].[LocalTitle].[TitleNo]=@titleno END TRY BEGIN CATCH if (ERROR_NUMBER()<>2627) -- primary key violation. allow these since they can occur in a race condition exec [dbo].[EAIP_RethrowAZError_97] END CATCH set @x1=@y1+1 set @idx = @idx + 1 END RETURN END
CREATE PROCEDURE [dbo].[EAIP_GetDbSearchOptionCaptions_76] (@DbVerNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ SELECT ol.SearchOptionId, oc.LangCode, oc.OptionCaption, oc.ResultCaption, oc.Description FROM [dbo].[SearchOptionList] ol INNER JOIN [dbo].[DbSearchOptionCaption] oc ON oc.SearchOptionNo = ol.SearchOptionNo WHERE oc.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_RemoveDbInterfaceBrowseOption_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @OptionNo int ) AS BEGIN DECLARE @DbName varchar(30) SELECT @DbName=[dbo].[DbList].[DbName]+'('+ [dbo].[DbList].[DbLabel]+')'FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Interface varchar(30) DECLARE @ScreenDescr nvarchar(255) SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID]+'('+ [dbo].[InterfaceScreen].[Version]+')', @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[BrowseOptionList].[BrowseOptionId] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionNo]=@OptionNo BEGIN TRANSACTION DELETE FROM [dbo].[DbInterfaceBrowseOption] WHERE [dbo].[DbInterfaceBrowseOption].[DbVerNo] = @DbVerNo AND [dbo].[DbInterfaceBrowseOption].[IntfScreenNo] = @ScreenNo AND [dbo].[DbInterfaceBrowseOption].[BrowseOptionNo] = @OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'BrowseOptions', 'Remove Interface DbBrowse Option', @DbName, @Interface, @ScreenDescr, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbSegment_DbBibMap(@DbVerNo int, @SegName varchar(10)) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbBibMap].[SegName], [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag], [dbo].[DbBibMap].[SeqNo] FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName ORDER BY DbVerNo, [dbo].[DbBibMap].[SegName], [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag], [dbo].[DbBibMap].[SeqNo] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseThesaurus_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @SegName varchar(10), @Volume varchar(20), @ThesNumber int) AS BEGIN DELETE FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName AND [dbo].[DbThesaurus].[Volume] = @Volume AND [dbo].[DbThesaurus].[ThesNumber] = @ThesNumber DECLARE @ThesNumberAsText varchar(30) SELECT @ThesNumberAsText=CONVERT(varchar,@ThesNumber) EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Thesaurus', 'Segment:', @SegName,'Volume:',@Volume,'Thesaurus:',@ThesNumberAsText END
CREATE Procedure [dbo].[EAIP_CopyMDbAuthorityInterfaceCaption_90]( @InterfaceId varchar(10), @Version varchar(10), @MultiDbAuthId varchar(10), @LangCode varchar(50), @LinkText nvarchar(255), @MouseOverText nvarchar(255)) AS BEGIN IF Exists(SELECT 1 FROM [dbo].[MultiDbAuthInterfaceCaption] WHERE [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MultiDbAuthId AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @LangCode AND [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceId AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @Version) UPDATE [dbo].[MultiDbAuthInterfaceCaption] SET [dbo].[MultiDbAuthInterfaceCaption].[LinkText] = @LinkText, [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId] = @MultiDbAuthId AND [dbo].[MultiDbAuthInterfaceCaption].[LangCode] = @LangCode AND [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID] = @InterfaceId AND [dbo].[MultiDbAuthInterfaceCaption].[Version] = @Version ELSE INSERT INTO [dbo].[MultiDbAuthInterfaceCaption] ([dbo].[MultiDbAuthInterfaceCaption].[MultiDbAuthId], [dbo].[MultiDbAuthInterfaceCaption].[LangCode], [dbo].[MultiDbAuthInterfaceCaption].[LinkText], [dbo].[MultiDbAuthInterfaceCaption].[MouseOverText], [dbo].[MultiDbAuthInterfaceCaption].[InterfaceID], [dbo].[MultiDbAuthInterfaceCaption].[Version]) VALUES (@MultiDbAuthId, @LangCode, @LinkText, @MouseOverText, @InterfaceId, @Version) END
CREATE PROCEDURE [dbo].[EAUI_GetProfileCopyChildParamList_104] (@ParentParamNo int, @ProfNo int, @editLevel int) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @STMode char Select @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] From [dbo].[Profile] Where [dbo].[Profile].[ProfNo] = @ProfNo SELECT @ProfNo AS ProfNo, cpl.ParamNo, cpl.ParamName, cpl.DefValue, cped.PromptText , cpeg.HeadingText AS Heading , ISNULL(cped.ChildParamGroupHeading, cpesg.HeadingText) AS SubHeading , cped.Copyable , cped.HierarchyDisplayOptions , cped.EditLevel , cpl.ParamLevel , cpl.ParentParamNo ,cped.ProcInfo , cpeg.SeqNo AS HeadingSeqNo , cpesg.SeqNo as SubHeadingSeqNo , cped.SeqNo as ParamSeqNo FROM [dbo].[Profile] prof join [dbo].[InterfaceParamList] ipl on prof.InterfaceID = ipl.InterfaceID AND prof.Version = ipl.Version and ipl.InterfaceID=@InterfaceID and ipl.Version=@Version join [dbo].[CustomParamEditDetail] cped on ipl.ParamNo = cped.ParamNo join [dbo].[CustomParamList] cpl on cped.ParamNo=cpl.ParamNo left outer join [dbo].[InterfaceParamList2] ipl2 on ipl.InterfaceID=ipl2.InterfaceID and ipl.Version=ipl2.Version and ipl.ParamNo=ipl2.ParamNo and ipl2.Mode='S' left outer join [dbo].[CustomParamEditGroup] cpeg on cpeg.EditGroup = cped.EditGroup left outer join [dbo].[CustomParamEditSubGroup] cpesg on cpesg.EditGroup = cped.EditGroup and cpesg.EditSubGroup = cped.EditSubGroup WHERE prof.ProfNo=@ProfNo AND cped.Copyable=1 and (isnull(ipl2.EditLevel, ipl.EditLevel)>=@editLevel or isnull(ipl2.EditLevel, ipl.EditLevel)=-1) and cpl.ParentParamNo = @ParentParamNo ORDER BY cped.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_AddDocType_77](@UserID nvarchar(20),@UserIP varchar(30),@DocTypeID varchar(10), @Category char, @SearchString varchar(1500), @ParentID varchar(10), @Sort varchar(50), @SearchImage varchar(255), @Resultimage varchar(255), @DefValue bit, @Caption nvarchar(255), @MouseOverText nvarchar(255))AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID) BEGIN RAISERROR ('Document Type ID "%s" already exists.',16,1, @DocTypeID) RETURN END DECLARE @ParentNo int IF @ParentID='' SET @ParentNo=null ELSE BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@ParentID) BEGIN RAISERROR ('Document Type ID "%s" passed as a Parent ID does not exist.',16,1, @ParentID) RETURN END ELSE SELECT @ParentNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@ParentID DECLARE @PCategory char SELECT @PCategory=[dbo].[DocTypeList].[Category] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@ParentID IF @PCategory<>'R' BEGIN RAISERROR ('Document Type ID "%s" passed as a Parent should have "Rolled Up" category.',16,1, @ParentID) RETURN END IF @Category<>'G' BEGIN RAISERROR ('Document Type with a Parent should have "Granular" category.',16,1, @ParentID) RETURN END END BEGIN TRANSACTION INSERT INTO [dbo].[DocTypeList] ([dbo].[DocTypeList].[DocTypeID],[dbo].[DocTypeList].[SearchString],[dbo].[DocTypeList].[SortOption],[dbo].[DocTypeList].[SearchImage],[dbo].[DocTypeList].[ResultImage],[dbo].[DocTypeList].[DefValue],[dbo].[DocTypeList].[Category],[dbo].[DocTypeList].[ParentDocTypeNo]) VALUES (@DocTypeID,@SearchString,@Sort, @SearchImage,@Resultimage,@DefValue,@Category,@ParentNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DocTypeNo int SELECT @DocTypeNo=[dbo].[DocTypeList].[DocTypeNo] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeID]=@DocTypeID INSERT INTO [dbo].[DocTypeCaption] ([dbo].[DocTypeCaption].[DocTypeNo],[dbo].[DocTypeCaption].[LangCode],[dbo].[DocTypeCaption].[Caption],[dbo].[DocTypeCaption].[MouseOverText]) VALUES (@DocTypeNo, 'en',@Caption,@MouseOverText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Param1 varchar(1024) SET @Param1 = @DocTypeID+','+@Category+','+IsNULL(@ParentID,'')+','+@Sort+','+convert(char,@DefValue)+','+@SearchImage+','+@Resultimage EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Add DocType', @Param1 ,@SearchString,@Caption, @MouseOverText COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfDbSearchOptions_76]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @DbVerNo int ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT ifs.ScreenID, ol.SearchOptionId, IsNull(pdo.Show,dio.Show) as Show,IsNull(pdo.SeqNo,dio.SeqNo) as SeqNo FROM [dbo].[InterfaceScreen] ifs WITH (NOLOCK) INNER JOIN [dbo].[DbInterfaceSearchOption] dio ON dio.IntfScreenNo=ifs.IntfScreenNo LEFT OUTER JOIN [dbo].[ProfDbSearchOption] pdo ON pdo.ProfNo=@ProfNo AND pdo.DbVerNo=dio.DbVerNo AND pdo.SearchOptionNo=dio.SearchOptionNo AND pdo.IntfScreenNo=dio.IntfScreenNo INNER JOIN [dbo].[DbSearchOption] do ON dio.DbVerNo=do.DbVerNo AND dio.SearchOptionNo=do.SearchOptionNo INNER JOIN [dbo].[SearchOptionList] ol WITH (NOLOCK) ON do.SearchOptionNo=ol.SearchOptionNo WHERE ifs.InterfaceID=@InterfaceID AND ifs.Version=@Version AND dio.DbVerNo=@DbVerNo AND IsNull(pdo.Show,dio.Show) = 1 ORDER By ifs.ScreenID,SeqNo END
CREATE PROCEDURE [dbo].[BLL_GetDBInfo](@ShortDBName varchar(10), @Label varchar(10)='live') AS BEGIN DECLARE @DbVerNo int, @RelevancyRanking bit, @LimitList varchar(100), @SuggestSubjectHeading bit, @SpellChecker bit, @FocusFeatureAllowed bit, @DbTitleList bit, @SubjHeadingDb varchar(10), @SDIAlert bit, @FTExpansion bit, @HasFullText bit, @ThesaurusExpansion bit, @referenceBrowsingAllowed bit, @referenceSearchingAllowed bit, @indexBrowseAllowed bit SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@Label SET @RelevancyRanking=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'relevancyRankAllowed')) SET @LimitList = dbo.EAIF_GetDbLimiterDefaults_70(@DbVerNo) SET @SuggestSubjectHeading=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'suggestSubjectHeading')) SET @SpellChecker=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'spellchecker')) SET @FocusFeatureAllowed=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'focusFeatureAllowed')) SET @DbTitleList=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'dbTitleList')) SET @SubjHeadingDb=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'subjectHeadingDbName') SET @SDIAlert=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'sdiAlertAllowed')) SET @FTExpansion=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'fullTextExpansionAllowed')) SET @HasFullText=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'fullTextAllowed')) SET @ThesaurusExpansion=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'thesaurusExpansionAllowed')) SET @referenceBrowsingAllowed=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'refrenceBrowsingAllowed')) SET @referenceSearchingAllowed=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'refrenceSearchingAllowed')) SET @indexBrowseAllowed=CONVERT(bit,dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'indexBrowseAllowed')) SELECT @ShortDBName as 'ShortDBName', @RelevancyRanking as 'RelevancyRanking', @LimitList as 'LimitList', @SuggestSubjectHeading as 'SuggestSubjectHeading', @SpellChecker as 'SpellChecker', @FocusFeatureAllowed as 'FocusFeatureAllowed', @DbTitleList as 'DbTitleList', @SubjHeadingDb as 'SubjHeadingDb', @SDIAlert as 'SDIAlert', @FTExpansion as 'FTExpansion', @HasFullText as 'FulltextAllowed', @ThesaurusExpansion as 'ThesExpansionAllowed', @referenceBrowsingAllowed as 'referenceBrowsingAllowed', @referenceSearchingAllowed as 'referenceSearchingAllowed', @indexBrowseAllowed as 'indexBrowseAllowed' END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceMDbSTSToAttach_90] (@InterfaceID varchar(10), @Version varchar(10)) AS Select mdbsl.MultiDBSTSID, mdbsl.MultiDBSTSID + ' (' + [mdbsc].[Caption] + ')' as MDbSTS From [dbo].[MultiDbSTSList] mdbsl Join [dbo].[MultiDbSTSCaption] mdbsc On mdbsl.MultiDBSTSID=mdbsc.MultiDBSTSID where [mdbsc].[LangCode]='en' and mdbsl.MultiDBSTSID not in (Select [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID] from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version) Order by mdbsl.MultiDBSTSID
CREATE PROCEDURE [dbo].[EAIS_UpdateUserDefinedFields](@CustID varchar(10),@UserDefined1 nvarchar(255),@UserDefined2 nvarchar(255) ) AS BEGIN EXEC [dbo].[EAIP_UpdateUserDefinedFields_70] @CustID ,@UserDefined1 ,@UserDefined2 IF @@ERROR=0 SELECT 1 END
CREATE PROCEDURE [dbo].[EPCAS_GetProfPrinter](@ProfNo int) AS BEGIN DECLARE @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @STMode char(1), @EmailAllowed int, @PrintAllowed int SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SET @EmailAllowed = dbo.EAIF_GetCustomParamScalarValue_70('emailPermitted', @Interfaceid,@version,@MarketId,@STMode,@ProfNo,'P') SET @PrintAllowed = dbo.EAIF_GetCustomParamScalarValue_70('printingPermitted', @Interfaceid,@version,@MarketId,@STMode,@ProfNo,'P') IF @EmailAllowed=1 AND @PrintAllowed=1 SELECT 'Local Printer' as 'Name','local' as 'PrType' UNION ALL SELECT 'Email' as 'Name','email' as 'PrType' ELSE IF @PrintAllowed=1 SELECT 'Local Printer' as 'Name','local' as 'PrType' ELSE IF @EmailAllowed=1 SELECT 'Email' as 'Name','email' as 'PrType' END
--based on: \Functions\EAIF_GetItemTable_70.sql -- use it for VARCHAR data CREATE FUNCTION [dbo].[EAIF_GetItemTableSingleByte_70]( @ItemList varchar(max), @Sep char(1)) RETURNS @ItemTable TABLE (Item varchar(255)) AS BEGIN DECLARE @DotPos int DECLARE @Item varchar(255) DECLARE @len int DECLARE @leftLen int SET @len=len(@ItemList) SET @leftLen = 0 SELECT @DotPos=charindex(@Sep,@ItemList) WHILE @DotPos <> 0 AND @DotPos IS NOT NULL BEGIN SELECT @Item=left(@ItemList,@DotPos-1) IF @Item IS NOT NULL AND @Item<>'' INSERT INTO @ItemTable VALUES(@Item) SET @leftLen+= @DotPos SELECT @ItemList=substring(@ItemList,@DotPos+1,@len-@leftLen) SELECT @DotPos=charindex(@Sep,@ItemList) END IF @ItemList IS NOT NULL AND @ItemList<>'' INSERT INTO @ItemTable VALUES(@ItemList) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamScalarValues_70.sql create PROCEDURE [dbo].[EAUI_GetDbParamScalarValues_104] (@DbVerNo int, @EditLevel smallint, @SourceType char(1), @DbType int) AS BEGIN declare @PhysDbVerNo int = -1 select @PhysDbVerNo=[dbo].[DbSubset].[PhysDbVerNo] from [dbo].[DbSubset] where [dbo].[DbSubset].[SubsetDbVerNo] = @DbVerNo if (@PhysDbVerNo = -1) -- if I'm not a subset, I will get the data in the very very normal way. begin SELECT a.ParamNo, dbo.EAIF_GetDbParamName_70(a.ParamNo) as ParamName, [b].[PromptText], [b].[HelpText], b.EditControl, [b].[ValueTemplate], ISNULL(d.ParamValue, IsNull(e.DefValue,ISNULL(c.DefValue,''))) as Value, [a].[ParamType],ISNULL(b.ProcInfo,'') AS ProcInfo, 0 as InheritFromPhysical FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel Left Outer Join [dbo].[DbParamSourceTypeDefaults] e on a.ParamNo=e.ParamNo and e.SourceType=@SourceType LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON d.DbVerNo=@DbVerNO AND a.ParamNo = d.ParamNo WHERE a.ParamType IN ('B','S','N', 'L') AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) AND a.ParamSourceType like '%' + @SourceType + '%' and ([a].[ParamDbType] & power(2,@DbType) <>0 or [a].[ParamDbType] is null) --AND b.EditGroup = '' ORDER BY b.SeqNo end else begin SELECT a.ParamNo, dbo.EAIF_GetDbParamName_70(a.ParamNo) as ParamName, [b].[PromptText], [b].[HelpText], [b].[EditControl], [b].[ValueTemplate], case [a].[InheritFromPhysical] when 1 then ISNULL(d1.ParamValue, IsNull(e.DefValue,ISNULL(c.DefValue,''))) else ISNULL(d.ParamValue, IsNull(e.DefValue,ISNULL(c.DefValue,''))) end as Value, [a].[ParamType],ISNULL(b.ProcInfo,'') AS ProcInfo, a.InheritFromPhysical as InheritFromPhysical FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel Left Outer Join [dbo].[DbParamSourceTypeDefaults] e on a.ParamNo=e.ParamNo and e.SourceType=@SourceType LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON d.DbVerNo=@DbVerNO AND a.ParamNo = d.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] d1 ON d1.DbVerNo=@PhysDbVerNo AND a.ParamNo = d1.ParamNo WHERE a.ParamType IN ('B','S','N', 'L') AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) AND a.ParamSourceType like '%' + @SourceType + '%' and ([a].[ParamDbType] & power(2,@DbType) <>0 or [a].[ParamDbType] is null) --AND b.EditGroup = '' ORDER BY b.SeqNo end END
CREATE PROCEDURE [dbo].[UTIL_DeleteUnusedProfiles] --profiles which migrated to AWS isn't tracked in EAUSAGE tables and we don't need to delete them @ExcludedProfiles [ProfileTripletType] READONLY, @InterfaceVersion [InterfaceVersionType] READONLY, @MarketID VARCHAR(20), @ExcludedCountries VARCHAR(MAX) = '', @ExcludedCustomers [CustIDType] READONLY, @NumberOfYearsWithNoUsage SMALLINT AS BEGIN DECLARE @ParamNo INT, @ProfNo INT, @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10); SELECT @ParamNo = dbo.CustomParamList.ParamNo FROM dbo.CustomParamList WHERE dbo.CustomParamList.ParamName = 'logStatistics' BEGIN TRY DECLARE profNo_cursor CURSOR STATIC FOR SELECT p.ProfNo, p.CustID, p.GroupID, p.ProfID FROM @InterfaceVersion iv INNER JOIN dbo.Profile p WITH (NOLOCK) ON p.InterfaceID = iv.InterfaceID AND p.Version = iv.Version AND p.MarketID = @MarketID AND NOT EXISTS (SELECT 1 FROM @ExcludedProfiles ep WHERE ep.CustID = p.CustID AND ep.GroupID = p.GroupID AND ep.ProfID = p.ProfID) INNER JOIN dbo.Customer c WITH (NOLOCK) ON c.CustID = p.CustID AND c.CustType NOT IN ('I','U') AND NOT EXISTS (SELECT 1 FROM @ExcludedCustomers ec WHERE ec.CustID = p.CustID) INNER JOIN dbo.CustAddress ca WITH (NOLOCK) ON ca.CustID = c.CustID AND NOT EXISTS (SELECT 1 FROM dbo.Country cntr WITH (NOLOCK) INNER JOIN STRING_SPLIT(@ExcludedCountries, ',') ec ON VALUE = cntr.CountryName WHERE cntr.CountryID = ca.CountryID) WHERE EXISTS ( SELECT 1 FROM dbo.CustomParamList cpl WITH (NOLOCK) LEFT OUTER JOIN dbo.CustomParamDefaults cpd WITH (NOLOCK) ON cpl.ParamNo = cpd.ParamNo LEFT OUTER JOIN dbo.CustomParamScalarValues cpsv WITH (NOLOCK) ON cpsv.ParamLevel = 'C' AND cpsv.ParamNo = cpl.ParamNo WHERE cpl.ParamNo = @ParamNo AND c.CustNo = cpsv.TargetNo AND COALESCE(cpsv.ParamValue, cpd.DefValue, cpl.DefValue) = '1' ) OPEN profNo_cursor FETCH NEXT FROM profNo_cursor INTO @ProfNo, @CustID, @GroupID, @ProfID PRINT 'Deleting profiles by MarketID with no usage is started.'; DECLARE @ProfileTriplet AS ProfileTripletType WHILE @@FETCH_STATUS = 0 BEGIN INSERT INTO @ProfileTriplet(CustID, GroupID, ProfID) VALUES (@CustID, @GroupID, @ProfID) EXEC dbo.UTIL_DeleteProfileIfNoUsageOnPeriod @ProfNo, @ProfileTriplet, @NumberOfYearsWithNoUsage DELETE FROM @ProfileTriplet FETCH NEXT FROM profNo_cursor INTO @ProfNo, @CustID, @GroupID, @ProfID END CLOSE profNo_cursor DEALLOCATE profNo_cursor PRINT 'Deleting profiles by MarketID with no usage has finished successfully.'; END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR ( @ErrorMessage, @ErrorSeverity, @ErrorState ) END CATCH END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseSearchOptions_70]( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRANSACTION /****** DbSearchOption ******/ DELETE FROM [dbo].[DbSearchOption] WHERE [dbo].[DbSearchOption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbSearchOption] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbSearchOption].[SearchOptionNo],[dbo].[DbSearchOption].[OptionType],[dbo].[DbSearchOption].[SearchString],[dbo].[DbSearchOption].[TargetDb],[dbo].[DbSearchOption].[SourceType],[dbo].[DbSearchOption].[TabImage],[dbo].[DbSearchOption].[AuthoritySubset],[dbo].[DbSearchOption].[AuthorityView] FROM [dbo].[DbSearchOption] WHERE [dbo].[DbSearchOption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /****** DbSearchOptionCaption ******/ DELETE FROM [dbo].[DbSearchOptionCaption] WHERE [dbo].[DbSearchOptionCaption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbSearchOptionCaption] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbSearchOptionCaption].[SearchOptionNo],[dbo].[DbSearchOptionCaption].[LangCode],[dbo].[DbSearchOptionCaption].[OptionCaption],[dbo].[DbSearchOptionCaption].[ResultCaption],[dbo].[DbSearchOptionCaption].[Description] FROM [dbo].[DbSearchOptionCaption] WHERE [dbo].[DbSearchOptionCaption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /** DbInterfaceSearchOption*/ DELETE FROM [dbo].[DbInterfaceSearchOption] WHERE [dbo].[DbInterfaceSearchOption].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbInterfaceSearchOption] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbInterfaceSearchOption].[IntfScreenNo],[dbo].[DbInterfaceSearchOption].[SearchOptionNo],[dbo].[DbInterfaceSearchOption].[Show],[dbo].[DbInterfaceSearchOption].[SeqNo] FROM [dbo].[DbInterfaceSearchOption] WHERE [dbo].[DbInterfaceSearchOption].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END /* Remove Customized Profile Browse Options that are not found in DbSearchOptions */ DELETE [dbo].[ProfDbSearchOption] FROM [dbo].[ProfDbSearchOption] WHERE [dbo].[ProfDbSearchOption].[DbVerNo] = @NewDbVerNo AND [dbo].[ProfDbSearchOption].[SearchOptionNo] NOT IN (SELECT [dbo].[DbSearchOption].[SearchOptionNo] FROM [dbo].[DbSearchOption] WHERE [dbo].[DbSearchOption].[DbVerNo]=@NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE Procedure [dbo].[EAUI_UpdateInterfaceCustomParamEditDetail_91] @UserID nvarchar(255), @UserIP varchar(255), @ParamNo int, @InterfaceID varchar(10), @Version varchar(10), @PromptText varchar(255), @HelpText varchar(255), @HintText varchar(255), @ChildEditPromptText varchar(255), @ValueTemplate varchar(2000) as Begin Try Begin Transaction if exists (select 1 from [dbo].[InterfaceCustomParamEditDetail] where [dbo].[InterfaceCustomParamEditDetail].[ParamNo]=@ParamNo and [dbo].[InterfaceCustomParamEditDetail].[InterfaceID]=@InterfaceID and [dbo].[InterfaceCustomParamEditDetail].[Version]=@Version) Begin Update [dbo].[InterfaceCustomParamEditDetail] Set [dbo].[InterfaceCustomParamEditDetail].[PromptText]=@PromptText, [dbo].[InterfaceCustomParamEditDetail].[HelpText]=@HelpText, [dbo].[InterfaceCustomParamEditDetail].[HintText]=@HintText, [dbo].[InterfaceCustomParamEditDetail].[ChildEditPromptText]=@ChildEditPromptText, [dbo].[InterfaceCustomParamEditDetail].[ValueTemplate]=@ValueTemplate Where [dbo].[InterfaceCustomParamEditDetail].[InterfaceID]=@InterfaceID and [dbo].[InterfaceCustomParamEditDetail].[Version]=@Version and [dbo].[InterfaceCustomParamEditDetail].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceCustomParamEditDetail', 'Update InterfaceCustomParamEditDetail', @InterfaceID, @Version, @ParamNo End Else Begin Insert [dbo].[InterfaceCustomParamEditDetail] ([dbo].[InterfaceCustomParamEditDetail].[InterfaceID], [dbo].[InterfaceCustomParamEditDetail].[Version], [dbo].[InterfaceCustomParamEditDetail].[ParamNo], [dbo].[InterfaceCustomParamEditDetail].[PromptText], [dbo].[InterfaceCustomParamEditDetail].[HelpText], [dbo].[InterfaceCustomParamEditDetail].[ValueTemplate], [dbo].[InterfaceCustomParamEditDetail].[HintText], [dbo].[InterfaceCustomParamEditDetail].[ChildEditPromptText]) Values (@InterfaceID, @Version, @ParamNo, @PromptText, @HelpText, @ValueTemplate, @HintText, @ChildEditPromptText) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceCustomParamEditDetail', 'Insert InterfaceCustomParamEditDetail', @InterfaceID, @Version, @ParamNo End Commit Transaction End Try Begin Catch Rollback Transaction End Catch
CREATE FUNCTION dbo.EAIF_GetSearchResultCaptions_76(@DbVerNo int, @SearchOptionNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+a.ResultCaption +' ' FROM [dbo].[DbSearchOptionCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[SearchOptionNo]=@SearchOptionNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerDatabases_70](@CustID varchar(10),@SourceType varchar(10)) AS BEGIN /* Source type a- All sources (databases), m - External sources only, d - Ep databases only*/ IF @SourceType = 'a' BEGIN SELECT t.DbName as DbName, max(t.DisplayName) DisplayName, Max(t.Mode) AS Mode, MAX(t.SourceName) as SourceType FROM (SELECT DISTINCT c.DbName, Max(c.DisplayName) as DisplayName, Max(b.Mode) AS Mode, Max(c.SourceType) as SourceType, Max(case when c.SourceType='C' and c.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end) as SourceName FROM dbo.Profile a INNER JOIN dbo.ProfDatabase b ON a.ProfNo=b.ProfNo INNER JOIN dbo.DbList c ON b.DbVerNo=c.DbVerNo LEFT OUTER JOIN EASUPPORT.dbo.CustomerCatalogs cc on c.DbName=cc.DbName INNER JOIN EASUPPORT.dbo.ProductOfferingSource pos on c.SourceType=pos.SourceType WHERE a.CustID=@CustID AND c.DbType=1 AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0 ) GROUP BY c.DbName) t GROUP BY [t].[DbName] order by DisplayName END ELSE BEGIN SELECT t.DbName as DbName, max(t.DisplayName) DisplayName, Max(t.Mode) AS Mode, MAX(t.SourceName) as SourceType FROM ( SELECT DISTINCT c.DbName, Max(c.DisplayName) as DisplayName, Max(b.Mode) AS Mode, Max(c.SourceType) as SourceType, Max(case when c.SourceType='C' and c.DbName like 'ir%' then 'Institutional Repositories' else pos.SourceName end) as SourceName FROM dbo.Profile a INNER JOIN dbo.ProfDatabase b ON a.ProfNo=b.ProfNo INNER JOIN dbo.DbList c ON b.DbVerNo=c.DbVerNo LEFT OUTER JOIN EASUPPORT.dbo.CustomerCatalogs cc on c.DbName=cc.DbName INNER JOIN EASUPPORT.dbo.ProductOfferingSource pos on c.SourceType=pos.SourceType WHERE a.CustID=@CustID AND c.DbType=1 and ((c.DbName like @SourceType + '%' and c.SourceType='C') or c.SourceType=@SourceType) AND (b.Mode is null OR b.Mode<>'X') AND (b.AccessEndDate is null or datediff(hh, b.AccessEndDate, getdate())<0) GROUP BY c.DbName) t GROUP BY [t].[DbName] order by DisplayName End END
CREATE PROCEDURE [dbo].[EAIP_DeleteCfgApplication_151]( @UserID nvarchar(20), @UserIP varchar(15), @AppName varchar(20)) AS BEGIN DECLARE @AppNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppName) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppName) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppName EXEC [dbo].[EAUI_DeleteCfgApplication_70] @UserID, @UserIP, @AppNo END
CREATE PROCEDURE [dbo].[EAIP_GetDbSearchOptions_76] (@DbVerNo int) AS BEGIN /***stored procedure is used by EACopy utility**********************/ SELECT ol.SearchOptionId, dso.OptionType, dso.SearchString, dso.TargetDb, dso.SourceType, dso.TabImage, dso.AuthoritySubset, dso.AuthorityView FROM [dbo].[DbSearchOption] dso INNER JOIN [dbo].[SearchOptionList] ol ON dso.SearchOptionNo = ol.SearchOptionNo WHERE dso.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_RemoveDbInterfaceSearchOption_76] (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @ScreenNo int, @OptionNo int ) AS BEGIN DECLARE @DbName varchar(30) SELECT @DbName=[dbo].[DbList].[DbName]+'('+ [dbo].[DbList].[DbLabel]+')'FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo DECLARE @Interface varchar(30) DECLARE @ScreenDescr nvarchar(255) SELECT @Interface=[dbo].[InterfaceScreen].[InterfaceID]+'('+ [dbo].[InterfaceScreen].[Version]+')', @ScreenDescr=[dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo DECLARE @OptionID varchar(20) SELECT @OptionID=[dbo].[SearchOptionList].[SearchOptionId] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionNo]=@OptionNo BEGIN TRANSACTION DELETE FROM [dbo].[DbInterfaceSearchOption] WHERE [dbo].[DbInterfaceSearchOption].[DbVerNo] = @DbVerNo AND [dbo].[DbInterfaceSearchOption].[IntfScreenNo] = @ScreenNo AND [dbo].[DbInterfaceSearchOption].[SearchOptionNo] = @OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'SearchOptions', 'Remove Interface DbSearch Option', @DbName, @Interface, @ScreenDescr, @OptionID COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbSegment_DbFieldTag(@DbVerNo int, @SegName varchar(10)) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbFieldTag].[SegName], [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[Description], [dbo].[DbFieldTag].[IndexType], [dbo].[DbFieldTag].[Category], [dbo].[DbFieldTag].[ThesNumber], [dbo].[DbFieldTag].[FieldNumbers], [dbo].[DbFieldTag].[SeqNo], [dbo].[DbFieldTag].[Description2] FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo] = @DbVerNo AND [dbo].[DbFieldTag].[SegName] = @SegName ORDER BY DbVerNo, [dbo].[DbFieldTag].[SegName], [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[Description], [dbo].[DbFieldTag].[IndexType], [dbo].[DbFieldTag].[Category], [dbo].[DbFieldTag].[ThesNumber], [dbo].[DbFieldTag].[FieldNumbers], [dbo].[DbFieldTag].[SeqNo], [dbo].[DbFieldTag].[Description2] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseTopic_77] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int, @TopicNo int)AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbTopic] WHERE [dbo].[DbTopic].[DbVerNo]=@DbVerNo AND [dbo].[DbTopic].[TopicNo]=@TopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10), @Caption nvarchar(255) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @Caption=@Caption From [dbo].[TopicCaption] WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo AND [dbo].[TopicCaption].[LangCode]='en' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Delete Topic', @DbName,@DbLabel,@Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyProfileCustomToolbars_104](@ParamNo smallint, @SrcProfNo int, @DstProfNo int, @Operation varchar(20), @SelectedToolbars nvarchar(max)) AS BEGIN -- Step A: To process the toolbars, we need to first get the toolbar XML from the CustomParamXmlValues table. -- Here is an example of one "item" from the toolbar XML --- --
-- There are usually multiple "item" elements in the toolbar XML -- Step B: Next the XML is "shredded" into tables (source and dest (or target) tables) which contain the ItemIndex, ItemName and attrib columns -- The resulting table entries for the above XML look like this -- ItemIndex ItemName ItemType attrib -- 2 ItemNo N 2 -- 2 ItemType S Images -- 2 ItemCaption S Image Search -- 2 URL S -- 2 Align S L -- 2 Category S E -- The ItemType attrib value will be the unique identifier. Also, the Align value (L or R) indicates whether or not the item -- is on the left or right toolbar -- Step C: Check if the operation is replace (r) or append (a) -- Step D: for either operation, check if the user specified toolbar items to copy in @SelectedToolbars. -- If @SelectedToolbars is empty, copy all of the toolbars from the source profile. -- Witin each operation the processing is handled differently. For replace, the toolbar items in the target are deleted -- then the appropriate ones (selected or all) are added back. For append, the items on the target that match the ones being -- added (selected or all) are deleted the the appropriate ones are appended. Delete is performed because we need to -- append the "new" items "after" the existing items and we need to get the max item number for the items that remain on the target -- after the delete. -- Step E: Once all the processing is done, the values in temp tables are converted back to XML using FOR XML PATH. -- Step F: Finally the CustomParamXmlValue table is updated with the new toolbar XML for the target. -- Step A: DECLARE @dstXML AS NVARCHAR(MAX) DECLARE @selectedToolbarItems TABLE (toolbarItem nvarchar(50)) INSERT INTO @selectedToolbarItems SELECT * FROM dbo.EAIF_GetItemTable_70(@SelectedToolbars,',') -- first get the toolbar XML for each profile DECLARE @srcToolbarXML as XML DECLARE @dstToolbarXML as XML SET @srcToolbarXML = (select cast([dbo].[CustomParamXmlValues].[ParamValue] as XML) from [dbo].[CustomParamXmlValues] where [dbo].[CustomParamXmlValues].[TargetNo]=@SrcProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo) SET @dstToolbarXML = (select cast([dbo].[CustomParamXmlValues].[ParamValue] as XML) from [dbo].[CustomParamXmlValues] where [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo) -- now convert the XML into temporary tables DECLARE @srcTable TABLE ( ItemIndex int, ItemName NVARCHAR(50), ItemType CHAR(1), attrib NVARCHAR(255) ) DECLARE @dstTable TABLE ( ItemIndex int, ItemName NVARCHAR(50), ItemType CHAR(1), attrib NVARCHAR(255) ) -- Step B: -- source toolbar XML INSERT @srcTable (ItemIndex, attrib, ItemName, ItemType) SELECT [test].[rowId], att.c.value(N'.[1]', N'nvarchar(255)') AS AttribValue, att.c.value(N'(@name)[1]', N'nvarchar(50)') AS AttribName, att.c.value('(@type)[1]', 'char(1)') AS AttribType FROM ( SELECT ROW_NUMBER() OVER ( ORDER BY ( SELECT 1 ) ) rowId, item.pref.query('.') as Q FROM @srcToolbarXML.nodes('/item') AS item(pref) ) as test CROSS APPLY test.Q.nodes('/item') at(c) CROSS APPLY at.c.nodes('attrib') att(c) -- dest toolbar XML INSERT @dstTable (ItemIndex, attrib, ItemName, ItemType) SELECT [test].[rowId], att.c.value(N'.[1]', N'nvarchar(255)') AS AttribValue, att.c.value(N'(@name)[1]', N'nvarchar(50)') AS AttribName, att.c.value('(@type)[1]', 'char(1)') AS AttribType FROM ( SELECT ROW_NUMBER() OVER ( ORDER BY ( SELECT 1 ) ) rowId, item.pref.query('.') as Q FROM @dstToolbarXML.nodes('/item') AS item(pref) ) as test CROSS APPLY test.Q.nodes('/item') at(c) CROSS APPLY at.c.nodes('attrib') att(c) -- Step C: -- now start processing based on the operation (r = replace, a = append) IF (@Operation = 'r') BEGIN -- replace -- Step D: -- check if we're only updating a selected subset of toolbars IF LEN(@SelectedToolbars) > 0 BEGIN -- first remove whatever is there since we're doing a replace DELETE @dstTable -- insert the selected items into the temp dest table INSERT INTO @dstTable (ItemIndex, ItemName, ItemType, attrib) SELECT allsrc.ItemIndex, allsrc.ItemName, allsrc.ItemType, allsrc.attrib FROM @srcTable allsrc JOIN @srcTable src on allsrc.ItemIndex = src.ItemIndex JOIN @selectedToolbarItems st ON st.toolbarItem = src.attrib WHERE src.ItemName = 'ItemType' -- Step E: -- convert back to XML SET @dstXML = (SELECT '', ( SELECT [attribs].[ItemName] as "attrib/@name", [attribs].[ItemType] as "attrib/@type", [attribs].[attrib] as attrib FROM @dstTable attribs WHERE attribs.ItemIndex = items.ItemIndex FOR XML PATH (''), TYPE) FROM @dstTable items GROUP BY [items].[ItemIndex] FOR XML PATH ('item')) ---- get rid of double quotes because CustomizeToolbarForm.aspx doesn't like them --SELECT @dstXML = REPLACE(@dstXML, '"', '''') -- Step F: -- and insert/update back into table for dest profile IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo) BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @dstXML WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo END ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) VALUES (@DstProfNo, 'P', @ParamNo, '', @dstXML) END END ELSE -- get all of the toolbars from the source profile BEGIN -- just replace what's there for the target profile with the entire XML string from the source profile -- insert/update back into table for dest profile -- Step F: IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo) BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = CONVERT(NVARCHAR(MAX), @srcToolbarXML) WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo END ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) VALUES (@DstProfNo, 'P', @ParamNo, '', CONVERT(NVARCHAR(MAX), @srcToolbarXML)) END END END -- replace ELSE BEGIN IF (@Operation = 'a') -- append -- Step D: -- check if we're only appending a selected subset of toolbars IF LEN(@SelectedToolbars) > 0 BEGIN -- variables to store max ItemNos for left and right toolbars DECLARE @MaxRightItemNo int DECLARE @MaxLeftItemNo int -- get the max ItemNo for the right toolbar items SET @MaxRightItemNo = ISNULL((SELECT MAX(CAST(a.attrib AS Int)) AS MaxItemNo FROM @dstTable a JOIN @dstTable b on a.ItemIndex = b.ItemIndex and b.ItemName='Align' and b.attrib = 'R' WHERE a.ItemName = 'ItemNo' ), 0) -- get the max ItemNo for the left toolbar items SET @MaxLeftItemNo = ISNULL((SELECT MAX(CAST(a.attrib AS Int)) AS MaxItemNo FROM @dstTable a JOIN @dstTable b on a.ItemIndex = b.ItemIndex and b.ItemName='Align' and b.attrib = 'L' WHERE a.ItemName = 'ItemNo' ), 0) -- add selected items to the temp dest table, using a "new" item index so we can compare later when updating the ItemNo values INSERT INTO @dstTable ([dst].[ItemIndex], [dst].[ItemName], [dst].[ItemType], [dst].[attrib]) SELECT allsrc.ItemIndex *100, allsrc.ItemName, allsrc.ItemType, allsrc.attrib FROM @srcTable allsrc JOIN @srcTable src on allsrc.ItemIndex = src.ItemIndex LEFT OUTER JOIN @dstTable dst ON dst.ItemName = src.ItemName and dst.attrib = src.attrib JOIN @selectedToolbarItems st ON st.toolbarItem = src.attrib WHERE src.ItemName = 'ItemType' and dst.ItemIndex IS NULL -- store the items we're adding in a temp table with an ItemIndex to match the "new" one above -- this temp table will be used in a CTE below (NewItemNos) to get the new ItemNo for the appended items DECLARE @tempTable TABLE ( ItemIndex int, ItemName NVARCHAR(50), ItemType CHAR(1), attrib NVARCHAR(255) ) INSERT INTO @tempTable (ItemIndex, ItemName, ItemType, attrib) SELECT allsrc.ItemIndex *100, allsrc.ItemName, allsrc.ItemType, allsrc.attrib FROM @srcTable allsrc JOIN @srcTable src on allsrc.ItemIndex = src.ItemIndex LEFT OUTER JOIN @dstTable dst ON dst.ItemName = src.ItemName and dst.attrib = src.attrib JOIN @selectedToolbarItems st ON st.toolbarItem = src.attrib WHERE src.ItemName = 'ItemType' and dst.ItemIndex IS NULL --update left item nos ;with NewItemNos as (SELECT a.ItemIndex , b.attrib, @MaxLeftItemNo + ROW_NUMBER() OVER(ORDER BY b.attrib) as NewSeqNo FROM @tempTable a JOIN @tempTable b ON a.ItemIndex = b.ItemIndex AND b.ItemName = 'ItemNo' WHERE a.ItemName='Align' AND a.attrib='L') UPDATE dst SET [dst].[attrib] = temp.NewSeqNo FROM NewItemNos temp JOIN @dstTable dst ON temp.ItemIndex = dst.ItemIndex WHERE dst.ItemName='ItemNo' -- update right item nos ;with NewItemNos as (SELECT a.ItemIndex , b.attrib, @MaxRightItemNo + ROW_NUMBER() OVER(ORDER BY b.attrib) as NewSeqNo FROM @tempTable a JOIN @tempTable b ON a.ItemIndex = b.ItemIndex AND b.ItemName = 'ItemNo' WHERE a.ItemName='Align' AND a.attrib='R') UPDATE dst SET [dst].[attrib] = temp.NewSeqNo FROM NewItemNos temp JOIN @dstTable dst ON temp.ItemIndex = dst.ItemIndex WHERE dst.ItemName='ItemNo' -- Step E: -- convert back to XML SET @dstXML = (SELECT '', ( SELECT [attribs].[ItemName] as "attrib/@name", [attribs].[ItemType] as "attrib/@type", [attribs].[attrib] as attrib FROM @dstTable attribs WHERE attribs.ItemIndex = items.ItemIndex FOR XML PATH (''), TYPE) FROM @dstTable items GROUP BY [items].[ItemIndex] FOR XML PATH ('item')) ---- get rid of double quotes because CustomizeToolbarForm.aspx doesn't like them --SELECT @dstXML = REPLACE(@dstXML, '"', '''') -- Step F: -- and insert/update back into table for dest profile IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo) BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @dstXML WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo END ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) VALUES (@DstProfNo, 'P', @ParamNo, '', @dstXML) END END ELSE -- append all of the toolbars from the source profile BEGIN -- get the max ItemNo for the right toolbar items SET @MaxRightItemNo = ISNULL((SELECT MAX(CAST(a.attrib AS Int)) AS MaxItemNo FROM @dstTable a JOIN @dstTable b on a.ItemIndex = b.ItemIndex and b.ItemName='Align' and b.attrib = 'R' WHERE a.ItemName = 'ItemNo' ), 0) -- get the max ItemNo for the left toolbar items SET @MaxLeftItemNo = ISNULL((SELECT MAX(CAST(a.attrib AS Int)) AS MaxItemNo FROM @dstTable a JOIN @dstTable b on a.ItemIndex = b.ItemIndex and b.ItemName='Align' and b.attrib = 'L' WHERE a.ItemName = 'ItemNo' ), 0) -- add items to the temp dest table, using a "new" item index so we can compare later when updating the ItemNo values INSERT INTO @dstTable ([dst].[ItemIndex], [dst].[ItemName], [dst].[ItemType], [dst].[attrib]) SELECT allsrc.ItemIndex *100, allsrc.ItemName, allsrc.ItemType, allsrc.attrib FROM @srcTable allsrc JOIN @srcTable src on allsrc.ItemIndex = src.ItemIndex LEFT OUTER JOIN @dstTable dst ON dst.ItemName = src.ItemName and dst.attrib = src.attrib --JOIN @selectedToolbarItems st ON st.toolbarItem = src.attrib WHERE src.ItemName = 'ItemType' and dst.ItemIndex IS NULL -- store the items we're adding in a temp table with an ItemIndex to match the "new" one above -- this temp table will be used in a CTE below (NewItemNos) to get the new ItemNo for the appended items DECLARE @temp2Table TABLE ( ItemIndex int, ItemName NVARCHAR(50), ItemType CHAR(1), attrib NVARCHAR(255) ) INSERT INTO @temp2Table (ItemIndex, ItemName, ItemType, attrib) SELECT allsrc.ItemIndex *100, allsrc.ItemName, allsrc.ItemType, allsrc.attrib FROM @srcTable allsrc JOIN @srcTable src on allsrc.ItemIndex = src.ItemIndex LEFT OUTER JOIN @dstTable dst ON dst.ItemName = src.ItemName and dst.attrib = src.attrib --JOIN @selectedToolbarItems st ON st.toolbarItem = src.attrib WHERE src.ItemName = 'ItemType' and dst.ItemIndex IS NULL --update left item nos ;with NewItemNos as (SELECT a.ItemIndex , b.attrib, @MaxLeftItemNo + ROW_NUMBER() OVER(ORDER BY b.attrib) as NewSeqNo FROM @temp2Table a JOIN @temp2Table b ON a.ItemIndex = b.ItemIndex AND b.ItemName = 'ItemNo' WHERE a.ItemName='Align' AND a.attrib='L') UPDATE dst SET [dst].[attrib] = temp.NewSeqNo FROM NewItemNos temp JOIN @dstTable dst ON temp.ItemIndex = dst.ItemIndex WHERE dst.ItemName='ItemNo' -- update right item nos ;with NewItemNos as (SELECT a.ItemIndex , b.attrib, @MaxRightItemNo + ROW_NUMBER() OVER(ORDER BY b.attrib) as NewSeqNo FROM @temp2Table a JOIN @temp2Table b ON a.ItemIndex = b.ItemIndex AND b.ItemName = 'ItemNo' WHERE a.ItemName='Align' AND a.attrib='R') UPDATE dst SET [dst].[attrib] = temp.NewSeqNo FROM NewItemNos temp JOIN @dstTable dst ON temp.ItemIndex = dst.ItemIndex --and dst.ItemName = 'Align' and dst.attrib = 'L' WHERE dst.ItemName='ItemNo' -- Step E: -- convert back to XML SET @dstXML = (SELECT '', ( SELECT [attribs].[ItemName] as "attrib/@name", [attribs].[ItemType] as "attrib/@type", [attribs].[attrib] as attrib FROM @dstTable attribs WHERE attribs.ItemIndex = items.ItemIndex FOR XML PATH (''), TYPE) FROM @dstTable items GROUP BY [items].[ItemIndex] FOR XML PATH ('item')) ---- get rid of double quotes because CustomizeToolbarForm.aspx doesn't like them --SELECT @dstXML = REPLACE(@dstXML, '"', '''') -- Step F: -- and insert/update back into table for dest profile IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo) BEGIN UPDATE [dbo].[CustomParamXmlValues] SET [dbo].[CustomParamXmlValues].[ParamValue] = @dstXML WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamXmlValues].[ParamLevel]='P' and [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo END ELSE BEGIN INSERT INTO [dbo].[CustomParamXmlValues] ([dbo].[CustomParamXmlValues].[TargetNo], [dbo].[CustomParamXmlValues].[ParamLevel], [dbo].[CustomParamXmlValues].[ParamNo], [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue]) VALUES (@DstProfNo, 'P', @ParamNo, '', @dstXML) END END END -- append END2 --Images --Image Search ---- L --E --
--sql content merged from file: \StoredProcedures\EAUI_GetProfileCopyParamList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileCopyParamList_104] (@ProfNo int, @EditLevel int) AS BEGIN Declare @InterfaceID varchar(10) Declare @Version varchar(10) DECLARE @CustID varchar(10) -- get the interfaceId, version and CustID for the given profile Select @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version], @CustID = [dbo].[Profile].[CustID] From [dbo].[Profile] Where [dbo].[Profile].[ProfNo] = @ProfNo -- create a temp table to get teh parameters that should be excluded DECLARE @ExcludeParamsTable TABLE ( ParamNo int) -- this is used to exclude params from the customize services tabs, so use it here to make the lists the same -- Admin 10.0.Some parameters have dependency on other parameter value /table value. -- If it does not meet the dependency business rules, exclude it from the listing. INSERT INTO @ExcludeParamsTable SELECT [dbo].[EAIF_GetProfileParamsTobeExcluded_133].[ParamNo] FROM dbo.EAIF_GetProfileParamsTobeExcluded_133 (@InterfaceID,@Version,@ProfNo,1) -- add the 'databases' parameter to the excluded params table -- we don't want to get it with it's "real" EditGroup and EditSubgroup values -- so we get it with the select statment following the UNION below DECLARE @DbParamNo INT SET @DbParamNo = dbo.EAIF_GetCustomParamNumber_70('databases','P') INSERT INTO @ExcludeParamsTable VALUES (@DbParamNo) -- create a temp table to store the initial param list -- we may need to remove params later based on profile settings DECLARE @paramTable TABLE (ProfNo INT, ParamNo INT, ParamName VARCHAR(100), PromptText VARCHAR(255), Heading VARCHAR(255), SubHeading VARCHAR(255), ProcInfo VARCHAR(1000), ChildCount INT, HeadingSeqNo INT, SubHeadingSeqNo INT, ParamSeqNo INT) -- get the initial list of params INSERT INTO @paramTable (ProfNo, ParamNo, ParamName, PromptText, Heading, SubHeading, ProcInfo, ChildCount, HeadingSeqNo, SubHeadingSeqNo, ParamSeqNo) SELECT @profNo AS ProfNo, cpl.ParamNo, cpl.ParamName ,cped.PromptText , cpeg.HeadingText AS Heading , cpesg.HeadingText AS SubHeading ,cped.ProcInfo , ( select COUNT([dbo].[CustomParamList].[ParamNo]) from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParentParamNo] = cpl.ParamNo) as ChildCount , ISNULL(cpeg.SeqNo, 9999) AS HeadingSeqNo , ISNULL(cpesg.SeqNo, 9999) as SubHeadingSeqNo , cped.SeqNo as ParamSeqNo FROM [dbo].[Profile] prof join [dbo].[InterfaceParamList] ipl on prof.InterfaceID = ipl.InterfaceID AND prof.Version = ipl.Version and ipl.InterfaceID=@InterfaceID and ipl.Version=@Version join [dbo].[CustomParamEditDetail] cped on ipl.ParamNo = cped.ParamNo join [dbo].[CustomParamList] cpl on cped.ParamNo=cpl.ParamNo left outer join [dbo].[InterfaceParamList2] ipl2 on ipl.InterfaceID=ipl2.InterfaceID and ipl.Version=ipl2.Version and ipl.ParamNo=ipl2.ParamNo and ipl2.Mode='S' left outer join [dbo].[CustomParamEditGroup] cpeg on cpeg.EditGroup = cped.EditGroup left outer join [dbo].[CustomParamEditSubGroup] cpesg on cpesg.EditGroup = cped.EditGroup and cpesg.EditSubGroup = cped.EditSubGroup LEFT OUTER JOIN @ExcludeParamsTable ep ON ep.ParamNo = cped.ParamNo WHERE prof.ProfNo=@ProfNo AND cped.Copyable=1 and (isnull(ipl2.EditLevel, ipl.EditLevel)>=@EditLevel or isnull(ipl2.EditLevel, ipl.EditLevel)=-1) and cpl.ParentParamNo is null and ep.ParamNo IS NULL UNION ALL -- get the 'databases' parameter with Databases hardcoded as its heading text (not the actual EditGroup text) SELECT @profNo AS ProfNo, cpl.ParamNo, cpl.ParamName -- IsNull(d.PromptText, c.PromptText) PromptText, ,cped.PromptText , cpeg.HeadingText AS Heading ,'' AS SubHeading ,cped.ProcInfo , ( select COUNT([dbo].[CustomParamList].[ParamNo]) from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParentParamNo] = cpl.ParamNo) as ChildCount , ISNULL(cpeg.SeqNo, 9999) AS HeadingSeqNo , ISNULL(cpesg.SeqNo, 9999) as SubHeadingSeqNo , cped.SeqNo as ParamSeqNo FROM [dbo].[Profile] prof join [dbo].[InterfaceParamList] ipl on prof.InterfaceID = ipl.InterfaceID AND prof.Version = ipl.Version and ipl.InterfaceID=@InterfaceID and ipl.Version=@Version join [dbo].[CustomParamEditDetail] cped on ipl.ParamNo = cped.ParamNo join [dbo].[CustomParamList] cpl on cped.ParamNo=cpl.ParamNo left outer join [dbo].[InterfaceParamList2] ipl2 on ipl.InterfaceID=ipl2.InterfaceID and ipl.Version=ipl2.Version and ipl.ParamNo=ipl2.ParamNo and ipl2.Mode='S' left outer join [dbo].[CustomParamEditGroup] cpeg on cpeg.HeadingText ='Databases' left outer join [dbo].[CustomParamEditSubGroup] cpesg on cpesg.EditGroup = cped.EditGroup and cpesg.EditSubGroup = cped.EditSubGroup WHERE prof.ProfNo=@ProfNo AND cped.Copyable=1 and (isnull(ipl2.EditLevel, ipl.EditLevel)>=@EditLevel or isnull(ipl2.EditLevel, ipl.EditLevel)=-1) and cpl.ParamNo = dbo.EAIF_GetCustomParamNumber_70('Databases', 'P') ORDER BY HeadingSeqNo, SubHeadingSeqNo, ParamSeqNo, ParamNo -- check if the customer doesn't have "LinkSource" -- if not, remove the link source parameters --SELECT dbo.EAIF_GetCustomerParamScalarValue_70 ( 'bclark', 'HasLinkSource') IF (dbo.EAIF_GetCustomerParamScalarValue_70( @CustID, 'HasLinkSource') = 0) BEGIN DELETE FROM @paramTable WHERE Heading = 'Linking' AND SubHeading = 'Link Source' END -- check if profile is EHIS enabled -- if not, remove the parameters IF (SELECT dbo.EAIF_CheckIfProfileIsEISEnabled_104(@ProfNo)) = 0 BEGIN DELETE FROM @paramTable WHERE Heading = 'Searching' AND SubHeading = 'Integrated Search Settings' END -- check branding style -- certain params are only available for "enhanced" style DECLARE @profStyle AS NVARCHAR(5) SELECT @ProfStyle = dbo.EAIF_GetProfileParamScalarValue_70 (@ProfNo, 'profBrandStyle') IF @profStyle IS NULL SELECT @profStyle = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'profBrandStyle' IF @profStyle = 'T' BEGIN DELETE FROM @paramTable WHERE Heading = 'Branding' AND SubHeading = 'Basic Search' DELETE FROM @paramTable WHERE ParamName = 'TBLibLogoImgURL' DELETE FROM @paramTable WHERE ParamName = 'TBLibLogoURL' END ELSE IF @profStyle = 'E' BEGIN -- if LibLogoPlacementInd = 'L' then remove BSLibLogoHTMLText DECLARE @logoPlacement AS NVARCHAR(5) SELECT @logoPlacement = dbo.EAIF_GetProfileParamScalarValue_70 (@ProfNo, 'LibLogoPlacementInd') IF (@logoPlacement = 'L') BEGIN DELETE FROM @paramTable WHERE ParamName = 'BSLibLogoHTMLText' END END SELECT * FROM @paramTable END
CREATE PROCEDURE [dbo].[EAUI_AddDocTypeToInterface_77](@UserID nvarchar(20),@UserIP varchar(30),@InterfaceID varchar(10),@Version varchar(10), @DocTypeNoList varchar(8000))AS BEGIN DECLARE @NextSeqNo int SELECT @NextSeqNo=ISNULL(MAX ([dbo].[InterfaceDocType].[SeqNo])+1,1) FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceDocType] ([dbo].[InterfaceDocType].[InterfaceID],[dbo].[InterfaceDocType].[Version],[dbo].[InterfaceDocType].[DocTypeNo],[dbo].[InterfaceDocType].[DefValue],[dbo].[InterfaceDocType].[SeqNo]) SELECT @InterfaceID, @Version, CONVERT(int, a.Item), dtl.DefValue, a.Num FROM [dbo].[DocTypeList] dtl INNER JOIN dbo.EAIF_GetEnumValueTable_70(@DocTypeNoList, '+', @NextSeqNo, 1) a ON dtl.DocTypeNo = CONVERT(int, a.Item) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --add children if there were any parents in the initial list DECLARE @ChildrenDocTypeList varchar(8000) SET @ChildrenDocTypeList = '' SELECT @ChildrenDocTypeList = CONVERT(varchar,dtl.DocTypeNo)+ '+'+@ChildrenDocTypeList FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN dbo.EAIF_GetItemTable_70(@DocTypeNoList,'+') a ON pdtl.DocTypeNo = CONVERT(int,a.Item) WHERE pdtl.DocTypeNo is not null AND dtl.DocTypeNo NOT IN (SELECT [dbo].[InterfaceDocType].[DocTypeNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version) --the last NOT IN to prevent an error when Parent DocType --was created after doctypes that became children were attached to the Interafce. SELECT @NextSeqNo=ISNULL(MAX ([dbo].[InterfaceDocType].[SeqNo])+1,1) FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDocType].[Version]=@Version IF LEN(@ChildrenDocTypeList)>0 SET @ChildrenDocTypeList = SUBSTRING(@ChildrenDocTypeList,1, LEN(@ChildrenDocTypeList)-1) INSERT INTO [dbo].[InterfaceDocType] ([dbo].[InterfaceDocType].[InterfaceID],[dbo].[InterfaceDocType].[Version],[dbo].[InterfaceDocType].[DocTypeNo],[dbo].[InterfaceDocType].[DefValue],[dbo].[InterfaceDocType].[SeqNo]) SELECT @InterfaceID, @Version, CONVERT(int, a.Item), dtl.DefValue, a.Num FROM [dbo].[DocTypeList] dtl INNER JOIN dbo.EAIF_GetEnumValueTable_70(@ChildrenDocTypeList, '+', @NextSeqNo, 1) a ON dtl.DocTypeNo = CONVERT(int, a.Item) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@DocTypeNoList,1,1024),'+',',') IF DATALENGTH(@DocTypeNoList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@DocTypeNoList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Attach DocTypes to Interface', @InterfaceID ,@Version,@Plist1,@Plist2 COMMIT TRANSACTION END
--Get SimUsage for all regular databases on the profile. CREATE PROCEDURE [dbo].[EPCS_GetProfDbsSimUsage_100]( @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10) ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo INT DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo DECLARE @EnforceSimUsage INT DECLARE @HighlightTrialDb INT SET @EnforceSimUsage = dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'EnforceSimUsage') SELECT d.DbName, d.DbLabel, CASE (d.EnforceSimUsage & @EnforceSimUsage) WHEN 1 THEN pd.CtrlCustID ELSE '' END AS CtrlCustID FROM [dbo].[ProfDatabase] pd INNER JOIN [dbo].[DbList] d ON pd.DbVerNo=d.DbVerNo WHERE pd.ProfNo=@ProfNo AND pd.Enable=1 AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) AND d.SourceType <> 'M' ORDER BY d.DbName,d.DbLabel END
CREATE PROCEDURE [dbo].[BLL_GetDBInfo_XML]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN DECLARE @DbVerNo int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@Label DECLARE @LimitList varchar(8000) SET @LimitList = dbo.EAIF_GetDbLimiterDefaults_70(@DbVerNo) DECLARE @xml varchar(8000) SET @xml='' SELECT @xml=@xml+'<'+dlst.ParamName+'>'+ISNULL(dscl.ParamValue, dfl.DefValue)+''+dlst.ParamName+'>' FROM [dbo].[DbParamList] dlst LEFT OUTER JOIN [dbo].[DbParamScalarValues] dscl ON dlst.ParamNo=dscl.ParamNo AND dscl.DbVerNo=@DbVerNo INNER JOIN [dbo].[DbParamDefaults] dfl ON dlst.ParamNo=dfl.ParamNo INNER JOIN [dbo].[DbParamCategory] dctg ON dctg.ParamNo=dlst.ParamNo WHERE dctg.Category='EhostDbInfo' SET @xml = @xml + ''+@LimitList+' ' SELECT '' END '+@ShortDBName+' '+@xml+'
/****** Object: StoredProcedure [dbo].[EAUI_GetInterfaceMultiDbAuthorities_90] Script Date: 04/15/2008 17:17:28 ******/ CREATE PROCEDURE [dbo].[EAUI_GetInterfaceMultiDbAuthorities_90](@InterfaceID Varchar(10), @Version Varchar(10)) AS SET NOCOUNT ON SELECT mdal.MultiDbAuthID, IsNull((Select [imdbc].[LinkText] from [dbo].[MultiDbAuthInterfaceCaption] imdbc where mdal.MultiDbAuthID=imdbc.MultiDbAuthId and [imdbc].[InterfaceID]=@InterfaceID and [imdbc].[Version]=@Version and [imdbc].[LangCode]='en'), mdac.LinkText) Caption, mdal.Description, [imdal].[SeqNo] FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID INNER JOIN [dbo].[InterfaceMultiDbAuthList] imdal ON mdal.MultiDbAuthID = imdal.MultiDbAuthID WHERE mdac.LangCode = 'en' AND imdal.InterfaceID = @InterfaceID AND imdal.Version = @Version ORDER BY imdal.SeqNo, imdal.MultiDbAuthID RETURN
CREATE PROCEDURE [dbo].[EAIS_UpdateUserDefinedFields_70](@CustID varchar(10),@UserDefined1 nvarchar(255),@UserDefined2 nvarchar(255) ) AS BEGIN EXEC [dbo].[EAIP_UpdateUserDefinedFields_70] @CustID ,@UserDefined1 ,@UserDefined2 IF @@ERROR=0 SELECT 1 END
CREATE PROCEDURE [dbo].[EPCAS_GetResultForm](@MasterDbList int, @DBVersion int) AS BEGIN SELECT [dbo].[DbForm].[FormNumber], [dbo].[DbForm].[FormName], [dbo].[DbForm].[Encoding] FROM [dbo].[DbForm] WHERE [dbo].[DbForm].[DbVerNo]=@MasterDbList AND [dbo].[DbForm].[Category]='R' END
CREATE FUNCTION [dbo].[EAIF_GetItemValueTable_70]( @ItemList nvarchar(max), @ValueList nvarchar(max), @Sep char(1)) RETURNS @ItemValueTable TABLE (Item nvarchar(255), Value nvarchar(255)) AS BEGIN DECLARE @ItemDotPos int DECLARE @Item nvarchar(255) DECLARE @ValueDotPos int DECLARE @Value nvarchar(255) SELECT @ItemDotPos=charindex(@Sep,@ItemList) SELECT @ValueDotPos=charindex(@Sep,@ValueList) WHILE @ItemDotPos <> 0 AND @ItemDotPos IS NOT NULL AND @ValueDotPos <> 0 AND @ValueDotPos IS NOT NULL BEGIN SELECT @Item=left(@ItemList,@ItemDotPos-1) SELECT @Value=left(@ValueList,@ValueDotPos-1) INSERT INTO @ItemValueTable VALUES(@Item, @Value) SELECT @ItemList=substring(@ItemList,@ItemDotPos+1,Len(@ItemList)-@ItemDotPos) SELECT @ItemDotPos=charindex(@Sep,@ItemList) SELECT @ValueList=substring(@ValueList,@ValueDotPos+1,Len(@ValueList)-@ValueDotPos) SELECT @ValueDotPos=charindex(@Sep,@ValueList) END IF @ItemDotPos <> 0 SELECT @Item=left(@ItemList,@ItemDotPos-1) ELSE SELECT @Item = @ItemList IF @ValueDotPos <> 0 SELECT @Value=left(@ValueList,@ValueDotPos-1) ELSE SELECT @Value = @ValueList INSERT INTO @ItemValueTable VALUES(@Item, @Value) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamScalarValues_70.sql CREATE PROCEDURE [dbo].[EAUI_GetDbParamScalarValues_70](@DbVerNo int, @EditLevel smallint, @SourceType char(1), @DbType int) AS BEGIN SELECT a.ParamNo, dbo.EAIF_GetDbParamName_70(a.ParamNo) as ParamName, [b].[PromptText], [b].[HelpText], b.EditControl, [b].[ValueTemplate], ISNULL(d.ParamValue, IsNull(e.DefValue,ISNULL(c.DefValue,''))) as Value, [a].[ParamType],ISNULL(b.ProcInfo,'') AS ProcInfo FROM [dbo].[DbParamList] a JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo = b.ParamNo AND b.EditLevel >= @EditLevel Left Outer Join [dbo].[DbParamSourceTypeDefaults] e on a.ParamNo=e.ParamNo and e.SourceType=@SourceType LEFT OUTER JOIN [dbo].[DbParamDefaults] c ON a.ParamNo = c.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] d ON d.DbVerNo=@DbVerNo AND a.ParamNo = d.ParamNo WHERE a.ParamType IN ('B','S','N', 'L') AND a.ParamName != 'ResourceType' -- This param is edited from a different page (Descriptions) AND a.ParamSourceType like '%' + @SourceType + '%' and ([a].[ParamDbType] & power(2,@DbType) <>0 or [a].[ParamDbType] is null) ORDER BY b.SeqNo END
CREATE PROCEDURE [dbo].[UTIL_EnableAuthHttps] @InterfaceVersion [InterfaceVersionType] READONLY, @batchSize INT, @WaitForReplicationSec SMALLINT = 10 AS BEGIN IF NOT EXISTS ( SELECT * FROM sys.schemas WHERE name = 'BACK' ) BEGIN EXEC('CREATE SCHEMA BACK'); END; IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US792022_EnableAuthHttps_ChangedCustomParamDefaults' ) CREATE TABLE BACK.US792022_EnableAuthHttps_ChangedCustomParamDefaults ([DateUpdated] DATETIME NOT NULL, [InterfaceID] VARCHAR(10), [Version] VARCHAR(10), [MarketID] VARCHAR(20) NOT NULL, [STMode] CHAR(1), [IsRollbacked] BIT DEFAULT(0)) IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US792022_EnableAuthHttps_ChangedInterfaceParamList' ) CREATE TABLE BACK.US792022_EnableAuthHttps_ChangedInterfaceParamList ([DateUpdated] DATETIME NOT NULL, [InterfaceID] VARCHAR(10), [Version] VARCHAR(10), [EditLevel] SMALLINT, [IsRollbacked] BIT DEFAULT(0)) IF NOT EXISTS ( SELECT * FROM sys.tables WHERE name = 'US792022_EnableAuthHttps_ChangedCustomParamScalarValues' ) CREATE TABLE BACK.US792022_EnableAuthHttps_ChangedCustomParamScalarValues ([DateUpdated] DATETIME NOT NULL, [TargetNo] INT, [ParamValue] NVARCHAR(4000), [IsRollbacked] BIT DEFAULT(0)) DECLARE @ParamNo INT SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]='useHttpsAuthentication' DECLARE @CurrentDateTime DATETIME = GETUTCDATE() DECLARE @TransId BIGINT PRINT 'Starting enabling HTTPS parameters...'; BEGIN TRY BEGIN TRAN PRINT 'Starting updating default values.'; UPDATE cpd SET cpd.DefValue = N'1' OUTPUT @CurrentDateTime, DELETED.InterfaceID, DELETED.Version, DELETED.MarketID, DELETED.STMode, 0 INTO BACK.US792022_EnableAuthHttps_ChangedCustomParamDefaults FROM @InterfaceVersion iv INNER JOIN dbo.CustomParamDefaults cpd ON cpd.ParamNo = @ParamNo AND cpd.InterfaceID = iv.InterfaceID AND cpd.Version = iv.Version AND cpd.DefValue = N'0'; PRINT N'Updating default values is finished successfuly.'; PRINT 'Starting updating edit level parameters to None.'; UPDATE ipl SET ipl.EditLevel = 0 OUTPUT @CurrentDateTime, DELETED.InterfaceID, DELETED.Version, DELETED.EditLevel, 0 INTO BACK.US792022_EnableAuthHttps_ChangedInterfaceParamList FROM @InterfaceVersion iv INNER JOIN dbo.InterfaceParamList ipl ON ipl.InterfaceID = iv.InterfaceID AND ipl.Version = iv.Version AND ipl.ParamNo = @ParamNo; SET @TransId = CURRENT_TRANSACTION_ID(); COMMIT TRAN EXEC dbo.UTIL_WaitForReplicationComplete_224 @TransId, @WaitForReplicationSec PRINT N'Updating edit level parameters to None is finished successfuly.'; PRINT 'Starting deleting custom parameters.'; SELECT 1 WHILE (@@ROWCOUNT > 0) BEGIN DELETE TOP(@batchSize) cpsv OUTPUT @CurrentDateTime, DELETED.TargetNo, DELETED.ParamValue, 0 INTO BACK.US792022_EnableAuthHttps_ChangedCustomParamScalarValues FROM @InterfaceVersion iv INNER JOIN dbo.Profile p ON p.InterfaceID = iv.InterfaceID AND p.Version = iv.Version INNER JOIN dbo.CustomParamScalarValues cpsv ON cpsv.TargetNo = p.ProfNo AND cpsv.ParamLevel = 'P' AND cpsv.ParamNo = @ParamNo WAITFOR DELAY '00:00:03'; END EXEC dbo.UTIL_WaitForReplicationComplete_224 NULL, @WaitForReplicationSec PRINT N'Deleting custom parameters is finished successfuly.'; PRINT N'HTTPS parameters are enabled...'; END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000) DECLARE @ErrorSeverity INT DECLARE @ErrorState INT SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE() RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState) RETURN END CATCH END
Create PROCEDURE [dbo].[EAIP_PromoteDatabaseSegmentFileInfo_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE dbs FROM [dbo].[DbSegment] dbs INNER JOIN #TempDbListTable t on dbs.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbSegment] SELECT t.UpperDbVerNo AS DbVerNo,SegName, SegDescription, SeqNo, ProductionDate FROM [dbo].[DbSegment] dbs JOIN #TempDbListTable t ON dbs.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) /* VOLUMES */ DELETE dbv FROM [dbo].[DbVolume] dbv INNER JOIN #TempDbListTable t on dbv.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbVolume] SELECT t.UpperDbVerNo AS DbVerNo,Volume,LastUpdateDate,EpkPath FROM [dbo].[DbVolume] dbv JOIN #TempDbListTable t ON dbv.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) /* FIELD TAGS */ DELETE dbt FROM [dbo].[DbFieldTag] dbt INNER JOIN #TempDbListTable t on dbt.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbFieldTag] ([dbt].[DbVerNo], [dbt].[SegName], [dbt].[FieldTag], [dbt].[IndexType],[dbt].[Category], [dbt].[ThesNumber], [dbt].[FieldNumbers], [dbt].[SeqNo],[dbt].[Description2]) SELECT t.UpperDbVerNo AS DbVerNo, SegName,FieldTag, IndexType,Category,ThesNumber,FieldNumbers, SeqNo,Description2 FROM [dbo].[DbFieldTag] dbt JOIN #TempDbListTable t ON dbt.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) /* BIBMAPS */ DELETE dbbm FROM [dbo].[DbBibMap] dbbm INNER JOIN #TempDbListTable t on dbbm.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbBibMap] SELECT t.UpperDbVerNo AS DbVerNo,SegName,BibField,FieldTag,SeqNo FROM [dbo].[DbBibMap] dbbm JOIN #TempDbListTable t ON dbbm.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) /* DBSEGFILEINFO */ DELETE dbsfi FROM [dbo].[DbSegFileInfo] dbsfi INNER JOIN #TempDbListTable t on dbsfi.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbSegFileInfo]([dbsfi].[DbVerNo], [dbsfi].[SegName], [dbsfi].[Volume],[dbsfi].[EpsFile],[dbsfi].[EpdFile],[dbsfi].[EpiFile],[dbsfi].[EpfFile],[dbsfi].[EplFile], [dbsfi].[EpgFile],[dbsfi].[EpuFile],[dbsfi].[JumpFile],[dbsfi].[LookupDir],[dbsfi].[ImageServerURL]) SELECT t.UpperDbVerNo AS DbVerNo,SegName,Volume, EpsFile,EpdFile,EpiFile,EpfFile,EplFile,EpgFile,EpuFile, JumpFile,LookupDir,ImageServerURL FROM [dbo].[DbSegFileInfo] dbsfi JOIN #TempDbListTable t ON dbsfi.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) /* THESAURUS */ DELETE dbt FROM [dbo].[DbThesaurus] dbt INNER JOIN #TempDbListTable t on dbt.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT INTO [dbo].[DbThesaurus] SELECT t.UpperDbVerNo AS DbVerNo,SegName,Volume, ThesNumber,ThesFile,UserControlled,StoreKWIC FROM [dbo].[DbThesaurus] dbt JOIN #TempDbListTable t ON dbt.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
Create Procedure [dbo].[EAUI_UpdateInterfaceDbFeatureValue_103](@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @FeatureNo int, @ItemNo int, @FieldsXML xml) as Begin Begin try Begin transaction DECLARE @InDocHandle int Declare @NewXml nvarchar(max) Declare @GlobalXml xml DECLARE @GlobalDocHandle int select @GlobalXml=[dbo].[FeatureValues].[FieldValueXml] from [dbo].[FeatureValues] where [dbo].[FeatureValues].[FeatureNo] = @FeatureNo EXEC [dbo].[sp_xml_preparedocument] @InDocHandle OUTPUT, @FieldsXML EXEC [dbo].[sp_xml_preparedocument] @GlobalDocHandle OUTPUT, @GlobalXml select @NewXml='' select @NewXml=@NewXml + [a].[FieldValueXml] from --get Interface values for elements without a lang attribute where Interface value is different from Global value (select N''+ a.value + ' ' as FieldValueXml from (select * from OPENXML(@InDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is null) a join (select * from OPENXML(@GlobalDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is null) b on a.name=b.name and a.value<>b.value union all --get Interface values for elements with a lang attribute where Interface value is different from Global value select N''+ a.value + ' ' as FieldValueXml from (select * from OPENXML(@InDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) a join (select * from OPENXML(@GlobalDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) b on a.name=b.name and a.lang=b.lang and a.value<>b.value union all --get Interface values for elements with a lang attribute where there is not Global value for the Interface value for the same lang select N''+ a.value + ' ' as FieldValueXml from (select * from OPENXML(@InDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) a left outer join (select * from OPENXML(@GlobalDocHandle, 'fields/field', 2) with (type char(2) '@type', name varchar(50) '@name', lang char(2) '@lang', value nvarchar(max) '.') where lang is not null) b on a.name=b.name and a.lang=b.lang where b.name is null) a exec [dbo].[sp_xml_removedocument] @InDocHandle exec [dbo].[sp_xml_removedocument] @GlobalDocHandle set @NewXml=N'' + @NewXml + N' ' -- if the given FieldXml has no elements that differ from the Global values then delete entry in InterfaceDbFeatureValues for the given Interface/Version and Feature if @NewXml=N'' Begin delete [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo -- if we've deleted the entry from InterfaceDbFeatureValues and the given Feature has AutoAddForInterfaces set to 1 then delete the entry from InterfaceDbFeatures for the given Interface/Version and Feature if (Select [dbo].[FeatureList].[AutoAddForInterfaces] from [dbo].[FeatureList] where [dbo].[FeatureList].[FeatureNo]=@FeatureNo)=1 Delete [dbo].[InterfaceDbFeatures] where [dbo].[InterfaceDbFeatures].[FeatureNo]=@FeatureNo and [dbo].[InterfaceDbFeatures].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatures].[Version]=@Version End else Begin -- update FieldValueXml is exists for given Interface/Version and Feature if exists (select 1 from [dbo].[InterfaceDbFeatureValues] where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo and [dbo].[InterfaceDbFeatureValues].[ItemNo]=@ItemNo) update [dbo].[InterfaceDbFeatureValues] set [dbo].[InterfaceDbFeatureValues].[FieldValueXml]= @NewXml where [dbo].[InterfaceDbFeatureValues].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatureValues].[Version]=@Version and [dbo].[InterfaceDbFeatureValues].[FeatureNo]=@FeatureNo and [dbo].[InterfaceDbFeatureValues].[ItemNo]=@ItemNo else Begin -- if entry does not exist in InterfaceDbFeatures for given Interface/Version and Feature add it (this would happen if updating values for an AutoAddForInterfaces feature) if not exists(Select 1 from [dbo].[InterfaceDbFeatures] where [dbo].[InterfaceDbFeatures].[InterfaceID]=@InterfaceID and [dbo].[InterfaceDbFeatures].[Version]=@Version and [dbo].[InterfaceDbFeatures].[FeatureNo]=@FeatureNo) Insert [dbo].[InterfaceDbFeatures] ([dbo].[InterfaceDbFeatures].[InterfaceID], [dbo].[InterfaceDbFeatures].[Version], [dbo].[InterfaceDbFeatures].[FeatureNo]) values (@InterfaceID, @Version, @FeatureNo) -- add entry in InterfaceDbFeatureValues for given Interface/Version and Feature insert [dbo].[InterfaceDbFeatureValues] ([dbo].[InterfaceDbFeatureValues].[InterfaceID], [dbo].[InterfaceDbFeatureValues].[Version], [dbo].[InterfaceDbFeatureValues].[FeatureNo], [dbo].[InterfaceDbFeatureValues].[ItemNo], [dbo].[InterfaceDbFeatureValues].[FieldValueXml]) Values (@InterfaceID, @Version, @FeatureNo, @ItemNo, @NewXml) end End DECLARE @Category varchar(20) DECLARE @Name varchar(50) SELECT @Category=[dbo].[FeatureList].[Category], @Name=[dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Update Interface Feature Values', @InterfaceID, @Version, @Category, @Name, @ItemNo Commit Transaction End try Begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End catch End
CREATE FUNCTION dbo.EAIF_GetSingleDatabasesForDiscipline_131 ( @DisciplineNo INT ) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @Ret NVARCHAR(MAX) SET @Ret = N'' ;WITH DistinctDbNameByHighestDbLabel ( DbName, DbLabel ) AS ( SELECT dl.DbName , MIN(CASE WHEN [dl].[DbLabel] = 'live' THEN '1' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'liveQC' THEN '2' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuild' THEN '3' + [dl].[DbLabel] WHEN [dl].[DbLabel] = 'rebuildQC' THEN '4' + [dl].[DbLabel] ELSE '5' + [dl].[DbLabel] END) AS DbLabel FROM [dbo].[DbList] dl WHERE [dl].[SourceType] IN ( 'D', 'C' ) GROUP BY dl.DbName ) SELECT @Ret = @Ret + dl.DisplayName + ' (' + dl.DbName + ')
' + N' ' FROM [dbo].[DbDiscipline] dd JOIN [dbo].[DbList] dl ON dd.DbName = dl.DbName JOIN DistinctDbNameByHighestDbLabel ddbn ON dl.DbName = ddbn.DbName AND dl.DbLabel = SUBSTRING(ddbn.DbLabel,2,LEN(ddbn.DbLabel) - 1) WHERE dd.DisciplineNo = @DisciplineNo ORDER BY dl.DisplayName IF LEN(@Ret) > 0 SET @Ret = SUBSTRING(@Ret, 1, LEN(@Ret) - 4) RETURN @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerEhostConnectDetails_80](@CustID varchar(10)) AS BEGIN SELECT ISNULL(ec.EHConnection,0) as EHConnection, ISNULL(ec.EHConnectionChild,0) as EHConnectionChild, ISNULL(ec.AuthType,'uid') as AuthType, ISNULL(ec.DirectURL,'') as DirectURL, ISNULL(ec.EhConnectionDisplayName,c.CustName) AS DisplayName, [ec].[UseProxy], ISNULL([ec].[ProxyID],'') AS ProxyID FROM dbo.Customer c INNER JOIN dbo.CustomParamEhostConnect ec ON c.CustID = ec.CustID WHERE c.CustID = @CustID END
CREATE PROCEDURE [dbo].[EAIP_DeleteCfgAppParam_151]( @UserID nvarchar(20), @UserIP varchar(15), @AppID varchar(20), @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName) BEGIN RAISERROR('The Parameter (%s) does not exist.', 16,-1, @ParamName) RETURN END SELECT @ParamNo=p.ParamNo FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamEditDetail] d ON d.ParamNo = p.ParamNo WHERE p.ParamName=@ParamName DELETE FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ParamNo] = @ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Application Configuration','Delete Application Parameter', @AppID, @ParamName END
Create Procedure [dbo].[EAIP_GetDbSubsetCount_161](@DbName varchar(10), @DbLabel varchar(10)) As Begin Declare @DbVerNo int Select @DbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@DbLabel Select Count(*) as Count from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@DbVerNo End
CREATE PROCEDURE [dbo].[EAUI_RemoveInterfaceParameter_70] (@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ParamNo int)AS BEGIN DECLARE @Params2Del TABLE(ParamNo smallint) INSERT INTO @Params2Del Values (@ParamNo) INSERT INTO @Params2Del SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParentParamNo] = @ParamNo INSERT INTO @Params2Del SELECT cpl.ParamNo FROM [dbo].[CustomParamList] cpl INNER JOIN [dbo].[CustomParamList] cplp ON cpl.ParentParamNo = cplp.ParamNo WHERE cplp.ParentParamNo = @ParamNo BEGIN TRANSACTION DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo = b.ProfNo INNER JOIN @Params2Del c ON a.ParamNo = c.ParamNo WHERE ParamLevel='P' AND b.InterfaceID=@InterfaceID AND b.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[CustomParamXmlValues] FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo = b.ProfNo INNER JOIN @Params2Del c ON a.ParamNo = c.ParamNo WHERE ParamLevel='P' AND b.InterfaceID=@InterfaceID AND b.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[CustomParamDefaults] FROM [dbo].[CustomParamDefaults] a INNER JOIN @Params2Del c ON a.ParamNo = c.ParamNo WHERE InterfaceID=@InterfaceID AND Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[InterfaceParamList] FROM [dbo].[InterfaceParamList] a INNER JOIN @Params2Del c ON a.ParamNo = c.ParamNo WHERE InterfaceID=@InterfaceID AND Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION DECLARE @ParamName varchar(100) SET @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Remove Parameter', @InterfaceID, @Version, @ParamName END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbSegment_DbSegFileInfo(@DbVerNo int, @SegName varchar(10)) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbSegFileInfo].[SegName], [dbo].[DbSegFileInfo].[Volume], [dbo].[DbSegFileInfo].[EpsFile], [dbo].[DbSegFileInfo].[EpdFile], [dbo].[DbSegFileInfo].[EpiFile], [dbo].[DbSegFileInfo].[EpfFile], [dbo].[DbSegFileInfo].[JumpFile], [dbo].[DbSegFileInfo].[LookupDir], [dbo].[DbSegFileInfo].[EplFile], [dbo].[DbSegFileInfo].[EpgFile], [dbo].[DbSegFileInfo].[EpuFile], [dbo].[DbSegFileInfo].[ImageServerURL] FROM [dbo].[DbSegFileInfo] WHERE [dbo].[DbSegFileInfo].[DbVerNo] = @DbVerNo AND [dbo].[DbSegFileInfo].[SegName] = @SegName ORDER BY DbVerNo, [dbo].[DbSegFileInfo].[SegName], [dbo].[DbSegFileInfo].[Volume], [dbo].[DbSegFileInfo].[EpsFile], [dbo].[DbSegFileInfo].[EpdFile], [dbo].[DbSegFileInfo].[EpiFile], [dbo].[DbSegFileInfo].[EpfFile], [dbo].[DbSegFileInfo].[JumpFile], [dbo].[DbSegFileInfo].[LookupDir], [dbo].[DbSegFileInfo].[EplFile], [dbo].[DbSegFileInfo].[EpgFile], [dbo].[DbSegFileInfo].[EpuFile], [dbo].[DbSegFileInfo].[ImageServerURL] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseTopicsAll_79] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int)AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbTopic] WHERE [dbo].[DbTopic].[DbVerNo]=@DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @DbName varchar(10), @Dblabel varchar(10) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Database','Delete all topics', @DbName,@DbLabel COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyProfileCustomWidgets_104]( @SrcProfNo int, @DstProfNo int, @Operation varchar(20), @SelectedWidgets nvarchar(max)) AS BEGIN DECLARE @SelectedWidgetsTable TABLE (Label NVARCHAR(255)) INSERT INTO @SelectedWidgetsTable SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@SelectedWidgets,'+') -- get the highest sequence number for the destination profile DECLARE @MaxSeqNo AS INT IF (@Operation = 'r') BEGIN -- replace -- first remove whatever is there since we're doing a replace Delete [dbo].[ProfCustomWidgets] where [dbo].[ProfCustomWidgets].[ProfNo]=@DstProfNo -- check if we're only updating a selected subset of widgets IF LEN(@SelectedWidgets) > 0 BEGIN INSERT INTO [dbo].[ProfCustomWidgets] ( [src].[ProfNo], [src].[Type], [src].[Label], [src].[Height], [src].[CustomHTML], [src].[URL], [src].[DefOpen], [src].[Show], [src].[SeqNo], [src].[DisplayScreen]) SELECT @DstProfNo, src.Type, src.Label, src.Height, src.CustomHTML, src.URL, src.DefOpen, src.Show, src.SeqNo, src.DisplayScreen FROM [dbo].[ProfCustomWidgets] src INNER JOIN @SelectedWidgetsTable swt ON src.Label = swt.Label WHERE src.ProfNo = @SrcProfNo END ELSE -- get all of the widgets from the source profile (don't join on @SelectedWidgetsTable) BEGIN INSERT INTO [dbo].[ProfCustomWidgets] ( [src].[ProfNo], [src].[Type], [src].[Label], [src].[Height], [src].[CustomHTML], [src].[URL], [src].[DefOpen], [src].[Show], [src].[SeqNo], [src].[DisplayScreen]) SELECT @DstProfNo, src.Type, src.Label, src.Height, src.CustomHTML, src.URL, src.DefOpen, src.Show, row_number() over(order by src.SeqNo), src.DisplayScreen FROM [dbo].[ProfCustomWidgets] src WHERE src.ProfNo = @SrcProfNo END END -- replace ELSE BEGIN -- append -- check if we're only updating a selected subset of widgets IF LEN(@SelectedWidgets) > 0 BEGIN SET @MaxSeqNo = ISNULL((select MAX([dbo].[ProfCustomWidgets].[SeqNo]) from [dbo].[ProfCustomWidgets] where [dbo].[ProfCustomWidgets].[ProfNo] = @DstProfNo), 0) INSERT INTO [dbo].[ProfCustomWidgets] ( [dst].[ProfNo], [dst].[Type], [dst].[Label], [dst].[Height], [dst].[CustomHTML], [dst].[URL], [dst].[DefOpen], [dst].[Show], [dst].[SeqNo], [dst].[DisplayScreen]) SELECT @DstProfNo, src.Type, src.Label, src.Height, src.CustomHTML, src.URL, src.DefOpen, src.Show, row_number() over(order by src.SeqNo) + @MaxSeqNo, src.DisplayScreen FROM [dbo].[ProfCustomWidgets] src INNER JOIN @SelectedWidgetsTable swt ON src.Label = swt.Label LEFT OUTER JOIN [dbo].[ProfCustomWidgets] dst ON dst.Type = src.Type AND dst.Label = src.Label AND dst.Height = src.Height AND dst.CustomHTML = src.CustomHTML AND dst.URL = src.URL AND dst.DefOpen = src.DefOpen AND dst.Show = src.Show AND dst.DisplayScreen = src.DisplayScreen AND dst.ProfNo = @dstProfNo WHERE src.ProfNo = @SrcProfNo AND dst.WidgetID IS NULL END ELSE -- get all of the widgets from the source profile that aren't in the target profile (don't join on @SelectedWidgetsTable) BEGIN SET @MaxSeqNo = ISNULL((select MAX([dbo].[ProfCustomWidgets].[SeqNo]) from [dbo].[ProfCustomWidgets] where [dbo].[ProfCustomWidgets].[ProfNo] = @DstProfNo), 0) INSERT INTO [dbo].[ProfCustomWidgets] ( [dst].[ProfNo], [dst].[Type], [dst].[Label], [dst].[Height], [dst].[CustomHTML], [dst].[URL], [dst].[DefOpen], [dst].[Show], [dst].[SeqNo], [dst].[DisplayScreen]) SELECT @DstProfNo, src.Type, src.Label, src.Height, src.CustomHTML, src.URL, src.DefOpen, src.Show, row_number() over(order by src.SeqNo) + @MaxSeqNo, src.DisplayScreen FROM [dbo].[ProfCustomWidgets] src LEFT OUTER JOIN [dbo].[ProfCustomWidgets] dst ON dst.Type = src.Type AND dst.Label = src.Label AND dst.Height = src.Height AND dst.CustomHTML = src.CustomHTML AND dst.URL = src.URL AND dst.DefOpen = src.DefOpen AND dst.Show = src.Show AND dst.DisplayScreen = src.DisplayScreen AND dst.ProfNo = @dstProfNo WHERE src.ProfNo = @SrcProfNo AND dst.WidgetID IS NULL END END -- append END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileCopyParamList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileCopyParamList_70] (@ProfNo int, @EditLevel int) AS BEGIN Declare @InterfaceID varchar(10) Declare @Version varchar(10) Select @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] From [dbo].[Profile] Where [dbo].[Profile].[ProfNo] = @ProfNo SELECT c.ParamNo, -- IsNull(d.PromptText, c.PromptText) PromptText, c.PromptText, ISNULL(c.ProcInfo,'') AS ProcInfo FROM [dbo].[Profile] a join [dbo].[InterfaceParamList] b on a.InterfaceID = b.InterfaceID AND a.Version = b.Version and b.InterfaceID=@InterfaceID and b.Version=@Version left outer join [dbo].[CustomParamEditDetail] c on b.ParamNo = c.ParamNo left outer join [dbo].[CustomParamList] cpl on c.ParamNo=cpl.ParamNo left outer join [dbo].[InterfaceParamList2] d on b.InterfaceID=d.InterfaceID and b.Version=d.Version and b.ParamNo=d.ParamNo and d.Mode='S' WHERE a.ProfNo=@ProfNo AND c.Copyable=1 and (isnull(d.EditLevel, b.EditLevel)>=@EditLevel or isnull(d.EditLevel, b.EditLevel)=-1) and cpl.ParamNo is not null --ORDER BY Replace(IsNull(d.PromptText, c.PromptText), '"', '') ORDER BY Replace(c.PromptText, '"', '') END
Create PROCEDURE [dbo].[EAUI_AddFeature_103](@UserID nvarchar(20),@UserIP varchar(15), @Category varchar(10), @Name varchar(50), @FieldsXML nvarchar(max), @SubCategory varchar(20)='', @AutoAddForInterfaces bit) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]=@Category AND [dbo].[FeatureList].[SubCategory]= @SubCategory AND [dbo].[FeatureList].[FeatureName]=@Name) BEGIN RAISERROR('The %s %s %s already exists',16,-1,@Category,@SubCategory, @Name) RETURN END Begin try DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' BEGIN TRANSACTION INSERT INTO [dbo].[FeatureList]([dbo].[FeatureList].[Category],[dbo].[FeatureList].[SubCategory], [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant],[dbo].[FeatureList].[VisibleItemCount],[dbo].[FeatureList].[SelectionMode], [dbo].[FeatureList].[AutoAddForInterfaces]) SELECT @Category,@SubCategory, @Name, [dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant],[dbo].[FeatureList].[VisibleItemCount],[dbo].[FeatureList].[SelectionMode], @AutoAddForInterfaces FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]=@TemplCategory AND [dbo].[FeatureList].[FeatureName] = @TemplCategory DECLARE @FeatureNo int SELECT @FeatureNo=[dbo].[FeatureList].[FeatureNo] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]=@Category AND [dbo].[FeatureList].[SubCategory]= @SubCategory AND [dbo].[FeatureList].[FeatureName]=@Name INSERT INTO [dbo].[FeatureValues]([dbo].[FeatureValues].[FeatureNo],[dbo].[FeatureValues].[ItemNo],[dbo].[FeatureValues].[FieldValueXml]) VALUES (@FeatureNo, 0, @FieldsXML) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Add Features', @Category,@SubCategory, @Name COMMIT TRANSACTION End try begin catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch END
CREATE PROCEDURE [dbo].[EPCS_GetProfExpanders_70]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN DECLARE @ProfNo as int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @AutoAdd bit SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @AutoAdd=[dbo].[InterfaceVersion].[AutoAddExpanders] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @ProfNo IS NULL RETURN IF @AutoAdd=1 SELECT ISNULL(p.ControlName,g.ControlName) as ControlName, ISNULL(p.ControlDefault,ISNULL(ie.ControlDefault,g.ControlDefault)) as ControlDefault, dbo.EAIF_GetExpanderCaptions_70(@ProfNo,ISNULL(p.ControlName,g.ControlName)) as Captions FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[InterfaceExpander] ie ON g.ControlName = ie.ControlName AND ie.InterfaceID=@InterfaceID AND ie.Version=@Version LEFT JOIN [dbo].[ProfExpander] p ON g.ControlName = p.ControlName AND p.ProfNo=@ProfNo WHERE (p.ControlShow IS NULL AND ie.ControlShow IS NULL AND g.ControlShow=1) OR (p.ControlShow IS NULL AND ie.ControlShow=1) OR (p.ControlShow=1) ELSE SELECT ISNULL(p.ControlName,g.ControlName) as ControlName, ISNULL(p.ControlDefault,ISNULL(ie.ControlDefault,g.ControlDefault)) as ControlDefault, dbo.EAIF_GetExpanderCaptions_70(@ProfNo,ISNULL(p.ControlName,g.ControlName)) as Captions FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[ProfExpander] p ON g.ControlName = p.ControlName AND p.ProfNo=@ProfNo INNER JOIN [dbo].[InterfaceExpander] ie ON g.ControlName = ie.ControlName WHERE ie.InterfaceID=@InterfaceID AND ie.Version=@Version AND ((p.ControlShow IS NULL AND ie.ControlShow IS NULL AND g.ControlShow=1) OR (p.ControlShow IS NULL AND ie.ControlShow=1) OR (p.ControlShow=1)) END
CREATE PROCEDURE [dbo].[BLL_GetDbLimiters](@ShortDBName varchar(255), @LiveRebuild varchar(10) ) AS BEGIN SET NOCOUNT ON SELECT lst.ControlType as 'CtrlType', ltyp.ControlTag as 'CtrlTag', cpt.Caption, CtrlDefault=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5 OR dbl.DefValue='On') THEN 1 ELSE 0 END, Tag=CASE WHEN lst.ControlType=17 THEN lst.LimiterId ELSE SUBSTRING(dbl.SearchString,1,2) END, ltyp.ControlFormat as 'Format', lst.ControlSize as 'CtrlSize', '' as 'ColId', 0 as 'Category', --skipValueText=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,31,8000), ' ', ''),'', '_'), '(None)_( None)', '(None)')) WHEN (lst.ControlType=15) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=16) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=17) THEN dbl.SearchString ELSE NULLIF(REPLACE(SUBSTRING(dbl.SearchString, 4, 4000), '{val}', ''), 'y') END, lst.LogicalOpCode, @ShortDBName as 'ShortDBName' FROM [dbo].[DbList] mdb INNER JOIN [dbo].[DbLimiter] dbl ON mdb.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN [dbo].[DbLimiterDetail] txt ON dbl.LimiterNo=txt.LimiterNo AND dbl.DbVerNo=txt.DbVerNo INNER JOIN [dbo].[LimiterList] lst ON dbl.LimiterNo=lst.LimiterNo INNER JOIN [dbo].[LimiterControlType] ltyp ON lst.ControlType=ltyp.ControlType INNER JOIN [dbo].[DbLimiterCaption] cpt ON dbl.DbVerNo=cpt.DbVerNo AND dbl.LimiterNo=cpt.LimiterNo WHERE mdb.DbName=@ShortDBName AND mdb.DbLabel=@LiveRebuild AND cpt.LangCode='en' ORDER BY dbl.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceMultiDbAuthoritiesBrowseByCaption_90](@InterfaceID Varchar(10), @Version Varchar(10), @Caption nvarchar(50)) AS SET NOCOUNT ON SELECT mdal.MultiDbAuthID, IsNull((Select [imdbc].[LinkText] from [dbo].[MultiDbAuthInterfaceCaption] imdbc where mdal.MultiDbAuthID=imdbc.MultiDbAuthId and [imdbc].[InterfaceID]=@InterfaceID and [imdbc].[Version]=@Version and [imdbc].[LangCode]='en'), mdac.LinkText) as Caption, mdal.Description, [imdal].[SeqNo] FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID INNER JOIN [dbo].[InterfaceMultiDbAuthList] imdal ON mdal.MultiDbAuthID = imdal.MultiDbAuthID WHERE mdac.LangCode = 'en' AND imdal.InterfaceID = @InterfaceID AND imdal.Version = @Version and IsNull((Select [imdbc].[LinkText] from [dbo].[MultiDbAuthInterfaceCaption] imdbc where mdal.MultiDbAuthID=imdbc.MultiDbAuthId and [imdbc].[InterfaceID]=@InterfaceID and [imdbc].[Version]=@Version and [imdbc].[LangCode]='en'), mdac.LinkText) >= @Caption ORDER BY imdal.SeqNo, imdal.MultiDbAuthID RETURN
CREATE PROCEDURE [dbo].[EARI_GetColName_70](@CustID varchar(10), @ColID varchar(50)) AS BEGIN SELECT dbo.EAIF_GetColName_70(0, @CustID, @ColID) AS 'ColName' END
CREATE PROCEDURE [dbo].[EPCAS_GetSecondaryDatabases](@MasterDbList int, @Version int, @DbLabel varchar(10)='live') AS BEGIN SELECT ms.DbName FROM [dbo].[DbList] ms INNER JOIN [dbo].[DbAuthority] a ON a.AuthDbVerNo = ms.DbVerNo WHERE a.MainDbVerNo = @MasterDbList AND a.OwnedFlag = 1 AND ms.DbType in (2,7) ORDER BY [a].[SeqNo] END
CREATE FUNCTION [dbo].[EAIF_GetItemValueTable_WithRowNumber]( @ItemList nvarchar(max), @ValueList nvarchar(max), @Sep char(1)) RETURNS @ItemValueTable TABLE (Item nvarchar(255), Value nvarchar(255), RowNumber int) AS BEGIN DECLARE @ItemDotPos int DECLARE @Item nvarchar(255) DECLARE @ValueDotPos int DECLARE @Value nvarchar(255) DECLARE @RowNum INT SET @RowNum = 1 SELECT @ItemDotPos=charindex(@Sep,@ItemList) SELECT @ValueDotPos=charindex(@Sep,@ValueList) WHILE @ItemDotPos <> 0 AND @ItemDotPos IS NOT NULL AND @ValueDotPos <> 0 AND @ValueDotPos IS NOT NULL BEGIN SELECT @Item=left(@ItemList,@ItemDotPos-1) SELECT @Value=left(@ValueList,@ValueDotPos-1) INSERT INTO @ItemValueTable VALUES(@Item, @Value, @RowNum) SELECT @ItemList=substring(@ItemList,@ItemDotPos+1,Len(@ItemList)-@ItemDotPos) SELECT @ItemDotPos=charindex(@Sep,@ItemList) SELECT @ValueList=substring(@ValueList,@ValueDotPos+1,Len(@ValueList)-@ValueDotPos) SELECT @ValueDotPos=charindex(@Sep,@ValueList) SET @RowNum = @RowNum + 1 END IF @ItemDotPos <> 0 SELECT @Item=left(@ItemList,@ItemDotPos-1) ELSE SELECT @Item = @ItemList IF @ValueDotPos <> 0 SELECT @Value=left(@ValueList,@ValueDotPos-1) ELSE SELECT @Value = @ValueList INSERT INTO @ItemValueTable VALUES(@Item, @Value, @RowNum) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamSourceTypeDefault_99.sql Create PROCEDURE [dbo].[EAUI_GetDbParamSourceTypeDefault_99](@ParamNo int, @SourceType char(1)) AS BEGIN SELECT dbpl.ParamNo, dbo.EAIF_GetDbParamName_70(dbpl.ParamNo) as ParamName, IsNull(dbpstd.DefValue,dbpd.DefValue) as DefValue, [dbpl].[ParamType], case when dbpstd.DefValue is null then 1 else 0 end IsParamDefault FROM [dbo].[DbParamList] dbpl join [dbo].[DbParamDefaults] dbpd on dbpl.ParamNo=dbpd.ParamNo left outer join [dbo].[DbParamSourceTypeDefaults] dbpstd on dbpl.ParamNo=dbpstd.ParamNo and [dbpstd].[SourceType]=@SourceType WHERE dbpl.ParamNo=@ParamNo END
CREATE PROCEDURE [dbo].[UTIL_FindSP]( @theStr varchar(100), @theOutPut bit=0 ) AS BEGIN SET NOCOUNT ON DECLARE @IsFound int DECLARE @ProcNames TABLE (Name [sys].[sysname]) DECLARE @ProcName [sys].[sysname] DECLARE @ProcText nvarchar(4000) DECLARE GetProcText CURSOR FOR SELECT b.name, a.text FROM [dbo].[syscomments] a INNER JOIN [dbo].[sysobjects] b ON a.id=b.id WHERE b.xtype in (N'FN', N'IF', N'TF', N'P') ORDER BY b.name OPEN GetProcText FETCH NEXT FROM GetProcText INTO @ProcName, @ProcText WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN SELECT @IsFound=CHARINDEX(@theStr, @ProcText) IF @IsFound <> 0 AND @IsFound IS NOT NULL BEGIN INSERT INTO @ProcNames VALUES(@ProcName) IF @theOutPut=1 BEGIN EXEC [dbo].[UTIL_GetProcText] @ProcName END END END FETCH NEXT FROM GetProcText INTO @ProcName, @ProcText END CLOSE GetProcText DEALLOCATE GetProcText PRINT 'Found "' + @theStr + '" in following stored procedure(s): ' SET NOCOUNT OFF SELECT * FROM @ProcNames END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseSegmentFileInfo_70]( @OldDbVerNo int, @NewDbVerNo int ) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbSegment] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbSegment].[SegName], [dbo].[DbSegment].[SegDescription], [dbo].[DbSegment].[SeqNo], [dbo].[DbSegment].[ProductionDate] FROM [dbo].[DbSegment] WHERE [dbo].[DbSegment].[DbVerNo]=@OldDbVerNo /* VOLUMES */ DELETE FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbVolume] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbVolume].[Volume],[dbo].[DbVolume].[LastUpdateDate],[dbo].[DbVolume].[EpkPath] FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@OldDbVerNo /* FIELD TAGS */ DELETE FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbFieldTag] ([dbo].[DbFieldTag].[DbVerNo], [dbo].[DbFieldTag].[SegName], [dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[IndexType],[dbo].[DbFieldTag].[Category],[dbo].[DbFieldTag].[ThesNumber],[dbo].[DbFieldTag].[FieldNumbers], [dbo].[DbFieldTag].[SeqNo],[dbo].[DbFieldTag].[Description2]) SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbFieldTag].[SegName],[dbo].[DbFieldTag].[FieldTag], [dbo].[DbFieldTag].[IndexType],[dbo].[DbFieldTag].[Category],[dbo].[DbFieldTag].[ThesNumber],[dbo].[DbFieldTag].[FieldNumbers], [dbo].[DbFieldTag].[SeqNo],[dbo].[DbFieldTag].[Description2] FROM [dbo].[DbFieldTag] WHERE [dbo].[DbFieldTag].[DbVerNo]=@OldDbVerNo /* BIBMAPS */ DELETE FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbBibMap] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbBibMap].[SegName],[dbo].[DbBibMap].[BibField],[dbo].[DbBibMap].[FieldTag],[dbo].[DbBibMap].[SeqNo] FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo]=@OldDbVerNo /* DBSEGFILEINFO */ DELETE FROM [dbo].[DbSegFileInfo] WHERE [dbo].[DbSegFileInfo].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbSegFileInfo] ([dbo].[DbSegFileInfo].[DbVerNo], [dbo].[DbSegFileInfo].[SegName], [dbo].[DbSegFileInfo].[Volume],[dbo].[DbSegFileInfo].[EpsFile],[dbo].[DbSegFileInfo].[EpdFile],[dbo].[DbSegFileInfo].[EpiFile],[dbo].[DbSegFileInfo].[EpfFile],[dbo].[DbSegFileInfo].[EplFile], [dbo].[DbSegFileInfo].[EpgFile],[dbo].[DbSegFileInfo].[EpuFile],[dbo].[DbSegFileInfo].[JumpFile],[dbo].[DbSegFileInfo].[LookupDir],[dbo].[DbSegFileInfo].[ImageServerURL]) SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbSegFileInfo].[SegName],[dbo].[DbSegFileInfo].[Volume], [dbo].[DbSegFileInfo].[EpsFile],[dbo].[DbSegFileInfo].[EpdFile],[dbo].[DbSegFileInfo].[EpiFile],[dbo].[DbSegFileInfo].[EpfFile],[dbo].[DbSegFileInfo].[EplFile],[dbo].[DbSegFileInfo].[EpgFile],[dbo].[DbSegFileInfo].[EpuFile], [dbo].[DbSegFileInfo].[JumpFile],[dbo].[DbSegFileInfo].[LookupDir],[dbo].[DbSegFileInfo].[ImageServerURL] FROM [dbo].[DbSegFileInfo] WHERE [dbo].[DbSegFileInfo].[DbVerNo]=@OldDbVerNo /* THESAURUS */ DELETE FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbThesaurus] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbThesaurus].[SegName],[dbo].[DbThesaurus].[Volume], [dbo].[DbThesaurus].[ThesNumber],[dbo].[DbThesaurus].[ThesFile],[dbo].[DbThesaurus].[UserControlled],[dbo].[DbThesaurus].[StoreKWIC] FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo]=@OldDbVerNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceDbSearchTagDetails_82](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10),@Version varchar(10),@Tag varchar(10), @Caption nvarchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[GlobalSearchTags] WHERE [dbo].[GlobalSearchTags].[Tag]=@Tag AND LTRIM(RTRIM([dbo].[GlobalSearchTags].[Description]))=LTRIM(RTRIM(@Caption))) SET @Caption=null BEGIN TRANSACTION IF @Caption is null BEGIN DELETE [dbo].[InterfaceSearchTagsCaption] WHERE [dbo].[InterfaceSearchTagsCaption].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTagsCaption].[Version]=@Version AND [dbo].[InterfaceSearchTagsCaption].[Tag]=@Tag AND [dbo].[InterfaceSearchTagsCaption].[SeqNo] is null IF @@ROWCOUNT =0 UPDATE [dbo].[InterfaceSearchTagsCaption] SET [dbo].[InterfaceSearchTagsCaption].[Caption]=@Caption WHERE [dbo].[InterfaceSearchTagsCaption].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTagsCaption].[Version]=@Version AND [dbo].[InterfaceSearchTagsCaption].[Tag]=@Tag IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN UPDATE [dbo].[InterfaceSearchTagsCaption] SET [dbo].[InterfaceSearchTagsCaption].[Caption]=@Caption WHERE [dbo].[InterfaceSearchTagsCaption].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTagsCaption].[Version]=@Version AND [dbo].[InterfaceSearchTagsCaption].[Tag]=@Tag IF @@ROWCOUNT =0 AND @Caption is not null INSERT INTO [dbo].[InterfaceSearchTagsCaption]([dbo].[InterfaceSearchTagsCaption].[InterfaceID],[dbo].[InterfaceSearchTagsCaption].[Version],[dbo].[InterfaceSearchTagsCaption].[Tag],[dbo].[InterfaceSearchTagsCaption].[Caption]) VALUES (@InterfaceID,@Version,@Tag,@Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceDbSearchTags','Caption Customized', @InterfaceID ,@Version,@Tag COMMIT TRANSACTION END
CREATE Function [dbo].[EAIF_GetSLCollectionID_912] (@TargetType varchar(10),@DbName varchar(10)) RETURNS varchar(50) AS BEGIN DECLARE @SLCollID varchar(50) SET @SLCollID ='' SELECT @SLCollID =Replace([dbo].[DbSourceTargetTypeList].[CollectionIDMask], '{dbname}', @DbName) from [dbo].[DbSourceTargetTypeList] where [dbo].[DbSourceTargetTypeList].[TargetType]=@TargetType and [dbo].[DbSourceTargetTypeList].[CollectionIDMask] like '%{dbname}%' RETURN @SLCollID END
--sql content merged from file: \StoredProcedures\EAUI_GetCustomerGroupParent.sql create procedure dbo.EAUI_GetCustomerGroupParent ( @p_CustID varchar(10) ) as begin select dbo.EAIF_GetIsParentID(@p_CustID) end
CREATE PROCEDURE [dbo].[EAIP_DeleteCfgAppServer_151]( @UserID nvarchar(20), @UserIP varchar(20), @AppID varchar(20), @SrvName varchar(255) ) AS BEGIN DECLARE @AppNo INT, @SrvNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppID) BEGIN RAISERROR('The Application (%s) does not exist.', 16,-1, @AppID) RETURN END SELECT @AppNo=[dbo].[ConfigApplication].[ApplicationNo] FROM [dbo].[ConfigApplication] WHERE [dbo].[ConfigApplication].[ApplicationID]=@AppID IF NOT EXISTS (SELECT 1 FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo) BEGIN RAISERROR('The Server/Label (%s) does not exist.', 16,-1, @SrvName) RETURN END SELECT @SrvNo=[dbo].[ConfigServer].[ServerNo] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ServerURI]=@SrvName AND [dbo].[ConfigServer].[ApplicationNo]=@AppNo EXEC [dbo].[EAUI_DeleteCfgAppServer_70] @UserID, @UserIP, @AppID, @SrvNo END
CREATE PROCEDURE [dbo].[EAIP_GetDbTopicList_77](@DbVerNo int)AS /** procedure is used by EPCopy **/ BEGIN SELECT distinct ptl.TopicID, ptl.SearchString, null AS ParentTopicID, dbo.EAIF_TopicLangAndCaptions_77(ptl.TopicNo) AS Captions FROM [dbo].[TopicList] tl INNER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo = ptl.TopicNo INNER JOIN [dbo].[DbTopic] db ON db.TopicNo = tl.TopicNo WHERE db.DbVerNo=@DbVerNo UNION ALL SELECT tl.TopicID, tl.SearchString, ptl.TopicID AS ParentTopicID, dbo.EAIF_TopicLangAndCaptions_77(tl.TopicNo) AS Captions FROM [dbo].[TopicList] tl LEFT OUTER JOIN [dbo].[TopicList] ptl ON tl.ParentTopicNo = ptl.TopicNo INNER JOIN [dbo].[DbTopic] db ON db.TopicNo = tl.TopicNo WHERE db.DbVerNo=@DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_RemoveInterfaceSubTopic_79](@UserID nvarchar(20), @UserIP varchar(30),@IntfTopicNo int) AS BEGIN DECLARE @TopicNo int DECLARE @TopicID varchar(10) DECLARE @TopicCaption nvarchar(255) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @TopicNo=it.TopicNo, @InterfaceID=it.InterfaceID, @Version=it.Version, @TopicID=tl.TopicID , @TopicCaption=tc.Caption FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.IntfTopicNo =@IntfTopicNo AND tc.LangCode = 'en' BEGIN TRANSACTION DELETE FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[IntfTopicNo]=@IntfTopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END -- if it was the last subtopic - remove main topic from the interface DECLARE @ParentTopicNo int DECLARE @SubTopicCount int SELECT @ParentTopicNo=[dbo].[TopicList].[ParentTopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicNo]=@TopicNo SELECT @SubTopicCount=count(*) FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version AND tl.ParentTopicNo =@ParentTopicNo IF @SubTopicCount=0 DELETE FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceTopic].[Version]=@Version AND [dbo].[InterfaceTopic].[TopicNo]=@ParentTopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Delete Interface SubTopic', @InterfaceID,@Version,@TopicID, @TopicCaption COMMIT TRANSACTION END
CREATE FUNCTION dbo.EACOPY_AUTO_GetXmlDbSegment_DbThesaurus(@DbVerNo int, @SegName varchar(10)) RETURNS XML BEGIN RETURN( SELECT 0 AS DbVerNo, [dbo].[DbThesaurus].[SegName], [dbo].[DbThesaurus].[Volume], [dbo].[DbThesaurus].[ThesNumber], [dbo].[DbThesaurus].[ThesFile], [dbo].[DbThesaurus].[UserControlled], [dbo].[DbThesaurus].[StoreKWIC] FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo] = @DbVerNo AND [dbo].[DbThesaurus].[SegName] = @SegName ORDER BY DbVerNo, [dbo].[DbThesaurus].[SegName], [dbo].[DbThesaurus].[Volume], [dbo].[DbThesaurus].[ThesNumber], [dbo].[DbThesaurus].[ThesFile], [dbo].[DbThesaurus].[UserControlled], [dbo].[DbThesaurus].[StoreKWIC] FOR XML RAW('r') ) END
CREATE PROCEDURE [dbo].[EAUI_DeleteDatabaseVolume_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @Volume varchar(20)) AS BEGIN EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@DbName, @DbLabel,'Delete Volume', '', @Volume /* Associated Thesauruses cannot be cascade deleted, so they must be deleted here*/ DELETE FROM [dbo].[DbThesaurus] WHERE [dbo].[DbThesaurus].[DbVerNo]=@DbVerNo AND [dbo].[DbThesaurus].[Volume]=@Volume DELETE FROM [dbo].[DbVolume] WHERE [dbo].[DbVolume].[DbVerNo]=@DbVerNo AND [dbo].[DbVolume].[Volume]=@Volume END
CREATE PROCEDURE [dbo].[EAIP_CopyProfileDatabases_104](@CustType char(1), @SrcProfNo int, @DstProfNo int, @Operation varchar(20), @SelectedDbs varchar(max)) AS BEGIN DECLARE @ParamNo smallint Declare @DstDbLabel varchar(10) select @DstDbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@DstProfNo -- databases to copy Create Table #SelectedDatabasesTable (DbVerNo int, DbName varchar(10)) INSERT INTO #SelectedDatabasesTable SELECT convert(int,[a].[Item]), dbl.DbName FROM dbo.EAIF_GetItemTable_70(@SelectedDbs,',') a join [dbo].[DbList] dbl on a.Item=dbl.DbVerNo IF @CustType ='I' OR @CustType='P' BEGIN -- Internal or partner -- check for append or replace IF (@Operation = 'r') BEGIN -- replace -- check if we're only copying a selected subset of databases IF LEN(@SelectedDbs) > 0 BEGIN -- delete databases from target profile that are not in the selected db list DELETE dst FROM [dbo].[ProfDatabase] dst --LEFT OUTER JOIN @TempProfDatabase src ON dst.DbVerNo = src.DbVerNo AND src.ProfNo = @srcProfNo LEFT OUTER JOIN (Select dbl.DbVerNo from #SelectedDatabasesTable src Join [dbo].[DbList] dbl on src.DbName=dbl.DbName and dbl.DbLabel=@DstDbLabel) a ON a.DbVerNo = dst.DbVerNo WHERE dst.ProfNo = @dstProfNo AND a.DbVerNo IS NULL -- update the databases that were already on the dest profile with the values from the source profile dbs UPDATE dst SET [dst].[SeqNo] = src.SeqNo, [dst].[Enable] = src.Enable, [dst].[SelDefault] = src.SelDefault, [dst].[CustomLimiter] = src.CustomLimiter, [dst].[CtrlCustID] = src.CtrlCustID, [dst].[StartPage] = src.StartPage, [dst].[SugSubject] = src.SugSubject, [dst].[Mode] = src.Mode, [dst].[AccessEndDate] = NULL FROM [dbo].[ProfDatabase] src join #SelectedDatabasesTable sdb ON sdb.DbVerNo = src.DbVerNo join [dbo].[DbList] dbl on sdb.DbName=dbl.DbName and dbl.DbLabel=@DstDbLabel JOIN [dbo].[ProfDatabase] dst ON dbl.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo WHERE src.ProfNo = @SrcProfNo -- finally, insert any databases from the source profile that weren't on the dest profile INSERT INTO [dbo].[ProfDatabase] ([dst].[ProfNo],[dst].[DbVerNo],[dst].[SeqNo],[dst].[Enable],[dst].[SelDefault], [dst].[CustomLimiter],[dst].[CtrlCustID],[dst].[StartPage],[dst].[SugSubject], [dst].[Mode], [dst].[AccessEndDate]) SELECT @DstProfNo,dbl.DbVerNo,src.SeqNo,src.Enable,src.SelDefault, 0 as CustomLimiter,src.CtrlCustID,src.StartPage,null,'I',NULL FROM [dbo].[ProfDatabase] src JOIN #SelectedDatabasesTable sdb ON src.DbVerNo = sdb.DbVerNo Join [dbo].[DbList] dbl on sdb.DbName=dbl.DbName and dbl.DbLabel=@DstDbLabel LEFT OUTER JOIN [dbo].[ProfDatabase] dst ON dbl.DbVerNo = dst.DbVerNo and dst.ProfNo = @dstProfNo WHERE src.ProfNo=@SrcProfNo AND (src.AccessEndDate is null or datediff(hh, src.AccessEndDate, getdate())<0 ) AND dst.DbVerNo IS NULL END -- copy selected dbs ELSE -- copy them all BEGIN -- delete databases from target profile that are not on the source profile DELETE dst FROM [dbo].[ProfDatabase] dst LEFT OUTER JOIN (select dbl2.DbVerNo from [dbo].[ProfDatabase] src join [dbo].[DbList] dbl on src.DbVerNo=dbl.DbVerNo join [dbo].[DbList] dbl2 on dbl.DbName=dbl2.DbName and dbl2.DbLabel=@DstDbLabel where src.ProfNo=@SrcProfNo) a ON dst.DbVerNo = a.DbVerNo --LEFT OUTER JOIN #SelectedDatabasesTable src ON src.DbVerNo = dst.DbVerNo WHERE dst.ProfNo = @dstProfNo AND a.DbVerNo IS NULL -- update the databases that were already on the dest profile with the values from the source profile dbs UPDATE dst SET [dst].[SeqNo] = src.SeqNo, [dst].[Enable] = src.Enable, [dst].[SelDefault] = src.SelDefault, [dst].[CustomLimiter] = src.CustomLimiter, [dst].[CtrlCustID] = src.CtrlCustID, [dst].[StartPage] = src.StartPage, [dst].[SugSubject] = src.SugSubject, [dst].[Mode] = src.Mode, [dst].[AccessEndDate] = NULL FROM [dbo].[ProfDatabase] src Join [dbo].[DbList] dbl on src.DbVerNo=dbl.DbVerNo join [dbo].[DbList] dbl2 on dbl.DbName=dbl2.DbName and dbl2.DbLabel=@DstDbLabel JOIN [dbo].[ProfDatabase] dst ON dbl2.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo --JOIN #SelectedDatabasesTable sdb ON sdb.DbVerNo = src.DbVerNo WHERE src.ProfNo = @SrcProfNo -- finally, insert any databases from the source profile that weren't on the dest profile INSERT INTO [dbo].[ProfDatabase] ([dst].[ProfNo],[dst].[DbVerNo],[dst].[SeqNo],[dst].[Enable],[dst].[SelDefault], [dst].[CustomLimiter],[dst].[CtrlCustID],[dst].[StartPage],[dst].[SugSubject], [dst].[Mode], [dst].[AccessEndDate]) SELECT @DstProfNo,dbl2.DbVerNo,src.SeqNo,src.Enable,src.SelDefault, 0 as CustomLimiter,src.CtrlCustID,src.StartPage,null,'I',NULL FROM [dbo].[ProfDatabase] src join [dbo].[DbList] dbl on src.DbVerNo=dbl.DbVerNo join [dbo].[DbList] dbl2 on dbl.DbName=dbl2.DbName and dbl2.DbLabel=@DstDbLabel LEFT OUTER JOIN [dbo].[ProfDatabase] dst ON dbl2.DbVerNo = dst.DbVerNo and dst.ProfNo = @dstProfNo --JOIN #SelectedDatabasesTable sdb ON src.DbVerNo = sdb.DbVerNo WHERE src.ProfNo=@SrcProfNo AND (src.AccessEndDate is null or datediff(hh, src.AccessEndDate, getdate())<0 ) AND dst.DbVerNo IS NULL END -- copy them all END -- replace ELSE -- operation = 'a' BEGIN -- append DECLARE @MaxSeqNo AS INT SET @MaxSeqNo = ISNULL((select MAX([dbo].[ProfDatabase].[SeqNo]) from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo] = @dstProfNo),0) -- check if we're only copying a selected subset of databases IF LEN(@SelectedDbs) > 0 BEGIN -- finally, insert the databases from the source profile (that aren't already on the dest profile), updating the sequence number to follow any dbs that were already on the target INSERT INTO [dbo].[ProfDatabase] ([dst].[ProfNo],[dst].[DbVerNo],[dst].[SeqNo],[dst].[Enable],[dst].[SelDefault], [dst].[CustomLimiter],[dst].[CtrlCustID],[dst].[StartPage],[dst].[SugSubject], [dst].[Mode], [dst].[AccessEndDate]) SELECT @DstProfNo,dbl.DbVerNo, row_number() over(order by src.SeqNo) + @MaxSeqNo,src.Enable,src.SelDefault, 0 as CustomLimiter,src.CtrlCustID,src.StartPage,null,'I',NULL FROM [dbo].[ProfDatabase] src JOIN #SelectedDatabasesTable sdb ON src.DbVerNo = sdb.DbVerNo Join [dbo].[DbList] dbl on sdb.DbName=dbl.DbName and dbl.DbLabel=@DstDbLabel LEFT OUTER JOIN [dbo].[ProfDatabase] dst ON dst.DbVerNo = dbl.DbVerNo AND dst.ProfNo = @dstProfNo WHERE src.ProfNo=@SrcProfNo AND (src.AccessEndDate is null or datediff(hh, src.AccessEndDate, getdate())<0 ) AND dst.DbVerNo IS NULL END -- copy selected dbs ELSE -- copy them all BEGIN -- finally, insert the databases from the source profile (that aren't already on the dest profile), updating the sequence number to follow any dbs that were already on the target INSERT INTO [dbo].[ProfDatabase] ([dst].[ProfNo],[dst].[DbVerNo],[dst].[SeqNo],[dst].[Enable],[dst].[SelDefault], [dst].[CustomLimiter],[dst].[CtrlCustID],[dst].[StartPage],[dst].[SugSubject], [dst].[Mode], [dst].[AccessEndDate]) SELECT @DstProfNo,dbl2.DbVerNo,row_number() over(order by src.SeqNo) + @MaxSeqNo,src.Enable,src.SelDefault, 0 as CustomLimiter,src.CtrlCustID,src.StartPage,null,'I',NULL FROM [dbo].[ProfDatabase] src join [dbo].[DbList] dbl on src.DbVerNo=dbl.DbVerNo join [dbo].[DbList] dbl2 on dbl.DbName=dbl2.DbName and dbl2.DbLabel=@DstDbLabel LEFT OUTER JOIN [dbo].[ProfDatabase] dst ON dst.DbVerNo = dbl2.DbVerNo AND dst.ProfNo = @dstProfNo WHERE src.ProfNo=@SrcProfNo AND (src.AccessEndDate is null or datediff(hh, src.AccessEndDate, getdate())<0 ) AND dst.DbVerNo IS NULL END -- copy them all END -- append -- if there aren't any integrated search databases, remove the param for 'showIntegratedSearchPanel' If not exists (Select 1 from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where [pdb].[ProfNo]=@DstProfNo and [pdb].[Enable]=1 and [dbl].[SourceType] not in ('D', 'E', 'S')) Begin Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo End END ELSE --customer type (this is for types S or T) BEGIN -- Per Lana, when we are talking about Copy profile databases for S or T -- customer profiles we are not talking about adding/removing records in profDatabase, -- we can only change Enable, SeqNo, SelDefault, CustomLimiter, StartPage and SugSubject values. --Append means � leave all existing target profile configuration �as is� and update -- Enable, SeqNo, SelDefault, CustomLimiter, StartPage and SugSubject values for databases that -- have Enable=1 on the source profile and Enable=0 on the target profile. --Replace means - update Enable, SeqNo, SelDefault, CustomLimiter, StartPage and SugSubject values for -- databases on a target profile to match values for the databases on a source profile. IF (@Operation = 'r') BEGIN -- replace -- check if we're only copying a selected subset of databases IF LEN(@SelectedDbs) > 0 BEGIN -- replace with selected dbs -- update the databases that were already on the dest profile with the values from the "selected" source profile dbs UPDATE dst SET [dst].[SeqNo] = src.SeqNo, [dst].[Enable] = src.Enable, [dst].[SelDefault] = src.SelDefault, [dst].[CustomLimiter] = src.CustomLimiter, [dst].[StartPage] = src.StartPage, [dst].[SugSubject] = src.SugSubject, [dst].[Mode] = src.Mode FROM [dbo].[ProfDatabase] src JOIN [dbo].[ProfDatabase] dst ON src.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo JOIN #SelectedDatabasesTable sdb ON sdb.DbVerNo = src.DbVerNo WHERE src.ProfNo = @SrcProfNo -- mark any dbs that were not in selected list not enabled UPDATE dst SET [dst].[Enable] = 0 FROM [dbo].[ProfDatabase] dst LEFT OUTER JOIN #SelectedDatabasesTable sdb ON dst.DbVerNo = sdb.DbVerNo WHERE dst.ProfNo = @dstProfNo AND sdb.DbVerNo IS NULL and dst.Enable = 1 END -- copy (replace) selected dbs ELSE -- copy them all BEGIN -- replace with all source dbs -- update the databases that were already on the dest profile with the values from the source profile dbs UPDATE dst SET [dst].[SeqNo] = src.SeqNo, [dst].[Enable] = src.Enable, [dst].[SelDefault] = src.SelDefault, [dst].[CustomLimiter] = src.CustomLimiter, [dst].[StartPage] = src.StartPage, [dst].[SugSubject] = src.SugSubject, [dst].[Mode] = src.Mode FROM [dbo].[ProfDatabase] src JOIN [dbo].[ProfDatabase] dst ON src.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo WHERE src.ProfNo = @SrcProfNo -- mark any dbs that were not in src not enabled UPDATE dst SET [Enable] = 0 FROM [dbo].[ProfDatabase] dst LEFT OUTER JOIN [dbo].[ProfDatabase] src ON dst.DbVerNo = src.DbVerNo AND src.ProfNo = @SrcProfNo WHERE dst.ProfNo = @dstProfNo AND src.DbVerNo IS NULL and dst.Enable = 1 END -- copy them all END -- replace ELSE -- operation = 'a' BEGIN -- append -- check if we're only copying a selected subset of databases IF LEN(@SelectedDbs) > 0 BEGIN -- append selected dbs -- get the max dst seq no SET @MaxSeqNo = ISNULL((SELECT MAX(dst.SeqNo) FROM [dbo].[ProfDatabase] dst WHERE dst.ProfNo = @dstProfNo), 0) -- finally, insert the databases from the source profile, updating the sequence number to follow any dbs that were already on the target -- use a CTE to get a table of "selected" source dbs to update and their "new" sequence number (which should be after the max existing/not modified seq no) ;with NewSeqNos as (SELECT src.DbVerNo , @MaxSeqNo + ROW_NUMBER() OVER(ORDER BY src.SeqNo) as NewSeqNo FROM [dbo].[ProfDatabase] src JOIN [dbo].[ProfDatabase] dst ON src.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo WHERE src.ProfNo = @SrcProfNo and src.Enable = 1 and dst.Enable = 0) UPDATE dst SET [dst].[SeqNo] = [nsn].NewSeqNo, [dst].[Enable] = src.Enable, [dst].[SelDefault] = src.SelDefault, [dst].[CustomLimiter] = src.CustomLimiter, [dst].[StartPage] = src.StartPage, [dst].[SugSubject] = src.SugSubject, [dst].[Mode] = src.Mode FROM [dbo].[ProfDatabase] src JOIN [dbo].[ProfDatabase] dst ON src.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo JOIN #SelectedDatabasesTable sdb ON sdb.DbVerNo = src.DbVerNo JOIN NewSeqNos nsn on nsn.DbVerNo = src.DbVerNo WHERE src.ProfNo = @SrcProfNo and src.Enable = 1 and dst.Enable = 0; END -- copy selected dbs ELSE -- copy them all BEGIN -- get the max dst seqno SET @MaxSeqNo = ISNULL((SELECT MAX(dst.SeqNo) FROM [dbo].[ProfDatabase] dst WHERE dst.ProfNo = @dstProfNo), 0) -- finally, insert the databases from the source profile, updating the sequence number to follow any dbs that were already on the target -- use a CTE to get a table of source dbs to update and their "new" sequence number (which should be after the max existing/not modified seq no) ;with NewSeqNos as (SELECT src.DbVerNo , @MaxSeqNo + ROW_NUMBER() OVER(ORDER BY src.SeqNo) as NewSeqNo FROM [dbo].[ProfDatabase] src JOIN [dbo].[ProfDatabase] dst ON src.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo WHERE src.ProfNo = @SrcProfNo and src.Enable = 1 and dst.Enable = 0) UPDATE dst SET [dst].[SeqNo] = nsn.NewSeqNo, [dst].[Enable] = src.Enable, [dst].[SelDefault] = src.SelDefault, [dst].[CustomLimiter] = src.CustomLimiter, [dst].[StartPage] = src.StartPage, [dst].[SugSubject] = src.SugSubject, [dst].[Mode] = src.Mode FROM [dbo].[ProfDatabase] src JOIN [dbo].[ProfDatabase] dst ON src.DbVerNo = dst.DbVerNo AND dst.ProfNo = @dstPRofNo JOIN NewSeqNos nsn on nsn.DbVerNo = src.DbVerNo WHERE src.ProfNo = @SrcProfNo and src.Enable = 1 and dst.Enable = 0; END -- copy them all END -- append -- if there aren't any integrated search databases, remove the param for 'showIntegratedSearchPanel' If not exists (Select 1 from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where [pdb].[ProfNo]=@DstProfNo and [dbl].[SourceType] = 'M') -- 'M' is EBSCOHost Integrated Search (M) Begin Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@DstProfNo and [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo End END -- customer type --- update ProfDb and ProfAuthDbDefaults data IF LEN(@SelectedDbs) > 0 BEGIN -- check operation to determine what to delete IF @Operation = 'r' BEGIN Delete [dbo].[ProfileDbDisplayDetails] where [dbo].[ProfileDbDisplayDetails].[ProfNo]=@DstProfNo Delete [dbo].[ProfAuthDbDefaults] where [dbo].[ProfAuthDbDefaults].[ProfNo]=@DstProfNo END ELSE BEGIN DELETE dst FROM [dbo].[ProfileDbDisplayDetails] dst JOIN #SelectedDatabasesTable src ON src.DbVerNo = dst.DbVerNo where dst.ProfNo=@DstProfNo DELETE dst FROM [dbo].[ProfAuthDbDefaults] dst JOIN #SelectedDatabasesTable src ON src.DbVerNo = dst.MainDbVerNo where dst.ProfNo=@DstProfNo END -- Customized ProfDb values (ResourceType, ShortDescription, DisplayName) Insert [dbo].[ProfileDbDisplayDetails] select @DstProfNo, pdbdd.DbVerNo, pdbdd.ProfDbResourceType, pdbdd.ProfDbShortDescription, pdbdd.ProfDbDisplayName from [dbo].[ProfileDbDisplayDetails] pdbdd join [dbo].[ProfDatabase] pdb on pdbdd.DbVerNo=pdb.DbVerNo and pdb.ProfNo=@DstProfNo JOIN #SelectedDatabasesTable sdb ON sdb.DbVerNo = pdb.DbVerNo where pdbdd.ProfNo=@SrcProfNo -- Customized data on ProfAuthDbDefaults Insert [dbo].[ProfAuthDbDefaults] select @DstProfNo, MainDbVerNo, AuthDbVerNo, BrowseMode, BoolOperator from [dbo].[ProfAuthDbDefaults] padd JOIN #SelectedDatabasesTable sdb ON sdb.DbVerNo = padd.MainDbVerNo where ProfNo=@SrcProfNo END ELSE BEGIN -- check operation to determine what to delete IF @Operation = 'r' BEGIN Delete [dbo].[ProfileDbDisplayDetails] where [dbo].[ProfileDbDisplayDetails].[ProfNo]=@DstProfNo Delete [dbo].[ProfAuthDbDefaults] where [dbo].[ProfAuthDbDefaults].[ProfNo]=@DstProfNo END ELSE BEGIN DELETE dst FROM [dbo].[ProfileDbDisplayDetails] dst JOIN [dbo].[ProfileDbDisplayDetails] src ON src.DbVerNo = dst.DbVerNo AND src.ProfNo = @SrcProfNo where dst.ProfNo=@DstProfNo DELETE dst FROM [dbo].[ProfAuthDbDefaults] dst JOIN [dbo].[ProfAuthDbDefaults] src ON src.MainDbVerNo = dst.MainDbVerNo AND src.ProfNo = @SrcProfNo where dst.ProfNo=@DstProfNo END -- Customized ProfDb values (ResourceType, ShortDescription, DisplayName) Insert [dbo].[ProfileDbDisplayDetails] select @DstProfNo, pdbdd.DbVerNo, pdbdd.ProfDbResourceType, pdbdd.ProfDbShortDescription, pdbdd.ProfDbDisplayName from [dbo].[ProfileDbDisplayDetails] pdbdd join [dbo].[ProfDatabase] pdb on pdbdd.DbVerNo=pdb.DbVerNo and pdb.ProfNo=@DstProfNo where pdbdd.ProfNo=@SrcProfNo -- Customized data on ProfAuthDbDefaults Insert [dbo].[ProfAuthDbDefaults] select @DstProfNo, [dbo].[ProfAuthDbDefaults].[MainDbVerNo], [dbo].[ProfAuthDbDefaults].[AuthDbVerNo], [dbo].[ProfAuthDbDefaults].[BrowseMode], [dbo].[ProfAuthDbDefaults].[BoolOperator] from [dbo].[ProfAuthDbDefaults] where [dbo].[ProfAuthDbDefaults].[ProfNo]=@SrcProfNo END END
CREATE Procedure [dbo].[EAUI_GetProfileCustomLinksByCategory_101] (@ProfNo int, @LinkCategory varchar(max)) as Begin DECLARE @CustParamNo int DECLARE @ProfParamNo int Declare @CustNo int SELECT @CustParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') select @CustNo = [c].[CustNo] from [dbo].[Customer] c join [dbo].[Profile] p on c.CustID=p.CustID where p.ProfNo=@ProfNo Declare @Xml nvarchar(max) Declare @Doc int set @Xml='' select @Xml=@xml + Convert(nvarchar(max), cpsv1.ParamValue) from [dbo].[CustomParamXmlValues] cpsv1 join [dbo].[CustomParamXmlValues] cpsv2 on cpsv1.ItemName=cpsv2.ItemName and cpsv2.TargetNo=@ProfNo and cpsv2.ParamLevel='P' and cpsv2.ParamNo=@ProfParamNo where cpsv1.ParamNo=@CustParamNo and cpsv1.ParamLevel='C' and cpsv1.TargetNo=@CustNo select @Xml=@Xml + ' ' exec [dbo].[sp_xml_preparedocument] @doc OUTPUT, @Xml select LinkName from OpenXml(@doc, '/Root/customerCustomLink',2) with (linkName nvarchar(max) '@linkName', linkCategory nvarchar(max) '@linkCategory') where linkCategory=@LinkCategory EXEC [dbo].[sp_xml_removedocument] @Doc End
CREATE PROCEDURE [dbo].[EAUI_AddFeature_80](@UserID nvarchar(20),@UserIP varchar(15), @Category varchar(10), @Name varchar(50), @FieldsXML nvarchar(max), @SubCategory varchar(20)='') AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]=@Category AND [dbo].[FeatureList].[SubCategory]= @SubCategory AND [dbo].[FeatureList].[FeatureName]=@Name) BEGIN RAISERROR('The %s %s %s already exists',16,-1,@Category,@SubCategory, @Name) RETURN END DECLARE @TemplCategory varchar(20) SET @TemplCategory=@Category+'_templ' BEGIN TRANSACTION INSERT INTO [dbo].[FeatureList]([dbo].[FeatureList].[Category],[dbo].[FeatureList].[SubCategory], [dbo].[FeatureList].[FeatureName],[dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant],[dbo].[FeatureList].[VisibleItemCount],[dbo].[FeatureList].[SelectionMode]) SELECT @Category,@SubCategory, @Name, [dbo].[FeatureList].[FeatureType],[dbo].[FeatureList].[DbDependant],[dbo].[FeatureList].[VisibleItemCount],[dbo].[FeatureList].[SelectionMode] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[Category]=@TemplCategory AND [dbo].[FeatureList].[FeatureName] = @TemplCategory IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @FeatureNo int SELECT @FeatureNo=[dbo].[FeatureList].[FeatureNo] from [dbo].[FeatureList] where [dbo].[FeatureList].[Category]=@Category AND [dbo].[FeatureList].[SubCategory]= @SubCategory AND [dbo].[FeatureList].[FeatureName]=@Name INSERT INTO [dbo].[FeatureValues]([dbo].[FeatureValues].[FeatureNo],[dbo].[FeatureValues].[ItemNo],[dbo].[FeatureValues].[FieldValueXml]) VALUES (@FeatureNo, 0, @FieldsXML) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Add Features', @Category,@SubCategory, @Name COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfFullTextQueryString_70](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @ProfNo int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) IF @ProfNo IS NULL RETURN SELECT dbo.EAIF_GetFullTextQueryString_70(@ProfNo) END
CREATE PROCEDURE [dbo].[BLL_GetDbLimitersByName](@listShortDBName varchar(255), @LiveRebuild varchar(10)) AS BEGIN SELECT lst.ControlType as 'CtrlType', ltyp.ControlTag as 'CtrlTag', cpt.Caption, CtrlDefault=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5 OR dbl.DefValue='On') THEN 1 ELSE 0 END, Tag=CASE WHEN lst.ControlType=17 THEN lst.LimiterId ELSE SUBSTRING(dbl.SearchString,1,2) END, ltyp.ControlFormat as 'Format', lst.ControlSize as 'CtrlSize', '' as 'ColId', 0 as 'Category', --skipValueText=CASE WHEN (lst.ControlType=4 OR lst.ControlType=5) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,31,8000), ' ', ''),'', '_'), '(None)_( None)', '(None)')) WHEN (lst.ControlType=15) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=16) THEN dbo.EAIF_XmlDecode_70(REPLACE(REPLACE(REPLACE(SUBSTRING(txt.ControlTemplate,1,8000), ' ', '')) WHEN (lst.ControlType=17) THEN dbl.SearchString ELSE NULLIF(REPLACE(SUBSTRING(dbl.SearchString, 4, 4000), '{val}', ''), 'y') END, lst.LogicalOpCode, mdb.DbName as 'ShortDBName' FROM [dbo].[DbList] mdb INNER JOIN [dbo].[DbLimiter] dbl ON mdb.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN [dbo].[DbLimiterDetail] txt ON dbl.LimiterNo=txt.LimiterNo AND dbl.DbVerNo=txt.DbVerNo INNER JOIN [dbo].[LimiterList] lst ON dbl.LimiterNo=lst.LimiterNo INNER JOIN [dbo].[LimiterControlType] ltyp ON lst.ControlType=ltyp.ControlType INNER JOIN [dbo].[DbLimiterCaption] cpt ON dbl.DbVerNo=cpt.DbVerNo AND dbl.LimiterNo=cpt.LimiterNo INNER JOIN dbo.EAIF_GetItemTable_70(@listShortDBName,',') dbs ON mdb.DbName=dbs.Item WHERE mdb.DbLabel=@LiveRebuild AND cpt.LangCode='en' ORDER BY mdb.DbName, dbl.SeqNo END
Create PROCEDURE [dbo].[EAUI_GetInterfaceMultiDbAuthoritiesBrowseByID_90](@InterfaceID Varchar(10), @Version Varchar(10), @MultiDbAuthID varchar(10)) AS SET NOCOUNT ON SELECT mdal.MultiDbAuthID, IsNull((Select [imdbc].[LinkText] from [dbo].[MultiDbAuthInterfaceCaption] imdbc where mdal.MultiDbAuthID=imdbc.MultiDbAuthId and [imdbc].[InterfaceID]=@InterfaceID and [imdbc].[Version]=@Version and [imdbc].[LangCode]='en'), mdac.LinkText) Caption, mdal.Description, [imdal].[SeqNo] FROM [dbo].[MultiDbAuthList] mdal INNER JOIN [dbo].[MultiDbAuthCaption] mdac ON mdal.MultiDbAuthID = mdac.MultiDbAuthID INNER JOIN [dbo].[InterfaceMultiDbAuthList] imdal ON mdal.MultiDbAuthID = imdal.MultiDbAuthID WHERE mdac.LangCode = 'en' AND imdal.InterfaceID = @InterfaceID AND imdal.Version = @Version and mdal.MultiDbAuthID >= @MultiDbAuthID ORDER BY imdal.SeqNo, imdal.MultiDbAuthID RETURN
CREATE PROCEDURE [dbo].[EARI_GetColNo_70](@CustID varchar(10),@ColID varchar(50)) AS BEGIN SELECT dbo.EAIF_GetColNo_70(@CustID, @ColID) END
CREATE PROCEDURE [dbo].[EPCAS_GetSegment](@MasterDbList int, @DBVersion int, @Label varchar(10), @LiveRebuild varchar(10), @Volume varchar(10)) AS BEGIN SELECT CAST(CHECKSUM(CONVERT(VARCHAR,d.DbVerNo)+':'+ d.SegName) as int) as 'SegCounter', e.DbVerNo as 'DBVersion', e.EpsFile, e.EpdFile, e.EpiFile, e.EpfFile, e.JumpFile, e.LookupDir, e.EplFile, e.EpgFile, e.EpuFile,e.ImageServerURL FROM [dbo].[DbSegFileInfo] e INNER JOIN [dbo].[DbSegment] d ON e.DbVerNo = d.DbVerNo AND e.SegName = d.SegName WHERE e.DbVerNo = @MasterDbList AND e.Volume = @Volume ORDER BY [d].[SeqNo] END
CREATE Function [dbo].[EAIF_GetMDbAuthInterfaceList_90](@MDbAuthID varchar(10)) Returns @Ret Table (MultiDbAuthID varchar(10), Interface nvarchar(max)) as Begin Declare @InterfaceList nvarchar(max) Set @InterfaceList=N'' SELECT @InterfaceList = @InterfaceList +il.InterfaceName +N' ('+il.InterfaceID+N'-'+il.Version+N')'+N'
' FROM [dbo].[InterfaceMultiDbAuthList] imdba INNER JOIN [dbo].[InterfaceVersion] iv ON imdba.InterfaceID = iv.InterfaceID AND imdba.Version = iv.Version INNER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version = il.Version WHERE imdba.MultiDbAuthID = @MDbAuthID AND il.LangCode = 'en' Order by il.InterfaceID, il.Version Insert @ret ([dbo].[EAIF_GetMDbAuthInterfaceList_90].[MultiDbAuthID], [dbo].[EAIF_GetMDbAuthInterfaceList_90].[Interface]) Values (@MDbAuthID, @InterfaceList) return End
--sql content merged from file: \StoredProcedures\EAUI_GetDbParamSourceTypes_97.sql Create Procedure [dbo].[EAUI_GetDbParamSourceTypes_97] @SourceTypeList varchar(10) As Select [pos].[SourceType], [pos].[SourceName] from EASUPPORT.dbo.ProductOfferingSource pos join dbo.EAIF_GetItemTable_70(@SourceTypeList, ';') i on pos.SourceType=i.Item
CREATE PROCEDURE [dbo].[UTIL_SetHTTPStoProfileParameters_222] @InterfaceVersion [InterfaceVersionType] READONLY, @paramNoList nvarchar(4000), @eisDomainList nvarchar(4000), @batchSize INT = 10, @WaitForReplicationSec SMALLINT = 10, @maxPendingAmount INT = 300, @delayTimeNotification DATETIME = '00:00:05' AS BEGIN IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name = 'BACK') BEGIN EXEC('CREATE SCHEMA BACK'); END; IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US796593_SetHTTPStoParameters') BEGIN CREATE TABLE BACK.US796593_SetHTTPStoParameters ( [DateInserted] DATETIME NOT NULL, [TargetNo] INT NOT NULL, [ParamLevel] char(1) NOT NULL, [ParamNo] smallint NOT NULL, [ParamOldValue] nvarchar(max) NOT NULL, [ParamNewValue] nvarchar(max) NOT NULL, [IsRollbacked] BIT DEFAULT(0) ) END IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US796593_SetHTTPStoXmlParameters') BEGIN CREATE TABLE BACK.US796593_SetHTTPStoXmlParameters ( [DateInserted] DATETIME NOT NULL, [TargetNo] INT NOT NULL, [ParamLevel] char(1) NOT NULL, [ParamNo] smallint NOT NULL, [ParamOldValue] nvarchar(max) NOT NULL, [ParamNewValue] nvarchar(max) NOT NULL, [IsRollbacked] BIT DEFAULT(0) ) END IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US796593_SetHttpsToProfileUrl') BEGIN CREATE TABLE BACK.US796593_SetHttpsToProfileUrl ( [DateInserted] DATETIME NOT NULL, [ProfNo] INT NOT NULL, [OldValue] nvarchar(max) NOT NULL, [NewValue] nvarchar(max) NOT NULL, [IsRollbacked] BIT DEFAULT(0) ) END IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US796593_InterfaceVersion') BEGIN CREATE TABLE BACK.US796593_InterfaceVersion ( [DateInserted] DATETIME NOT NULL, [InterfaceID] VARCHAR(10) NOT NULL, [Version] VARCHAR(10) NOT NULL, [SiteURLOldValue] nvarchar(255) NOT NULL, [SiteURLNewValue] nvarchar(255) NOT NULL, [PersistentLinkURLOldValue] nvarchar(255) NULL, [PersistentLinkURLNewValue] nvarchar(255) NULL, [IsRollbacked] BIT DEFAULT(0) ) END IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US796593_ProfCustomWidgets') BEGIN CREATE TABLE BACK.US796593_ProfCustomWidgets ( [DateInserted] DATETIME NOT NULL, [ProfNo] INT NOT NULL, [CustomHTMLOldValue] nvarchar(max), [CustomHTMLNewValue] nvarchar(max), [URLOldValue] nvarchar(255), [URLNewValue] nvarchar(255), [IsRollbacked] BIT DEFAULT(0) ) END IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US796593_ProfOtherServiceLinks') BEGIN CREATE TABLE BACK.US796593_ProfOtherServiceLinks( [DateInserted] DATETIME NOT NULL, [ProfNo] INT NOT NULL, [LinkURLOldValue] nvarchar(max), [LinkURLNewValue] nvarchar(max), [LinkIconOldValue] nvarchar(max), [LinkIconNewValue] nvarchar(max), [IsRollbacked] BIT DEFAULT(0) ) END IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'US823320_UpdatedProfile') BEGIN CREATE TABLE BACK.US823320_UpdatedProfile( [ProfNo] INT NOT NULL ) END IF object_id('tempdb..#CustWithInterfaces','U') is null BEGIN CREATE TABLE #CustWithInterfaces ( CustNo INT, CustID VARCHAR(10) ); END DELETE FROM #CustWithInterfaces IF object_id('tempdb..#CustomerLevelParamNos','U') is null BEGIN CREATE TABLE #CustomerLevelParamNos ( ParamNo SMALLINT ); END DELETE FROM #CustomerLevelParamNos --1. Get all profiles for updating which have 'P' level parameters BEGIN TRY DECLARE @updateDate DATETIME = GETDATE(); DECLARE @profNo INT; DECLARE @custId varchar(10); DECLARE @groupId varchar(10); DECLARE @profId varchar(10); DECLARE @TransId BIGINT; DECLARE @custIndex INT = 0; DECLARE @profIndex INT = 0; DECLARE @custNo INT; DECLARE @cpsv BIT; DECLARE @cpxmlv BIT; DECLARE @cpsvLength INT = 4000; DECLARE @pUrlLength INT = 255; DECLARE @linkURLLength INT = 512; DECLARE @linkIconLength INT = 255 DECLARE @siteUrlLength INT = 255; DECLARE @persistentLinkLength INT = 255; DECLARE @profCustomWidgetURLLength INT = 255; DECLARE @localBatchProfNoTable TABLE ( ProfNo INT ); DECLARE @localBatchCustNoTable TABLE ( CustNo INT, CPSV BIT, CPXMLV BIT ); PRINT 'Update profile level parameters.' DECLARE profile_level_cursor CURSOR STATIC FOR SELECT P.ProfNo, P.CustID, P.GroupID, P.ProfID FROM dbo.Profile P WITH(NOLOCK) WHERE EXISTS ( SELECT CPSV.TargetNo FROM dbo.CustomParamScalarValues CPSV WITH(NOLOCK) INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON CPSV.ParamValue LIKE ('%http://' + dom.value + '%') INNER JOIN STRING_SPLIT(@paramNoList,',') pn ON CPSV.ParamNo = pn.value WHERE CPSV.ParamLevel = 'P' AND P.ProfNo = CPSV.TargetNo) OPEN profile_level_cursor FETCH NEXT FROM profile_level_cursor INTO @profNo, @custId, @groupId, @profId; WHILE (@@FETCH_STATUS = 0) BEGIN SET @profIndex = 0; WHILE (@profIndex < @batchSize AND @@FETCH_STATUS = 0) BEGIN MERGE INTO BACK.US823320_UpdatedProfile AS backPn USING (SELECT @profNo) as src (ProfNo) ON backPn.ProfNo = src.ProfNo WHEN NOT MATCHED THEN INSERT (ProfNo) VALUES(@profNo); INSERT INTO @localBatchProfNoTable VALUES(@profNo) FETCH NEXT FROM profile_level_cursor INTO @profNo, @custId, @groupId, @profId; PRINT @profNo SET @profIndex = @profIndex + 1; END --2. Modify profile-level parameters BEGIN TRAN SET @TransId = CURRENT_TRANSACTION_ID(); UPDATE CPSV SET CPSV.ParamValue = dbo.ReplaceHttpToHttps(ParamValue, @eisDomainList,@cpsvLength) OUTPUT @updateDate,inserted.TargetNo,inserted.ParamLevel,inserted.ParamNo,deleted.ParamValue, inserted.ParamValue,0 INTO BACK.US796593_SetHTTPStoParameters FROM dbo.CustomParamScalarValues CPSV INNER JOIN @localBatchProfNoTable bt ON CPSV.TargetNo = bt.ProfNo INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON CPSV.ParamValue LIKE ('%http://' + dom.value + '%') INNER JOIN STRING_SPLIT(@paramNoList,',') pn ON CPSV.ParamNo = pn.value WHERE CPSV.ParamLevel = 'P' COMMIT TRAN EXEC [dbo].[UTIL_WaitForReplicationComplete_224] @TransId, @WaitForReplicationSec DELETE FROM @localBatchProfNoTable END CLOSE profile_level_cursor DEALLOCATE profile_level_cursor DELETE FROM @localBatchProfNoTable PRINT 'Profile level parameters have been updated.' PRINT 'Update customer level scalar and XML parameters.' --Get Customer-Level parameters and profiles for updating --Load to the cursor INSERT #CustWithInterfaces SELECT c.CustNo, c.CustID FROM dbo.Customer c WITH(NOLOCK) WHERE EXISTS ( SELECT TOP (1) 1 FROM dbo.Profile P WITH(NOLOCK) INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version LEFT JOIN [BACK].[US823320_UpdatedProfile] updatedProfs WITH(NOLOCK) ON P.ProfNo = updatedProfs.ProfNo WHERE updatedProfs.ProfNo IS NULL AND P.CustID = c.CustID ) INSERT #CustomerLevelParamNos SELECT ParamNo FROM dbo.CustomParamList CPL WITH(NOLOCK) INNER JOIN STRING_SPLIT(@paramNoList,',') pl ON CPL.ParamNo = pl.value WHERE CPL.ParamLevel = 'C' DECLARE customer_level_cursor CURSOR STATIC FOR SELECT CustNo, CustID, MAX(CPSV) as CPSV, MAX(CPXV) as CPXV FROM ( SELECT CustNo, CustID, 1 AS CPSV, 0 AS CPXV FROM #CustWithInterfaces C WHERE EXISTS ( SELECT TOP(1) 1 FROM dbo.CustomParamScalarValues CPSV WITH(NOLOCK) INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON CPSV.ParamValue LIKE ('%http://' + dom.value + '%') INNER JOIN #CustomerLevelParamNos pn ON CPSV.ParamNo = pn.ParamNo WHERE CPSV.ParamLevel = 'C' AND CPSV.TargetNo = C.CustNo ) UNION ALL SELECT CustNo, CustID, 0 AS CPSV, 1 AS CPXV FROM #CustWithInterfaces C WHERE EXISTS ( SELECT TOP(1) 1 FROM dbo.CustomParamXmlValues CPXMLV WITH(NOLOCK) INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON CPXMLV.ParamValue LIKE ('%http://' + dom.value + '%') INNER JOIN #CustomerLevelParamNos pn ON CPXMLV.ParamNo = pn.ParamNo WHERE CPXMLV.ParamLevel = 'C' AND CPXMLV.TargetNo = C.CustNo ) ) cp GROUP BY CustNo, CustID OPEN customer_level_cursor FETCH NEXT FROM customer_level_cursor INTO @custNo,@custId,@cpsv,@cpxmlv; WHILE (@@FETCH_STATUS = 0) BEGIN SET @custIndex = 0; WHILE (@custIndex < @batchSize AND @@FETCH_STATUS = 0) BEGIN MERGE INTO BACK.US823320_UpdatedProfile AS backPn USING ( SELECT ProfNo FROM dbo.Profile P INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version WHERE P.CustID = @custId) as src(ProfNo) ON backPn.ProfNo = src.ProfNo WHEN NOT MATCHED THEN INSERT (ProfNo) VALUES(src.ProfNo); INSERT INTO @localBatchCustNoTable VALUES(@custNo,@cpsv,@cpxmlv) FETCH NEXT FROM customer_level_cursor INTO @custNo,@custId,@cpsv,@cpxmlv; PRINT @custNo SET @custIndex = @custIndex + 1; END BEGIN TRAN SET @TransId = CURRENT_TRANSACTION_ID(); UPDATE CPSV SET CPSV.ParamValue = dbo.ReplaceHttpToHttps(ParamValue, @eisDomainList, @cpsvLength) OUTPUT @updateDate,inserted.TargetNo,inserted.ParamLevel,inserted.ParamNo,deleted.ParamValue, inserted.ParamValue,0 INTO BACK.US796593_SetHTTPStoParameters FROM dbo.CustomParamScalarValues CPSV INNER JOIN @localBatchCustNoTable bt ON CPSV.TargetNo = bt.CustNo AND bt.CPSV = 1 INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON CPSV.ParamValue LIKE ('%http://' + dom.value + '%') INNER JOIN #CustomerLevelParamNos pn ON CPSV.ParamNo = pn.ParamNo WHERE CPSV.ParamLevel = 'C' UPDATE CPXMLV SET CPXMLV.ParamValue = dbo.ReplaceHttpToHttps(ParamValue, @eisDomainList, NULL) OUTPUT @updateDate,inserted.TargetNo,inserted.ParamLevel,inserted.ParamNo,deleted.ParamValue, inserted.ParamValue,0 INTO BACK.US796593_SetHTTPStoXmlParameters FROM dbo.CustomParamXmlValues CPXMLV INNER JOIN @localBatchCustNoTable bt ON CPXMLV.TargetNo = bt.CustNo AND bt.CPXMLV = 1 INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON CPXMLV.ParamValue LIKE ('%http://' + dom.value + '%') INNER JOIN #CustomerLevelParamNos pn ON CPXMLV.ParamNo = pn.ParamNo WHERE CPXMLV.ParamLevel = 'C' COMMIT TRAN EXEC [dbo].[UTIL_WaitForReplicationComplete_224] @TransId, @WaitForReplicationSec DELETE FROM @localBatchCustNoTable END CLOSE customer_level_cursor DEALLOCATE customer_level_cursor DELETE FROM @localBatchCustNoTable PRINT 'Customer level scalar and XML parameters have been updated.' PRINT 'Update Profile table field URL.' DECLARE profile_cursor CURSOR STATIC FOR SELECT P.ProfNo, P.CustID, P.GroupID, P.ProfID FROM dbo.Profile P WITH(NOLOCK) INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON P.URL LIKE ('%http://' + dom.value + '%') OPEN profile_cursor FETCH NEXT FROM profile_cursor INTO @profNo, @custId, @groupId, @profId; WHILE (@@FETCH_STATUS = 0) BEGIN SET @profIndex = 0; WHILE (@profIndex < @batchSize AND @@FETCH_STATUS = 0) BEGIN MERGE INTO BACK.US823320_UpdatedProfile AS backPn USING (SELECT @profNo) as src (ProfNo) ON backPn.ProfNo = src.ProfNo WHEN NOT MATCHED THEN INSERT (ProfNo) VALUES(@profNo); INSERT INTO @localBatchProfNoTable VALUES(@profNo) FETCH NEXT FROM profile_cursor INTO @profNo, @custId, @groupId, @profId; PRINT @profNo SET @profIndex = @profIndex + 1; END BEGIN TRAN SET @TransId = CURRENT_TRANSACTION_ID(); UPDATE P SET P.URL = dbo.ReplaceHttpToHttps(URL, @eisDomainList, @pUrlLength) OUTPUT @updateDate, inserted.ProfNo, deleted.URL, inserted.URL, 0 INTO BACK.US796593_SetHttpsToProfileUrl FROM dbo.Profile P INNER JOIN @localBatchProfNoTable bt ON P.ProfNo = bt.ProfNo INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON P.URL LIKE ('%http://' + dom.value + '%') COMMIT TRAN EXEC [dbo].[UTIL_WaitForReplicationComplete_224] @TransId, @WaitForReplicationSec DELETE FROM @localBatchProfNoTable END DELETE FROM @localBatchProfNoTable CLOSE profile_cursor DEALLOCATE profile_cursor PRINT 'Profile table field URL have been updated.' PRINT 'Update ProfCustomWidgets table fields CustomHTML and URL.' DECLARE profcustomwidget_cursor CURSOR STATIC FOR SELECT P.ProfNo, P.CustID, P.GroupID, P.ProfID FROM dbo.ProfCustomWidgets PW WITH(NOLOCK) INNER JOIN dbo.Profile P WITH(NOLOCK) ON PW.ProfNo = P.ProfNo INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON PW.CustomHTML LIKE ('%http://' + dom.value + '%') OR PW.URL LIKE ('%http://' + dom.value + '%') OPEN profcustomwidget_cursor FETCH NEXT FROM profcustomwidget_cursor INTO @profNo, @custId, @groupId, @profId; WHILE (@@FETCH_STATUS = 0) BEGIN SET @profIndex = 0; WHILE (@profIndex < @batchSize AND @@FETCH_STATUS = 0) BEGIN MERGE INTO BACK.US823320_UpdatedProfile AS backPn USING (SELECT @profNo) as src (ProfNo) ON backPn.ProfNo = src.ProfNo WHEN NOT MATCHED THEN INSERT (ProfNo) VALUES(@profNo); INSERT INTO @localBatchProfNoTable VALUES(@profNo) FETCH NEXT FROM profcustomwidget_cursor INTO @profNo, @custId, @groupId, @profId; PRINT @profNo SET @profIndex = @profIndex + 1; END BEGIN TRAN SET @TransId = CURRENT_TRANSACTION_ID(); UPDATE PW SET PW.CustomHTML = dbo.ReplaceHttpToHttps(PW.CustomHTML, @eisDomainList, NULL), PW.URL = dbo.ReplaceHttpToHttps(PW.URL, @eisDomainList, @profCustomWidgetURLLength) OUTPUT @updateDate, inserted.ProfNo, deleted.CustomHTML, inserted.CustomHTML, deleted.URL, inserted.URL, 0 INTO BACK.US796593_ProfCustomWidgets FROM dbo.ProfCustomWidgets PW INNER JOIN @localBatchProfNoTable bt ON PW.ProfNo = bt.ProfNo INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON PW.CustomHTML LIKE ('%http://' + dom.value + '%') OR PW.URL LIKE ('%http://' + dom.value + '%') COMMIT TRAN EXEC [dbo].[UTIL_WaitForReplicationComplete_224] @TransId, @WaitForReplicationSec DELETE FROM @localBatchProfNoTable END CLOSE profcustomwidget_cursor DEALLOCATE profcustomwidget_cursor PRINT 'ProfCustomWidgets table fields CustomHTML and URL have beem updated.' PRINT 'Update ProfOtherServiceLinks table fields LinkIcon and LinkURL.' DELETE FROM @localBatchProfNoTable DECLARE profotherservicelinks_cursor CURSOR STATIC FOR SELECT P.ProfNo, P.CustID, P.GroupID, P.ProfID FROM dbo.ProfOtherServiceLinks POSL WITH(NOLOCK) INNER JOIN dbo.Profile P WITH(NOLOCK) ON POSL.ProfNo = P.ProfNo INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON POSL.LinkURL LIKE ('%http://' + dom.value + '%') OR POSL.LinkIcon LIKE ('%http://' + dom.value + '%') OPEN profotherservicelinks_cursor FETCH NEXT FROM profotherservicelinks_cursor INTO @profNo, @custId, @groupId, @profId; WHILE (@@FETCH_STATUS = 0) BEGIN SET @profIndex = 0; WHILE (@profIndex < @batchSize AND @@FETCH_STATUS = 0) BEGIN MERGE INTO BACK.US823320_UpdatedProfile AS backPn USING (SELECT @profNo) as src (ProfNo) ON backPn.ProfNo = src.ProfNo WHEN NOT MATCHED THEN INSERT (ProfNo) VALUES(@profNo); INSERT INTO @localBatchProfNoTable VALUES(@profNo) FETCH NEXT FROM profotherservicelinks_cursor INTO @profNo, @custId, @groupId, @profId; PRINT @profNo SET @profIndex = @profIndex + 1; END BEGIN TRAN SET @TransId = CURRENT_TRANSACTION_ID(); UPDATE POSL SET POSL.LinkIcon = dbo.ReplaceHttpToHttps(LinkIcon, @eisDomainList, @linkIconLength), POSL.LinkURL = dbo.ReplaceHttpToHttps(LinkURL, @eisDomainList, @linkURLLength) OUTPUT @updateDate, inserted.ProfNo, deleted.LinkURL,inserted.LinkURL,deleted.LinkIcon, inserted.LinkIcon, 0 INTO BACK.US796593_ProfOtherServiceLinks FROM dbo.ProfOtherServiceLinks POSL INNER JOIN @localBatchProfNoTable bt ON POSL.ProfNo = bt.ProfNo INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON POSL.LinkURL LIKE ('%http://' + dom.value + '%') OR POSL.LinkIcon LIKE ('%http://' + dom.value + '%') COMMIT TRAN EXEC [dbo].[UTIL_WaitForReplicationComplete_224] @TransId, @WaitForReplicationSec DELETE FROM @localBatchProfNoTable END DELETE FROM @localBatchProfNoTable CLOSE profotherservicelinks_cursor DEALLOCATE profotherservicelinks_cursor PRINT 'ProfOtherServiceLinks table fields LinkIcon and LinkURL have been updated.' PRINT 'Update InterfaceVersion table fields SiteURL and PersistentLinkURL.' UPDATE IV SET IV.SiteURL = dbo.ReplaceHttpToHttps(SiteURL,@eisDomainList, @siteUrlLength), IV.PersistentLinkURL = dbo.ReplaceHttpToHttps(PersistentLinkURL,@eisDomainList, @persistentLinkLength) OUTPUT @updateDate, inserted.InterfaceID, inserted.Version, deleted.SiteURL,inserted.SiteURL, deleted.PersistentLinkURL, inserted.PersistentLinkURL, 0 INTO BACK.US796593_InterfaceVersion FROM dbo.InterfaceVersion IV INNER JOIN @InterfaceVersion IVParam ON IV.InterfaceID = IVParam.InterfaceID AND IV.Version = IVParam.Version INNER JOIN STRING_SPLIT(@eisDomainList,',') dom ON IV.SiteURL LIKE ('%http://' + dom.value + '%') OR IV.PersistentLinkURL LIKE ('%http://' + dom.value + '%') PRINT 'InterfaceVersion table fields SiteURL and PersistentLinkURL have been updated.' --Sending notifications PRINT 'Sending notifications.' DECLARE @notifyProfTriplet AS ProfileTripletType INSERT INTO @notifyProfTriplet SELECT P.CustID, P.GroupID, P.ProfID FROM BACK.US823320_UpdatedProfile back INNER JOIN dbo.Profile P ON back.ProfNo = P.ProfNo INNER JOIN @InterfaceVersion IV ON P.InterfaceID = IV.InterfaceID AND P.Version = IV.Version EXEC UTIL_HttpsSendNotifyRequest @notifyProfTriplet PRINT 'Notifications have been send.' DROP TABLE #CustomerLevelParamNos DROP TABLE #CustWithInterfaces END TRY BEGIN CATCH IF(@@TRANCOUNT > 0) ROLLBACK TRAN DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR(@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseSortOptions_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION Delete dbs from [dbo].[DbSort] dbs join #TempDbListTable t on dbs.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbSort] Select t.UpperDbVerNo AS DbVerNo, SortID, SortName, SortField, SeqNo, Hide From [dbo].[DbSort] dbs join #TempDbListTable t on dbs.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try Begin catch IF @@Trancount > 0 ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End catch END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceDocType_77](@UserID nvarchar(20), @UserIP varchar(30), @IntfDocTypeNo int,@SortOption varchar(50), @SearchImage varchar(255), @ResultImage varchar(255), @DefaultValue bit, @Caption nvarchar(255), @MouseOverText nvarchar(255), @LangCode varchar(10)) AS BEGIN DECLARE @GlobalSortOption varchar(50) DECLARE @GlobalSearchImage varchar(255) DECLARE @GlobalResultImage varchar(255) DECLARE @GlobalCaption nvarchar(255) DECLARE @GlobalMouseOverText nvarchar(255) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @DocTypeID varchar(10) SELECT @GlobalSortOption=dtl.SortOption, @GlobalSearchImage=dtl.SearchImage, @GlobalResultImage=dtl.ResultImage, @GlobalCaption=dtc.Caption, @GlobalMouseOverText=dtc.MouseOverText, @InterfaceID=idt.InterfaceID,@Version=idt.Version,@DocTypeID=dtl.DocTypeID FROM [dbo].[InterfaceDocType] idt INNER JOIN [dbo].[DocTypeList] dtl ON idt.DocTypeNo=dtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo WHERE idt.IntfDocTypeNo=@IntfDocTypeNo AND dtc.LangCode=@LangCode IF @GlobalSortOption=@SortOption SET @SortOption=null IF @GlobalSearchImage=@SearchImage SET @SearchImage=null IF @GlobalResultImage=@ResultImage SET @ResultImage=null -- IF @GlobalCaption=@Caption -- SET @Caption=null -- IF @GlobalMouseOverText=@MouseOverText -- SET @MouseOverText=null BEGIN TRANSACTION UPDATE [dbo].[InterfaceDocType] SET [dbo].[InterfaceDocType].[SortOption]=@SortOption, [dbo].[InterfaceDocType].[SearchImage]=@SearchImage, [dbo].[InterfaceDocType].[ResultImage]=@ResultImage ,[dbo].[InterfaceDocType].[DefValue]=@DefaultValue WHERE [dbo].[InterfaceDocType].[IntfDocTypeNo]=@IntfDocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @Caption IS NULL AND @MouseOverText IS NULL DELETE FROM [dbo].[InterfaceDocTypeCaption] WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo]=@IntfDocTypeNo AND [dbo].[InterfaceDocTypeCaption].[LangCode]=@LangCode ELSE BEGIN IF EXISTS(SELECT 1 FROM [dbo].[InterfaceDocTypeCaption] WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo]=@IntfDocTypeNo AND [dbo].[InterfaceDocTypeCaption].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceDocTypeCaption] SET [dbo].[InterfaceDocTypeCaption].[Caption]=@Caption,[dbo].[InterfaceDocTypeCaption].[MouseOverText]=@MouseOverText WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo]=@IntfDocTypeNo AND [dbo].[InterfaceDocTypeCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceDocTypeCaption] ([dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo],[dbo].[InterfaceDocTypeCaption].[LangCode],[dbo].[InterfaceDocTypeCaption].[Caption],[dbo].[InterfaceDocTypeCaption].[MouseOverText]) VALUES (@IntfDocTypeNo,@LangCode,@Caption,@MouseOverText) END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Update Interface DocTypes', @InterfaceID,@Version, @DocTypeID COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetStartPageForToolbarItems_100](@DbVerNo int) RETURNS nvarchar(max) BEGIN ----------------------------------------------------------- -- Create in memory work table. ----------------------------------------------------------- DECLARE @ToolbarSPages TABLE (FeatureNo int, ShowFlag int, StartPageID varchar(30), StartPageName nvarchar(100)) DECLARE @FeatureCategory varchar(20) Set @FeatureCategory = 'lpt' ----------------------------------------------------------- -- Gather StartPageNames from the features linked to the database ----------------------------------------------------------- -- Note : Use Toolbar ID (FeatureName) as Startpage ID INSERT INTO @ToolbarSPages SELECT fl.FeatureNo, FieldValueXml.query('fields/field[@name="EnabledForStartPage"]').value('.', 'int'), fl.FeatureName, FieldValueXml.query('fields/field[@name="StartPageName"]').value('.', 'varchar(100)') FROM [dbo].[FeatureValues] fv inner join [dbo].[DbFeature] df on (df.FeatureNo=fv.FeatureNo) inner join [dbo].[FeatureList] fl on (fl.FeatureNo=df.FeatureNo) WHERE df.DbVerNo=@DbVerNo and fl.Category = @FeatureCategory -- landing pages for toolbar items ----------------------------------------------------------- -- Prepare the return data ----------------------------------------------------------- DECLARE @RetVal nvarchar(max) SET @RetVal='' SELECT @RetVal = @RetVal + '- ' FROM ( SELECT StartPageName,StartPageID FROM @ToolbarSPages Where ShowFlag = 1 -- select the ones which are enabled to show on the page ) a ORDER BY [a].[StartPageID] RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerInfo_70] (@CustID varchar(10)) AS BEGIN SELECT [dbo].[Customer].[CustName], [dbo].[Customer].[CustType],[dbo].[Customer].[MarketID],[dbo].[Customer].[Consortium], DefLangCode=dbo.EAIF_GetCustomParamScalarValue_70('defLangCode','all','all',[dbo].[Customer].[MarketID], dbo.EAIF_CustTypeToSTMode_70([dbo].[Customer].[CustType]),[dbo].[Customer].[CustNo],'C') FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAIP_DeleteContentFilterListByID_181](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterListId varchar(25)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[ContentFilterList] WHERE [dbo].[ContentFilterList].[ContentFilterListID]=LTRIM(RTRIM(@ContentFilterListId)) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Content Filter List','Delete Filter List', @ContentFilterListId COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetDerivedCustomLinkUpdateRequestsByStatus_171](@SystemLinkUpdateID INT, @Status char(1), @TopN INT) AS BEGIN DECLARE @ParamNo INT SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='customerCustomLink' SELECT TOP (@TopN) [dlus].[DerivedLinkUpdateStatusID], [dlus].[DerivedLinkID], [dlus].[CustID], cpxv.ParamValue FROM dbo.DerivedLinkUpdateStatus dlus JOIN dbo.CustomParamXmlValues cpxv ON dlus.DerivedLinkID=cpxv.ItemName AND cpxv.ParamNo=@ParamNo AND cpxv.ParamLevel='C' WHERE [dlus].[SystemLinkUpdateStatusID]=@SystemLinkUpdateID AND [dlus].[UpdateStatus]=@Status ORDER BY [dlus].[DerivedLinkUpdateStatusID] END
CREATE PROCEDURE [dbo].[EAUI_RemoveInterfaceToolbarItemDatabase_77] (@UserID nvarchar(20),@UserIP varchar(30), @IntfToolbarItem int, @DbVerNo int)AS BEGIN DECLARE @ItemName varchar(10) DECLARE @Interface varchar(30) DECLARE @Db varchar(30) SELECT @Interface=[dbo].[InterfaceToolbar].[InterfaceID]+','+[dbo].[InterfaceToolbar].[Version], @ItemName=[dbo].[InterfaceToolbar].[ItemName] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem SELECT @Db=[dbo].[DbList].[DbName]+','+[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION DELETE [dbo].[InterfaceToolbarDb] WHERE [dbo].[InterfaceToolbarDb].[IntfToolbarItem]=@IntfToolbarItem AND [dbo].[InterfaceToolbarDb].[DbVerNo]=@DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Remove ToolbarItem database', @Interface ,@ItemName, @Db COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EACOPY_GetNewAuthorityDbName_99](@CopyFromDbName varchar(10), @CopyToDbName varchar(10), @AuthDbName varchar(10)) RETURNS varchar(20) AS BEGIN -- keeping it to varchar(20) so it can be used in validation DECLARE @CopyToAuthDbName varchar(20); -- If @AuthDbName starts with @CopyFromDbName then remove prefix -- and always prefix with CopyToDbName -- function will only be used for DbType 2 and 7 IF (CHARINDEX(@CopyFromDbName, @AuthDbName) = 1) SELECT @CopyToAuthDbName = @CopyToDbName + RIGHT(@AuthDbName,LEN(@AuthDbName)- LEN(@CopyFromDbName)); ELSE SELECT @CopyToAuthDbName = STUFF(@AuthDbName, 1, 0, @CopyToDbName); RETURN @CopyToAuthDbName; END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbBrowseOption_76] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @OptionNo int ) AS BEGIN DECLARE @OptionId varchar(20) DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @OptionId=[dbo].[BrowseOptionList].[BrowseOptionId] FROM [dbo].[BrowseOptionList] WHERE [dbo].[BrowseOptionList].[BrowseOptionNo] = @OptionNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'BrowseOptions', 'Delete DbBrowse Option', @DbName, @DbLabel, @OptionID DELETE FROM [dbo].[DbBrowseOptionCaption] WHERE [dbo].[DbBrowseOptionCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbBrowseOptionCaption].[BrowseOptionNo]=@OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbBrowseOption] WHERE [dbo].[DbBrowseOption].[DbVerNo]=@DbVerNo AND [dbo].[DbBrowseOption].[BrowseOptionNo]=@OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyProfileDbGroupsDatabases_104]( @SrcProfNo INT, @DstProfNo INT, @NewGroupNo INT, @GroupNo INT, @CustType CHAR(1)) AS BEGIN IF @CustType ='I' OR @CustType='P' BEGIN Declare @DstDbLabel varchar(10) DECLARE @MaxSeqNo INT select @DstDbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@DstProfNo SELECT @MaxSeqNo = ISNULL(MAX([dbo].[ProfDatabase].[SeqNo]), 0) FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo] = @DstProfNo -- first add any database from the group that are not already in the ProfDatabase table -- for the target INSERT INTO [dbo].[ProfDatabase] ([dst].[ProfNo], [dst].[DbVerNo], [dst].[SeqNo], [dst].[Enable], [dst].[SelDefault], [dst].[CustomLimiter], [dst].[CtrlCustID], [dst].[StartPage], [dst].[SugSubject], [dst].[Mode], [dst].[AccessEndDate]) SELECT @DstProfNo, dbl2.DbVerNo, row_number() over(order by src.SeqNo) + @MaxSeqNo, 1, src.SelDefault, 0 as CustomLimiter, src.CtrlCustID, src.StartPage, NULL, 'I', NULL FROM [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] src on pcgd.DbVerNo = src.DbVerNo Join [dbo].[DbList] dbl on src.DbVerNo=dbl.DbVerNo join [dbo].[DbList] dbl2 on dbl.DbName=dbl2.DbName and dbl2.DbLabel=@DstDbLabel LEFT OUTER JOIN [dbo].[ProfDatabase] dst ON dst.DbVerNo = dbl2.DbVerNo AND dst.ProfNo = @DstProfNo WHERE src.ProfNo = @SrcProfNo AND src.Enable = 1 AND dst.DbVerNo IS NULL AND pcgd.ProfNo = @SrcProfNo AND pcgd.GroupNo = @GroupNo -- now insert the databases into ProfCustDbGroup for the target profile -- that are in the group for the source profile (that are not already there for the target -- for the group being added to or created) INSERT [dbo].[ProfCustGroupDb] ([dbo].[ProfCustGroupDb].[ProfNo], [b].[DbVerNo], [dbo].[ProfCustGroupDb].[GroupNo], [b].[SeqNo], [b].[MergeFlag]) SELECT @DstProfNo, a.DbVerNo, @NewGroupNo, b.SeqNo, b.MergeFlag FROM (SELECT dbl.DbVerNo, dbl.DbName FROM [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN [dbo].[ProfCustGroupDb] pcgd ON pcgd.DbVerNo = pdb.DbVerNo and pdb.ProfNo = pcgd.ProfNo WHERE pdb.ProfNo=@DstProfNo and (pcgd.DbVerNo is null OR pcgd.GroupNo != @NewGroupNo) EXCEPT SELECT pcgd.DbVerNo, dbl.DbName from [dbo].[ProfCustGroupDb] pcgd join [dbo].[DbList] dbl on pcgd.DbVerNo=dbl.DbVerNo WHERE pcgd.ProfNo=@DstProfNo and [pcgd].[GroupNo] = @NewGroupNo) a join (SELECT pcgdb.DbVerNo, dbl.DbName, pcgdb.SeqNo, pcgdb.MergeFlag FROM [dbo].[ProfCustGroupDb] pcgdb join [dbo].[ProfDatabase] pdb ON pcgdb.DbVerNo=pdb.DbVerNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo WHERE pdb.ProfNo=@SrcProfNo AND pdb.Enable = 1 and [pcgdb].[GroupNo]=@GroupNo) b ON a.DbName=b.DbName END ELSE IF @CustType ='S' OR @CustType='T' BEGIN -- first insert the databases into ProfCustDbGroup for the target profile -- that are in the group for the source profile (that are not already there for the target -- for the group being added to or created) INSERT [dbo].[ProfCustGroupDb] ([dbo].[ProfCustGroupDb].[ProfNo], [b].[DbVerNo], [dbo].[ProfCustGroupDb].[GroupNo], [b].[SeqNo], [b].[MergeFlag]) SELECT @DstProfNo, b.DbVerNo, @NewGroupNo, b.SeqNo, b.MergeFlag FROM (SELECT pdb.DbVerNo FROM [dbo].[ProfDatabase] pdb LEFT OUTER JOIN [dbo].[ProfCustGroupDb] pcgd ON pcgd.DbVerNo = pdb.DbVerNo and pdb.ProfNo = pcgd.ProfNo WHERE pdb.ProfNo=@DstProfNo and (pcgd.DbVerNo is null or pcgd.GroupNo != @NewGroupNo) EXCEPT SELECT pcgd.DbVerNo from [dbo].[ProfCustGroupDb] pcgd WHERE pcgd.ProfNo=@DstProfNo and [pcgd].[GroupNo] = @NewGroupNo) a join (SELECT pcgdb.DbVerNo, pcgdb.SeqNo, pcgdb.MergeFlag FROM [dbo].[ProfCustGroupDb] pcgdb join [dbo].[ProfDatabase] pdb ON pcgdb.DbVerNo=pdb.DbVerNo WHERE pdb.ProfNo=@SrcProfNo AND pdb.Enable = 1 and [pcgdb].[GroupNo]=@GroupNo) b ON a.DbVerNo=b.DbVerNo -- now make sure the databases that were added to the group for the target profile -- are enabled in ProfDatabase UPDATE dstpd SET [dstpd].[Enable] = 1 FROM [dbo].[ProfCustGroupDb] pcgd JOIN [dbo].[ProfDatabase] dstpd ON pcgd.ProfNo = dstpd.ProfNo AND pcgd.DbVerNo = dstpd.DbVerNo WHERE pcgd.GroupNo = @NewGroupNo END END
CREATE PROCEDURE [dbo].[EAUI_GetProfileCustomWidgetsList_912] (@theProfNo int, @DisplayScreen varchar(20)) AS BEGIN SELECT [dbo].[ProfCustomWidgets].[WidgetID], [dbo].[ProfCustomWidgets].[Label], [dbo].[ProfCustomWidgets].[DefOpen], [dbo].[ProfCustomWidgets].[Show], [dbo].[ProfCustomWidgets].[SeqNo] FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[ProfNo]=@theProfNo and [dbo].[ProfCustomWidgets].[DisplayScreen]=@DisplayScreen Order by [dbo].[ProfCustomWidgets].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_AddFeatureItem_80](@UserID nvarchar(20),@UserIP varchar(15), @FeatureNo int, @ItemXML nvarchar(max)) AS BEGIN DECLARE @Category varchar(20) DECLARE @Name varchar(100) SELECT @Category=[dbo].[FeatureList].[Category], @Name= [dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo DECLARE @ItemNo int DECLARE @SeqNo int SELECT @ItemNo =ISNULL(MAX([dbo].[FeatureValues].[ItemNo])+1,0), @SeqNo=ISNULL(MAX([dbo].[FeatureValues].[SeqNo])+1,0) FROM [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo BEGIN TRANSACTION INSERT INTO [dbo].[FeatureValues] ([dbo].[FeatureValues].[FeatureNo],[dbo].[FeatureValues].[ItemNo] ,[dbo].[FeatureValues].[FieldValueXml],[dbo].[FeatureValues].[SeqNo]) VALUES (@FeatureNo,@ItemNo, @ItemXML,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Add Feature Item', @Category, @Name, @ItemNo COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfFullTextQueryString_80](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @ProfNo int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) IF @ProfNo IS NULL RETURN SELECT dbo.EAIF_GetFullTextQueryString_80(@ProfNo, @CustID, @GroupID) END
CREATE PROCEDURE [dbo].[BLL_GetDBParameters](@ShortDBName varchar(10), @Label varchar(10)) AS BEGIN DECLARE @DbVerNo int, @ISField varchar(2000), @ANField varchar(2000), @DTField varchar(2000) SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@Label SET @ISField=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'dbISSNField') SET @ANField=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'dbANField') SET @DTField=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo,'dbPubDateField') SELECT m.DbVerNo as 'MasterDBList', m.DbName as 'ShortDBName', 0 as 'DbVersion', m.DbType, m.LastUpdateDate as 'LastModified', @ISField as 'ISField', @ANField as 'ANField', @DTField as 'DTField', s.SortID, s.SortName, s.SortField, s.SeqNo FROM [dbo].[DbSort] s INNER JOIN [dbo].[DbList] m ON m.DbVerNo=s.DbVerNo WHERE m.DbVerNo=@DbVerNo AND s.SortField <> '' ORDER BY s.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceName_76](@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10))AS BEGIN SELECT [dbo].[InterfaceLanguage].[InterfaceName] + ' (' + [dbo].[InterfaceLanguage].[InterfaceID] + ' - ' + [dbo].[InterfaceLanguage].[Version] + ')' FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode END
CREATE PROCEDURE [dbo].[EARI_GetCustomerName_70] (@CustID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetCustName_70( @CustID ) END
CREATE PROCEDURE [dbo].[EPCAS_GetSegmentBibMap](@MasterDbList int, @DBVersion int) AS BEGIN SELECT CAST(CHECKSUM(CONVERT(VARCHAR,d.DbVerNo)+':'+ d.SegName) as int) as 'SegCounter', e.DbVerNo as 'DBVersion', e.BibField, e.FieldTag FROM [dbo].[DbBibMap] e INNER JOIN [dbo].[DbSegment] d ON e.DbVerNo = d.DbVerNo AND e.SegName = d.SegName WHERE e.DbVerNo = @MasterDbList ORDER BY d.SeqNo, e.SeqNo END
CREATE Function [dbo].[EAIF_GetMDbSTSDocTypeInterfaceList_90] (@MDbSTSID varchar(10), @DocTypeIDList varchar(max), @DbVerNo int) Returns @Ret Table (MultiDbSTSID varchar(10), Caption nvarchar(255), DbVerNo int, Interface nvarchar(max)) as begin Declare @InterfaceList nvarchar(max) Declare @DocTypeIDDotPos int Declare @DocTypeID varchar(10) Declare @IDTable Table (DocTypeID int) SELECT @DocTypeIDDotPos=charindex('+',@DocTypeIDList) Select @InterfaceList=N'' if @DbVerNo<>0 Begin WHILE @DocTypeIDDotPos <> 0 AND @DocTypeIDDotPos IS NOT NULL BEGIN SELECT @DocTypeID=left(@DocTypeIDList,@DocTypeIDDotPos-1) insert @IDTable (DocTypeID) Values (@DocTypeID) SELECT @DocTypeIDList=substring(@DocTypeIDList,@DocTypeIDDotPos+1,Len(@DocTypeIDList)-@DocTypeIDDotPos) SELECT @DocTypeIDDotPos=charindex('+',@DocTypeIDList) End Select @InterfaceList = @InterfaceList + a.Interface from (Select Distinct il.InterfaceName + N'('+il.InterfaceID+N'-'+il.Version+N')'+N'
' as Interface from [dbo].[InterfaceMultiDbSTSList] imdbsl join [dbo].[InterfaceVersion] iv on imdbsl.InterfaceID=iv.InterfaceID and imdbsl.Version=iv.Version Join [dbo].[InterfaceLanguage] il on iv.InterfaceID=il.InterfaceID and iv.Version=il.Version join [dbo].[InterfaceDocType] idt on iv.InterfaceID=idt.InterfaceID and iv.Version=idt.Version join [dbo].[DbDocType] dbdt on dbdt.DocTypeNo=idt.DocTypeNo join [dbo].[DbList] dbl on dbl.DbVerNo=dbdt.DbVerNo where [imdbsl].[MultiDbSTSID]=@MDbSTSID and [il].[LangCode]='en' and idt.DocTypeNo in (Select DocTypeID from @IDTable) and dbl.DbVerNo=@DbVerNo) a Insert @ret SELECT distinct imdbsl.MultiDbSTSID, [mdbsc].[Caption], @DbVerNo, @InterfaceList--, il.InterfaceID, il.Version, from [dbo].[InterfaceMultiDbSTSList] imdbsl join [dbo].[InterfaceVersion] iv on imdbsl.InterfaceID=iv.InterfaceID and imdbsl.Version=iv.Version Join [dbo].[InterfaceLanguage] il on iv.InterfaceID=il.InterfaceID and iv.Version=il.Version join [dbo].[InterfaceDocType] idt on iv.InterfaceID=idt.InterfaceID and iv.Version=idt.Version join [dbo].[DbDocType] dbdt on dbdt.DocTypeNo=idt.DocTypeNo join [dbo].[DbList] dbl on dbl.DbVerNo=dbdt.DbVerNo join [dbo].[MultiDbSTSCaption] mdbsc on imdbsl.MultiDbSTSID=mdbsc.MultiDBSTSID where imdbsl.MultiDbSTSID=@MDbSTSID and il.LangCode='en' and idt.DocTypeNo in (Select DocTypeID from @IDTable) and dbl.DbVerNo=@DbVerNo --Order by il.InterfaceID, il.Version End Else Begin SELECT @InterfaceList = @InterfaceList + il.InterfaceName +N'('+il.InterfaceID+N'-'+il.Version+N')'+N'
' from [dbo].[InterfaceMultiDbSTSList] imdbsl join [dbo].[InterfaceVersion] iv on imdbsl.InterfaceID=iv.InterfaceID and imdbsl.Version=iv.Version Join [dbo].[InterfaceLanguage] il on iv.InterfaceID=il.InterfaceID and iv.Version=il.Version where [imdbsl].[MultiDbSTSID]=@MDbSTSID and [il].[LangCode]='en' Order by il.InterfaceID, il.Version Insert @ret SELECT distinct imdbsl.MultiDbSTSID, [mdbsc].[Caption], @DbVerNo, @InterfaceList --il.InterfaceID, il.Version, from [dbo].[InterfaceMultiDbSTSList] imdbsl join [dbo].[InterfaceVersion] iv on imdbsl.InterfaceID=iv.InterfaceID and imdbsl.Version=iv.Version Join [dbo].[InterfaceLanguage] il on iv.InterfaceID=il.InterfaceID and iv.Version=il.Version join [dbo].[MultiDbSTSCaption] mdbsc on imdbsl.MultiDbSTSID=mdbsc.MultiDBSTSID where imdbsl.MultiDbSTSID=@MDbSTSID and il.LangCode='en' --Order by il.InterfaceID, il.Version End return end
CREATE PROCEDURE [dbo].[EAUI_GetDbParamXmlItems_70](@DbVerNo int,@ParamName varchar(100) ) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetDbParamNumber_70(@ParamName) SELECT [dbo].[DbParamXmlValues].[ItemName] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseSortOptions_70](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN Begin Try BEGIN TRANSACTION DELETE FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@NewDbVerNo INSERT INTO [dbo].[DbSort] SELECT @NewDbVerNo AS DbVerNo, [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField], [dbo].[DbSort].[SeqNo], [dbo].[DbSort].[Hide] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo]=@OldDbVerNo COMMIT TRANSACTION End Try Begin catch IF @@Trancount > 0 ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End catch END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceExpander_79] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @ControlName varchar(50), @Show bit, @Default bit)AS BEGIN BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[InterfaceExpander] WHERE [dbo].[InterfaceExpander].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceExpander].[Version]= @Version AND [dbo].[InterfaceExpander].[ControlName]=@ControlName) UPDATE [dbo].[InterfaceExpander] SET [dbo].[InterfaceExpander].[ControlShow]=@Show, [dbo].[InterfaceExpander].[ControlDefault]=@Default WHERE [dbo].[InterfaceExpander].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceExpander].[Version]= @Version AND [dbo].[InterfaceExpander].[ControlName]=@ControlName ELSE INSERT INTO [dbo].[InterfaceExpander] ([dbo].[InterfaceExpander].[InterfaceID],[dbo].[InterfaceExpander].[Version],[dbo].[InterfaceExpander].[ControlName],[dbo].[InterfaceExpander].[ControlShow],[dbo].[InterfaceExpander].[ControlDefault]) VALUES (@InterfaceID,@Version,@ControlName,@Show,@Default) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @NewValues varchar(100) SET @NewValues = 'Show:'+ convert(varchar, @Show) + ', Default:'+ convert(varchar, @Default) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceExpanders','Update Expander', @InterfaceID,@Version,@ControlName, @NewValues COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetStartPageName_70(@DbVerNo int) RETURNS nvarchar(max) BEGIN ----------------------------------------------------------- -- Create in memory work tables. ----------------------------------------------------------- DECLARE @GroupedSpgName TABLE (DbNames varchar(255), StartPageName varchar(50)) DECLARE @GroupedSpgName2 TABLE (DbNames varchar(255), StartPageName varchar(50)) ----------------------------------------------------------- -- Gather StartPageNames which are appearing multiple times. ----------------------------------------------------------- INSERT INTO @GroupedSpgName2 SELECT dbo.EAIF_GetContentTypeDbList_70(@DbVerNo, [cnt].[StartPageName]) as 'DbName', [cnt].[StartPageName] FROM [dbo].[DbAuthority] dba INNER JOIN [dbo].[DbList] dbl ON dba.AuthDbVerNo=dbl.DbVerNo INNER JOIN [dbo].[DbContentList] cnt ON dbl.ContentType=cnt.ContentType WHERE dba.MainDbVerNo=@DbVerNo AND dbl.WebClient=1 AND cnt.StartPageName<>'' AND cnt.Description like '%/%' GROUP BY [cnt].[StartPageName] HAVING COUNT(*)>1 ----------------------------------------------------------- -- Now get the StartPageNames which are NOT-IN @GroupedSpgName2 ----------------------------------------------------------- INSERT INTO @GroupedSpgName SELECT [dbl].[DbName], StartPageName = ( CASE WHEN dbo.EAIF_GetDbParamScalarValue_70(dbl.DbVerNo, 'imageAlternateText')='' THEN cnt.StartPageName ELSE dbo.EAIF_GetDbParamScalarValue_70(dbl.DbVerNo, 'imageAlternateText') END ) FROM [dbo].[DbAuthority] dba INNER JOIN [dbo].[DbList] dbl ON dba.AuthDbVerNo=dbl.DbVerNo INNER JOIN [dbo].[DbContentList] cnt ON dbl.ContentType=cnt.ContentType WHERE dba.MainDbVerNo=@DbVerNo AND dbl.WebClient=1 AND cnt.StartPageName NOT IN ( SELECT StartPageName FROM @GroupedSpgName2 ) AND cnt.StartPageName<>'' ----------------------------------------------------------- -- Prepare the return data, using both work tables. ----------------------------------------------------------- DECLARE @RetVal nvarchar(max) SET @RetVal='' SELECT @RetVal = @RetVal + '- ' FROM ( SELECT * FROM @GroupedSpgName UNION ALL SELECT * FROM @GroupedSpgName2 ) a ORDER BY StartPageName RETURN @RetVal END
--sql content merged from file: \StoredProcedures\EAUI_GetCustomerInterfaceList_70.sql CREATE PROCEDURE [dbo].[EAUI_GetCustomerInterfaceList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustType CHAR(1) SELECT @CustType=[dbo].[Customer].[CustType] FROM dbo.Customer WHERE [dbo].[Customer].[CustID]=@CustID IF( @CustType='I' OR @CustType='P' ) BEGIN SELECT [b].[InterfaceID], [b].[Version], [b].[InterfaceName] FROM dbo.InterfaceLanguage b WHERE b.LangCode='en' ORDER BY b.InterfaceName END ELSE BEGIN SELECT b.InterfaceID, b.Version, b.InterfaceName FROM ( SELECT distinct [pi].[InterfaceID], [pi].[Version] FROM EASUPPORT.dbo.CustSubscription cs INNER JOIN EASUPPORT.dbo.ProductPackage pp ON cs.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface pi ON pp.ProductID = pi.ProductID WHERE cs.CustID = @CustID ) a INNER JOIN dbo.InterfaceLanguage b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version WHERE b.LangCode = 'en' ORDER BY b.InterfaceName END END
CREATE PROCEDURE [dbo].[EAIP_DeleteContentFilterListItem_181](@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterItemNo INT) AS BEGIN BEGIN TRY DECLARE @ContentFilterNo INT DECLARE @ContentFilterItemSearchConceptID VARCHAR(10) DECLARE @ContentFilterItemSearchTerm NVARCHAR(2000) SELECT @ContentFilterNo=[dbo].[ContentFilterListItems].[ContentFilterNo], @ContentFilterItemSearchConceptID=[dbo].[ContentFilterListItems].[ContentFilterItemSearchConceptID], @ContentFilterItemSearchTerm=[dbo].[ContentFilterListItems].[ContentFilterItemSearchTerm] FROM [dbo].[ContentFilterListItems] WHERE [dbo].[ContentFilterListItems].[ContentFilterItemNo]=@ContentFilterItemNo BEGIN TRANSACTION DELETE [dbo].[ContentFilterListItems] WHERE [dbo].[ContentFilterListItems].[ContentFilterItemNo]=@ContentFilterItemNo UPDATE [dbo].[ContentFilterList] SET [dbo].[ContentFilterList].[LastUpdatedDate]=GETDATE() WHERE [dbo].[ContentFilterList].[ContentFilterNo]=@ContentFilterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Content Filter List','Delete List Item', @ContentFilterNo, @ContentFilterItemNo, @ContentFilterItemSearchConceptID, @ContentFilterItemSearchTerm COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetDisciplineLimiter_235] @ProfNo INT, @LangCode VARCHAR(10) AS BEGIN IF EXISTS(SELECT TOP 1 1 FROM dbo.ProfDiscipline WHERE ProfNo = @ProfNo) BEGIN DECLARE @searchStringTemplate VARCHAR(20) SELECT @searchStringTemplate = FieldCode FROM [dbo].[StringValueMap] WHERE FieldName = 'DisciplineSearchString' DECLARE @ListItems nvarchar(max) SET @ListItems=N'' SELECT @ListItems = @ListItems + N' '; SELECT 'DISCIPLINE' AS LimiterID, CAST(0 AS smallint) AS ControlSize, 'CHECK_GROUP' AS ControlType, '' AS ControlFormat, 'discipline' AS Caption, 'AND' AS LogicalOpCode, '{val}' AS SearchString, @ListItems AS ControlTemplate, 1 AS Show, NULL AS DefValue, NULL AS DefPosn, NULL AS ColNum, NULL AS searchLimiterGroup, '' AS QueryMaskId, 'n' AS IsListContentsGrouped, NULL AS HelpUrl, null as DbName, null as ScreenID END END' + dbo.EAIF_XmlEncode_241(Caption) + N' ' FROM dbo.ProfDiscipline PD INNER JOIN dbo.DisciplineList DL ON PD.DisciplineNo = DL.DisciplineNo INNER JOIN dbo.DisciplineCaption DC ON DL.DisciplineNo = DC.DisciplineNo WHERE DC.LangCode = @LangCode AND PD.ProfNo = @ProfNo SET @ListItems = @ListItems + N'
CREATE PROCEDURE [dbo].[EAUI_RemoveInterfaceTopic_77] (@UserID nvarchar(20), @UserIP varchar(30),@IntfTopicNo int) AS BEGIN DECLARE @TopicNo int DECLARE @TopicID varchar(10) DECLARE @TopicCaption nvarchar(255) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @TopicNo=it.TopicNo, @InterfaceID=it.InterfaceID, @Version=it.Version, @TopicID=tl.TopicID , @TopicCaption=tc.Caption FROM [dbo].[InterfaceTopic] it INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.IntfTopicNo =@IntfTopicNo AND tc.LangCode = 'en' BEGIN TRANSACTION --delete children topics DELETE FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceTopic].[Version]=@Version AND [dbo].[InterfaceTopic].[TopicNo] IN (SELECT [dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[ParentTopicNo]= @TopicNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --delete main topic DELETE FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[IntfTopicNo]=@IntfTopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Delete Interface Topic', @InterfaceID,@Version,@TopicID, @TopicCaption COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_AppendCtrlCustID_70](@SourceCtrlCustID varchar(255), @SearchCtrlCustID varchar(10)) RETURNS VARCHAR(255) AS BEGIN IF @SourceCtrlCustID = '' OR @SourceCtrlCustID IS NULL RETURN @SearchCtrlCustID /* It is neccessary to suffix ',' in the @SearchCtrlCustID Otherwise CHARINDEX gives wrong result for example of this kind @SourceCtrlCustID = 'eptest11,eptest4,eptest9' @SearchCtrlCustID = 'eptest1' */ IF CHARINDEX( (@SearchCtrlCustID+','), @SourceCtrlCustID+',' )>0 RETURN @SourceCtrlCustID RETURN @SourceCtrlCustID + ',' + @SearchCtrlCustID END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbCluster_89](@UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int, @ClusterId varchar(20), @DbLabel varchar(10)) AS BEGIN DECLARE @AutoAdd Bit, @DbName varchar(20), @clusterNo int, @DbSearchTag nvarchar(5) SELECT @DbName=[dbo].[DbList].[DbName] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo IF(@DbLabel Not In ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT @AutoAdd = [dbo].[ClusterList].[AutoAdd2Db], @clusterNo = [dbo].[ClusterList].[ClustNo] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId] = @ClusterId AND [dbo].[ClusterList].[DbLabel] = @DbLabel IF @@RowCount > 0 BEGIN SELECT @DbSearchTag = [dbo].[DbCluster].[DbSearchTag] FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[ClustNo] =@clusterNo AND [dbo].[DbCluster].[DbVerNo] = @DbVerNo IF (@AutoAdd = 1) BEGIN IF EXISTS (SELECT 1 FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClusterNo) BEGIN select 'auto add exists' UPDATE [dbo].[DbCluster] SET [dbo].[DbCluster].[Enable] = 0 WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClusterNo END ELSE BEGIN --DELETE FROM DbCluster WHERE DbVerNo = @DbVerNo AND ClustNo = @ClusterNo INSERT INTO [dbo].[DbCluster] ([dbo].[DbCluster].[DbVerNo], [dbo].[DbCluster].[ClustNo], [dbo].[DbCluster].[Enable]) VALUES (@DbVerNo, @ClusterNo, 0) END END ELSE IF (@DbSearchTag IS NOT NULL) BEGIN UPDATE [dbo].[DbCluster] SET [dbo].[DbCluster].[Enable] = 0 WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClusterNo END ELSE BEGIN DELETE FROM [dbo].[DbCluster] WHERE [dbo].[DbCluster].[DbVerNo] = @DbVerNo AND [dbo].[DbCluster].[ClustNo] = @ClusterNo END END EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId,@UserIp,@DbName, @DbLabel,'Delete Cluster','Limiter ID:',@ClusterId END
/*Automated Subscription Deletion - Close access to db*/ CREATE PROCEDURE [dbo].[EAIP_CopyProfileToDiffInterface_83](@ProfNo INT, @TrgInterfaceID VARCHAR(10),@TrgVersion VARCHAR(10), @TrgProfID VARCHAR(10),@Result VARCHAR(255) OUTPUT)AS BEGIN /*----------------------------------------------------------- author: S.Freytsis date: 9/29/2006 purpose: to allow copy profile to the different interface limitations: copy provided for the following elements: scalar and xml profile interface parameters that are common both Interfaces; databases (for external customers only databases appropriate for the target Interface are copied); db limiters; local limiters; prof expander; profile clusters -- profile will be copied to the same custid and groupid -------------------------------------------------------------*/ IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@TrgInterfaceID AND [dbo].[InterfaceVersion].[Version]=@TrgVersion) BEGIN SET @Result='Error: interface '+@TrgInterfaceID+','+@TrgVersion+' does not exists.' RETURN 0 END IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo ) BEGIN SET @Result='Source profile does not exists.' RETURN 0 END IF @TrgProfID is null OR @TrgProfID='' SELECT @TrgProfID=[dbo].[InterfaceVersion].[DefProfID] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@TrgInterfaceID AND [dbo].[InterfaceVersion].[Version]=@TrgVersion IF EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo AND [dbo].[Profile].[ProfID]= @TrgProfID ) BEGIN SET @Result='Source and target profiles have the same profID, copy cancelled.' RETURN 0 END DECLARE @CustID VARCHAR(10) DECLARE @GroupID VARCHAR(10) SELECT @CustID=[dbo].[Profile].[CustID], @GroupID=[dbo].[Profile].[GroupID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo IF EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]= @TrgProfID) BEGIN SET @Result='Target profile '+@CustID+'.'+@GroupID+'.'+@TrgProfID+' already exists, copy cancelled.' RETURN 0 END DECLARE @TrgProfNo INT DECLARE @ProfPwd NVARCHAR(10) DECLARE @MarketID VARCHAR(20) DECLARE @STMode CHAR(1) DECLARE @DbLabel VARCHAR(10) DECLARE @ProfName NVARCHAR(100) DECLARE @DefLangCode VARCHAR(10) DECLARE @ParamNo SMALLINT DECLARE @ProfSeqNo SMALLINT --DECLARE @DstProfExists char(1) DECLARE @ProfSpecialParams VARCHAR(1000) SELECT @ProfPwd=[dbo].[Profile].[ProfPwd], @MarketID=[dbo].[Profile].[MarketID], @STMode=[dbo].[Profile].[STMode], @DbLabel=[dbo].[Profile].[DbLabel], @ProfName=[dbo].[Profile].[ProfName], @DefLangCode=[dbo].[Profile].[DefLangCode], @ProfSeqNo=[dbo].[Profile].[SeqNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @DefLangCode=[dbo].[InterfaceVersion].[DefLangCode] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@TrgInterfaceID AND [dbo].[InterfaceVersion].[Version]=@TrgVersion IF @DefLangCode IS NULL SET @DefLangCode='en' BEGIN TRANSACTION EXEC [dbo].[EAIP_AddProfile_70] @CustID, @GroupID, @TrgProfID, @ProfPwd, @TrgInterfaceID,@TrgVersion,@MarketID,@STMode,@DbLabel,@ProfName,@DefLangCode IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in EAIP_AddProfile_70.' RETURN 0 END SELECT @TrgProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@TrgProfID -- copy Interface parameter settings for parameters that are common between interfaces INSERT INTO [dbo].[CustomParamScalarValues] ([sp].[TargetNo],[sp].[ParamLevel],[sp].[ParamNo],[sp].[ParamValue]) SELECT @TrgProfNo,'P', sp.ParamNo, sp.ParamValue FROM [dbo].[CustomParamScalarValues] AS sp INNER JOIN [dbo].[InterfaceParamList] AS ip ON sp.ParamNo=ip.ParamNo WHERE sp.TargetNo=@ProfNo AND ip.InterfaceID=@TrgInterfaceID AND ip.Version=@TrgVersion IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding custom scalar params.' RETURN 0 END INSERT INTO [dbo].[CustomParamXmlValues] ([sp].[TargetNo],[sp].[ParamLevel],[sp].[ParamNo],[sp].[ItemName],[sp].[ParamValue],[sp].[SeqNo]) SELECT @TrgProfNo,'P', sp.ParamNo,sp.ItemName, sp.ParamValue,sp.SeqNo FROM [dbo].[CustomParamXmlValues] AS sp INNER JOIN [dbo].[InterfaceParamList] AS ip ON sp.ParamNo=ip.ParamNo WHERE sp.TargetNo=@ProfNo AND ip.InterfaceID=@TrgInterfaceID AND ip.Version=@TrgVersion IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding custom xml params.' RETURN 0 END --add databases depending on customer type DECLARE @CustType CHAR(1) SELECT @CustType=[dbo].[Customer].[CustType] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID IF @CustType ='I' OR @CustType='P' BEGIN -- Internal or partner INSERT INTO [dbo].[ProfDatabase] ([dbo].[ProfDatabase].[ProfNo],[dbo].[ProfDatabase].[DbVerNo],[dbo].[ProfDatabase].[SeqNo],[dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault], [dbo].[ProfDatabase].[CustomLimiter],[dbo].[ProfDatabase].[CtrlCustID],[dbo].[ProfDatabase].[StartPage],[dbo].[ProfDatabase].[SugSubject],[dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate]) SELECT @TrgProfNo,[dbo].[ProfDatabase].[DbVerNo],[dbo].[ProfDatabase].[SeqNo],[dbo].[ProfDatabase].[Enable],[dbo].[ProfDatabase].[SelDefault], 0 AS CustomLimiter,[dbo].[ProfDatabase].[CtrlCustID],[dbo].[ProfDatabase].[StartPage],[dbo].[ProfDatabase].[SugSubject],[dbo].[ProfDatabase].[Mode], [dbo].[ProfDatabase].[AccessEndDate] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding databases.' RETURN 0 END END ELSE BEGIN EXEC [dbo].[EAIP_AddProfileDatabases_70] @CustID ,@GroupID,@TrgProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding databases.' RETURN 0 END UPDATE a SET [Enable]=b.Enable, a.SeqNo=b.SeqNo, [SelDefault]=b.SelDefault FROM [dbo].[ProfDatabase] AS a INNER JOIN [dbo].[ProfDatabase] AS b ON a.DbVerNo=b.DbVerNo WHERE a.ProfNo=@TrgProfNo AND b.ProfNo=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in updating databases.' RETURN 0 END END --add customized database limiters INSERT INTO [dbo].[ProfDbLimiter2]([tpl].[ProfNo],[tpl].[DbVerNo],[tpl].[IntfScreenNo],[tpl].[LimiterNo],[tpl].[Show],[tpl].[DefValue],[tpl].[SeqNo]) SELECT @TrgProfNo, pd.DbVerNo,tins.IntfScreenNo,pl.LimiterNo,pl.Show,pl.DefValue,pl.SeqNo FROM [dbo].[Profile] AS p INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version INNER JOIN [dbo].[InterfaceScreen] AS tins ON ins.ScreenID=tins.ScreenID INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo=pd.ProfNo INNER JOIN [dbo].[ProfDbLimiter2] AS pl ON pl.IntfScreenNo=ins.IntfScreenNo INNER JOIN [dbo].[ProfDatabase] AS tpd ON pd.DbVerNo=tpd.DbVerNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] tpl ON tpd.ProfNo=tpl.ProfNo AND tpd.DbVerNo=tpl.DbVerNo WHERE p.ProfNo=@ProfNo AND tins.InterfaceID=@TrgInterfaceID AND tins.Version=@TrgVersion AND pd.ProfNo=pl.ProfNo AND pd.DbVerNo=pl.DbVerNo AND tpd.ProfNo=@TrgProfNo AND tpl.LimiterNo IS NULL IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof db limiters.' RETURN 0 END --add customized database limiter captions INSERT INTO [dbo].[ProfDbLimiterCaption2]([plc].[ProfNo],[plc].[DbVerNo],[plc].[IntfScreenNo],[plc].[LimiterNo],[plc].[LangCode],[plc].[Caption]) SELECT @TrgProfNo, pd.DbVerNo,tins.IntfScreenNo,pl.LimiterNo, plc.LangCode, plc.Caption FROM [dbo].[Profile] p INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version INNER JOIN [dbo].[InterfaceScreen] AS tins ON ins.ScreenID=tins.ScreenID INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo=pd.ProfNo INNER JOIN [dbo].[ProfDbLimiter2] AS pl ON pd.ProfNo=pl.ProfNo AND pl.IntfScreenNo=ins.IntfScreenNo AND pd.DbVerNo=pl.DbVerNo INNER JOIN [dbo].[ProfDbLimiterCaption2] AS plc ON pl.ProfNo=plc.ProfNo AND pl.DbVerNo=plc.DbVerNo AND pl.IntfScreenNo=plc.IntfScreenNo AND pl.LimiterNo=plc.LimiterNo WHERE p.ProfNo=@ProfNo AND tins.InterfaceID=@TrgInterfaceID AND tins.Version=@TrgVersion IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof db limiter acptions.' RETURN 0 END INSERT INTO [dbo].[ProfLocalLimiter2] ([pl].[ProfNo],[pl].[IntfScreenNo],[pl].[ColNo],[pl].[IsHidden],[pl].[Show],[pl].[DefValue],[pl].[SeqNo]) SELECT @TrgProfNo,tins.IntfScreenNo,pl.ColNo,pl.IsHidden,pl.Show,pl.DefValue,pl.SeqNo FROM [dbo].[Profile] AS p INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version INNER JOIN [dbo].[InterfaceScreen] AS tins ON ins.ScreenID=tins.ScreenID INNER JOIN [dbo].[ProfLocalLimiter2] AS pl ON p.ProfNo=pl.ProfNo AND pl.IntfScreenNo=ins.IntfScreenNo WHERE p.ProfNo=@ProfNo AND tins.InterfaceID=@TrgInterfaceID AND tins.Version=@TrgVersion IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof local limiters.' RETURN 0 END INSERT INTO [dbo].[ProfLocalLimiterCaption2] ([plc].[ProfNo],[plc].[IntfScreenNo],[plc].[ColNo],[plc].[LangCode],[plc].[Caption]) SELECT @TrgProfNo,tins.IntfScreenNo,pl.ColNo, plc.LangCode, plc.Caption FROM [dbo].[Profile] AS p INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID=ins.InterfaceID AND p.Version=ins.Version INNER JOIN [dbo].[InterfaceScreen] AS tins ON ins.ScreenID=tins.ScreenID INNER JOIN [dbo].[ProfLocalLimiter2] AS pl ON p.ProfNo=pl.ProfNo AND pl.IntfScreenNo=ins.IntfScreenNo INNER JOIN [dbo].[ProfLocalLimiterCaption2] AS plc ON pl.ProfNo=plc.ProfNo AND pl.IntfScreenNo=plc.IntfScreenNo WHERE p.ProfNo=@ProfNo AND tins.InterfaceID=@TrgInterfaceID AND tins.Version=@TrgVersion IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof local limiter captions.' RETURN 0 END INSERT INTO [dbo].[ProfExpander]([dbo].[ProfExpander].[ProfNo],[dbo].[ProfExpander].[ControlName],[dbo].[ProfExpander].[ControlShow],[dbo].[ProfExpander].[ControlDefault]) SELECT @TrgProfNo, [dbo].[ProfExpander].[ControlName],[dbo].[ProfExpander].[ControlShow],[dbo].[ProfExpander].[ControlDefault] FROM [dbo].[ProfExpander] WHERE [dbo].[ProfExpander].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof expanders.' RETURN 0 END INSERT INTO [dbo].[ProfExpanderCaption] SELECT @TrgProfNo, [dbo].[ProfExpanderCaption].[ControlName],[dbo].[ProfExpanderCaption].[LangCode],[dbo].[ProfExpanderCaption].[Caption] FROM [dbo].[ProfExpanderCaption] WHERE [dbo].[ProfExpanderCaption].[ProfNo]=@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof expander captions.' RETURN 0 END INSERT INTO [dbo].[ProfileClusters2]([dbo].[ProfileClusters2].[ProfNo],[dbo].[ProfileClusters2].[ClustNo],[dbo].[ProfileClusters2].[Show],[dbo].[ProfileClusters2].[SeqNo]) SELECT @TrgProfNo,[dbo].[ProfileClusters2].[ClustNo],[dbo].[ProfileClusters2].[Show],[dbo].[ProfileClusters2].[SeqNo] FROM [dbo].[ProfileClusters2] WHERE [dbo].[ProfileClusters2].[ProfNo] =@ProfNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION SET @Result='Error in adding prof clusters.' RETURN 0 END COMMIT TRANSACTION RETURN 1 END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileCustomWidgetsList_97.sql CREATE PROCEDURE dbo.EAUI_GetProfileCustomWidgetsList_97 (@theProfNo int) AS BEGIN SELECT [dbo].[ProfCustomWidgets].[WidgetID], [dbo].[ProfCustomWidgets].[Label], [dbo].[ProfCustomWidgets].[DefOpen], [dbo].[ProfCustomWidgets].[Show], [dbo].[ProfCustomWidgets].[SeqNo] FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[ProfNo]=@theProfNo Order by [dbo].[ProfCustomWidgets].[SeqNo] END
CREATE PROCEDURE [dbo].[EAUI_AddFieldElement_70](@UserID nvarchar(20), @UserIP varchar(15), @FieldElementName varchar(100), @Description nvarchar(255)) AS BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementName]=@FieldElementName) BEGIN INSERT INTO [dbo].[FieldElementList]([dbo].[FieldElementList].[FieldElementName], [dbo].[FieldElementList].[Description]) VALUES(@FieldElementName, @Description) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Field Customization', 'Add Field Element', @FieldElementName, @Description END END
CREATE PROCEDURE [dbo].[EPCS_GetProfileClusterIds_89] (@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10))AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int, @DbLabel varchar(10) SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT @DbLabel = [dbo].[Profile].[DbLabel] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT cl.ClustId ID FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId LEFT OUTER JOIN [dbo].[ProfileClusters2] pc ON pc.ProfNo = @ProfNO AND cl.ClustNo = pc.ClustNo WHERE ISNULL(pc.Show,gc.Show)=1 AND cl.DbLabel = @DbLabel ORDER BY ISNULL(pc.SeqNo,cl.SeqNo) END
CREATE PROCEDURE [dbo].[BLL_GetDBTags](@ShortDBName varchar(10), @Label varchar(10)='live') AS BEGIN SELECT b.DbVerNo, b.DbName, a.FieldTag, a.Description FROM [dbo].[DbFieldTag] a INNER JOIN [dbo].[DbList] b ON a.DbVerNo=b.DbVerNo WHERE b.DbName=@ShortDBName AND b.DbLabel=@Label AND (a.Category=1 OR a.Category=4 OR a.Category=5) ORDER BY a.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceParamDefault_70]( @InterfaceID varchar(10), @Version varchar(10), @ParamNo int) AS BEGIN DECLARE @DefValue nvarchar(2000) SELECT @DefValue = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo SELECT e.MarketID, e.Description, ISNULL(convert(nvarchar(2000),a.DefValue),@DefValue) AS SValue, ISNULL(convert(nvarchar(2000),b.DefValue),@DefValue) AS TValue, CASE WHEN a.DefValue is null THEN '*' ELSE '' END AS SDef, CASE WHEN b.DefValue is null THEN '*' ELSE '' END AS TDef FROM EASUPPORT.dbo.MarketList e LEFT OUTER JOIN (SELECT [dbo].[CustomParamDefaults].[DefValue], [dbo].[CustomParamDefaults].[MarketID] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[STMode]='S' AND [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) a ON e.MarketID=a.MarketID LEFT OUTER JOIN (SELECT [dbo].[CustomParamDefaults].[DefValue], [dbo].[CustomParamDefaults].[MarketID] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[STMode]='T' AND [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) b ON e.MarketID=b.MarketID END
CREATE PROCEDURE [dbo].[EARI_GetCustUdefLabel_70](@CustID varchar(10), @UdefParamName varchar(100)) AS BEGIN SELECT dbo.EAIF_GetCustomerParamScalarValue_70(@CustID, @UdefParamName) as 'UDefLabel' END
CREATE PROCEDURE [dbo].[EPCAS_GetSegmentField](@MasterDbList int, @DBVersion int, @LiveRebuild varchar(10)) AS BEGIN SELECT CAST(CHECKSUM(CONVERT(VARCHAR,d.DbVerNo)+':'+ d.SegName) as int) as 'SegCounter', e.DbVerNo, e.FieldTag, e.IndexType, Category = CASE WHEN (e.Category=4 OR e.Category=5) THEN 1 ELSE e.Category END, e.ThesNumber, e.FieldNumbers FROM [dbo].[DbFieldTag] e INNER JOIN [dbo].[DbSegment] d ON e.DbVerNo = d.DbVerNo AND e.SegName = d.SegName WHERE e.DbVerNo = @MasterDbList ORDER BY d.SeqNo, e.SeqNo END
--sql content merged from file: \Functions\EAIF_GetProfClusterDefToOpen_98.sql Create Function dbo.EAIF_GetProfClusterDefToOpen_98(@ProfNo int) Returns @ClusterTable table (ProfNo int, ClustNo int, DefaultToOpen bit) as Begin /* Business rules state: Return DefaultToOpen column from ProfileClusters2 for given Profile/Cluster if exists. If not return DefaultToOpen from InterfaceClusters for Cluster/InterfaceID/Version for given Profile if exists. If not then return 0. */ declare @InterfaceID varchar(10) declare @Version varchar(10) declare @MarketID varchar(10) declare @STMode char(1) DECLARE @DbLabel varchar(10) select @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @DbLabel = [dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' Insert @ClusterTable select @ProfNo, cl.ClustNo, isnull(isnull(pc.DefaultToOpen, ic.DefaultToOpen),0) DefaultToOpen from [dbo].[ClusterList] cl left outer join [dbo].[ProfileClusters2] pc ON pc.ProfNo = @ProfNo AND cl.ClustNo = pc.ClustNo left outer join [dbo].[InterfaceClusters] ic on ic.InterfaceID=@InterfaceID and ic.Version=@Version and cl.ClustNo=ic.ClustNo WHERE cl.DbLabel = @DbLabel AND dbo.EAIF_GetDbListByClusterAndProfile_89(cl.ClustId, cl.DbLabel, @ProfNo) > N'' return End
CREATE PROCEDURE [dbo].[EAUI_GetDbParamXmlList_70] AS BEGIN SELECT a.ParamNo, b.PromptText FROM [dbo].[DbParamList] a LEFT JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo=b.ParamNo WHERE a.ParamType = 'X' OR a.ParamType='T' END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseTOCs_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION DELETE dbf FROM [dbo].[DbFeature] dbf Join [dbo].[FeatureList] fl on dbf.FeatureNo = fl.FeatureNo AND fl.Category='toc' JOIN #TempDbListTable t on dbf.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbFeature] SELECT t.UpperDbVerNo, dbf.FeatureNo FROM [dbo].[DbFeature] dbf Join [dbo].[FeatureList] fl on dbf.FeatureNo = fl.FeatureNo AND fl.Category='toc' JOIN #TempDbListTable t ON dbf.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceFeatureDetails_77] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @ScreenID varchar(10), @VisibleItemCount varchar(10), @SelectionMode char, @DbDependency bit , @AllowProfAccess bit, @AllowProfEdit bit, @AllowProfAddItem bit ) AS BEGIN DECLARE @aVisibleItemCount int IF LEN(@VisibleItemCount)>0 SET @aVisibleItemCount = CONVERT(int, @VisibleItemCount) ELSE SET @aVisibleItemCount = null BEGIN TRANSACTION UPDATE [dbo].[InterfaceFeatureList] SET [dbo].[InterfaceFeatureList].[ScreenID]=@ScreenID,[dbo].[InterfaceFeatureList].[DbDependant]=@DbDependency,[dbo].[InterfaceFeatureList].[VisibleItemCount]=@aVisibleItemCount,[dbo].[InterfaceFeatureList].[SelectionMode]=@SelectionMode ,[dbo].[InterfaceFeatureList].[AllowProfAccess]=@AllowProfAccess,[dbo].[InterfaceFeatureList].[AllowProfEdit]=@AllowProfEdit,[dbo].[InterfaceFeatureList].[AllowProfItemAdd]=@AllowProfAddItem WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) DECLARE @AllValues varchar (50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo SET @AllValues = @ScreenID+','+ @VisibleItemCount+','+ @SelectionMode+','+CONVERT(varchar,@DbDependency)+','+CONVERT(varchar,@AllowProfAccess)+','+CONVERT(varchar,@AllowProfEdit)+','+CONVERT(varchar,@AllowProfAddItem) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Update Feature', @InterfaceID,@Version,@FeatureName,@AllValues COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_GetSTMode_70(@CustID varchar(10)) RETURNS char(1) AS BEGIN RETURN (SELECT CASE WHEN [dbo].[Customer].[CustType] ='T' THEN 'T' ELSE 'S' END FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerInterfaceListForReports_91](@CustID varchar(10)) AS BEGIN DECLARE @CustType CHAR(1) SELECT @CustType=[dbo].[Customer].[CustType] FROM dbo.Customer WHERE [dbo].[Customer].[CustID]=@CustID IF( @CustType='I' OR @CustType='P' ) BEGIN SELECT [InterfaceID] = [b].[InterfaceID] + '/' + [b].[Version], [b].[Version], [b].[InterfaceName] FROM dbo.InterfaceLanguage b WHERE b.LangCode='en' ORDER BY b.InterfaceName END ELSE BEGIN /*10/17/2008 AW Issue 6709*/ SELECT [InterfaceID] = b.InterfaceID + '/' + b.Version, b.Version, b.InterfaceName FROM ( SELECT distinct [pi].[InterfaceID], [pi].[Version] FROM EASUPPORT.dbo.CustSubscription cs INNER JOIN EASUPPORT.dbo.ProductPackage pp ON cs.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface pi ON pp.ProductID = pi.ProductID WHERE cs.CustID = @CustID ) a INNER JOIN dbo.InterfaceLanguage b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version WHERE b.LangCode = 'en' ORDER BY b.InterfaceName END END
CREATE PROCEDURE [dbo].[EAIP_DeleteContentFilterListItems_181] (@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentFilterListID varchar(25)) AS BEGIN BEGIN TRY DECLARE @ContentFilterNo INT BEGIN TRANSACTION SELECT @ContentFilterNo=[dbo].[ContentFilterList].[ContentFilterNo] FROM dbo.ContentFilterList WHERE [dbo].[ContentFilterList].[ContentFilterListID]=@ContentFilterListID DELETE [dbo].[ContentFilterListItems] WHERE [dbo].[ContentFilterListItems].[ContentFilterNo]=@ContentFilterNo UPDATE [dbo].[ContentFilterList] SET [dbo].[ContentFilterList].[LastUpdatedDate]=GETDATE() WHERE [dbo].[ContentFilterList].[ContentFilterNo]=@ContentFilterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Content Filter List','Delete all List Items', @ContentFilterNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
Create Procedure [dbo].[EAIP_GetDisciplinesList_161] @LangCode VarChar(10) AS Begin If Not Exists (Select 1 From [dbo].[LangList] Where [dbo].[LangList].[LangCode] = @LangCode) Begin RaisError('The Language Code ''%s'' does not exist.', 16,-1, @LangCode) Return End Select dl.DisciplineNo, [dl].[DisciplineCode], ISNULL(dc.Caption, '') Caption, [dl].[SelDefault] [Default], [dl].[Show] From [dbo].[DisciplineList] dl Left Outer Join [dbo].[DisciplineCaption] dc On (dl.DisciplineNo = dc.DisciplineNo AND dc.LangCode = @LangCode) Order By ISNull(dc.Caption, dl.DisciplineCode) End
CREATE PROCEDURE [dbo].[EAUI_RemoveProfileCustomLinks_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LinkList varchar(8000)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Remove Custom Links from a Profile', @ProfLogName DECLARE @ProfParamNo int SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ProfParamNo AND [dbo].[CustomParamXmlValues].[ItemName] IN (select * from dbo.EAIF_GetItemTable_70(@LinkList,'+')) END
CREATE FUNCTION [dbo].[EAIF_BinToInt_70](@Str varchar(2)) RETURNS int AS BEGIN DECLARE @RetVal int DECLARE @iWhole int DECLARE @iRem int DECLARE @cWhole varchar(1) DECLARE @cRem varchar(1) SELECT @cWhole =substring(@Str,1,1), @cRem =substring(@Str,2,1) SELECT @iRem =CASE WHEN @cRem >= '0' AND @cRem <= '9' THEN convert(int,@cRem) WHEN @cRem = 'A' THEN 10 WHEN @cRem = 'B' THEN 11 WHEN @cRem = 'C' THEN 12 WHEN @cRem = 'D' THEN 13 WHEN @cRem = 'E' THEN 14 WHEN @cRem = 'F' THEN 15 END SELECT @iWhole =CASE WHEN @cWhole >= '0' AND @cWhole <= '9' THEN convert(int,@cWhole) WHEN @cWhole = 'A' THEN 10 WHEN @cWhole = 'B' THEN 11 WHEN @cWhole = 'C' THEN 12 WHEN @cWhole = 'D' THEN 13 WHEN @cWhole = 'E' THEN 14 WHEN @cWhole = 'F' THEN 15 END SET @RetVal =@iWhole*16+@iRem RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbFieldGroup_70]( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @FieldGroupNo int) AS BEGIN DELETE FROM [dbo].[DbFieldGroup] WHERE [dbo].[DbFieldGroup].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroup].[FieldGroupNo]=@FieldGroupNo /* Log the Transaction */ DECLARE @DbName varchar(20), @DbLabel varchar(10), @FieldGroupId varchar(100) SELECT @DbName=[dbo].[DbList].[DbName], @DbLabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @FieldGroupId=[dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP, @DbName, @DbLabel, 'Field Customization', 'Delete Group:', @FieldGroupId END
CREATE PROCEDURE [dbo].[EAIP_CopySearchThemeCaptions_83](@ThemeID varchar(20), @CaptionLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(max) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim nchar(3) SET @LangDelim =N'|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList)) DELETE FROM [dbo].[SearchThemeCaption] WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[SearchThemeCaption]([dbo].[SearchThemeCaption].[ThemeID],[dbo].[SearchThemeCaption].[LangCode],[dbo].[SearchThemeCaption].[Caption]) SELECT @ThemeID, cp.Value, ISNULL(cp.Item,N'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp END
Create PROCEDURE [dbo].[EAUI_GetProfileDatabaseList_133] (@ProfNo int, @ContentType nvarchar(50)=null) AS BEGIN DECLARE @IndexBrowseParamNo INT DECLARE @RefSearchParamNo INT DECLARE @GroupDbs BIT DECLARE @ParamNo INT DECLARE @InterfaceID VARCHAR(10) DECLARE @Version VARCHAR(10) DECLARE @IsPrimaryDbAllowedOnIntf BIT DECLARE @CustType CHAR(1) DECLARE @ProfID VARCHAR(10) DECLARE @CustNo INT DECLARE @DbLabel VARCHAR(10) SELECT @CustType = [b].[CustType] , @ProfID = a.ProfID , @CustNo = b.CustNo , @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo = @ProfNo DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) --DECLARE @ProfDbsForIntCustomer Table (DbVerNo int,SeqNo int) IF ( @CustType = 'I' OR @CustType = 'P' ) BEGIN -- Get DBs For Internal Customers. These customers do not have ProfDatabases to begin with. --INSERT INTO @ProfDbsForIntCustomer -- ( DbVerNo , -- SeqNo -- ) -- EXEC EAUI_GetProfileAddDatabaseList_102 @ProfNo DECLARE @MaxSeqNo INT SELECT @MaxSeqNo = MAX([dbo].[ProfDatabase].[SeqNo]) FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo] = @ProfNo SELECT @MaxSeqNo = ISNULL(@MaxSeqNo, 0) --SELECT @CustType = CustType , -- @CustNo = CustNo , -- @DbLabel = DbLabel --FROM [Profile] a , -- Customer b --WHERE a.ProfNo = @ProfNo -- AND a.CustID = b.CustID IF ( @CustType = 'I' ) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT DISTINCT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' --AND a.DbVerNo NOT IN ( SELECT -- DbVerNo -- FROM -- ProfDatabase -- WHERE ProfNo = @ProfNo -- ) AND pd.DbVerNo IS NULL AND a.SourceType <> 'M' ELSE IF ( @CustType = 'P' ) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT DISTINCT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL --AND a.DbVerNo NOT IN ( SELECT -- DbVerNo -- FROM -- ProfDatabase -- WHERE -- ProfNo = @ProfNo ) --SELECT DbVerNo, @MaxSeqNo + Id AS SeqNo --FROM @WRK_DBs --WHERE DbVerNo > 0 END DECLARE @ProfDB TABLE ( GroupNo INT , GroupHeading VARCHAR(MAX) , SubGroupNo INT , RowNo INT , SeqNo INT , DbVerNo INT PRIMARY KEY , DisplayName NVARCHAR(MAX) , DbName VARCHAR(10) , SelDefault BIT , StartPage VARCHAR(20) , StartPageTemplate VARCHAR(MAX) , Mode VARCHAR(10) , SourceType CHAR(1) , DbFlag VARCHAR(3) , SortField1 CHAR(1) , Enable BIT ) SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'groupProfDatabases' SELECT @GroupDbs = [dbo].[CustomParamScalarValues].[ParamValue] FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel] = 'P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @paramNo SELECT @InterfaceID = [dbo].[Profile].[InterfaceID] , @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT @IsPrimaryDbAllowedOnIntf = ISNULL([dbo].[InterfaceVersion].[AllowPrimaryDatabases], 0) FROM [dbo].[InterfaceVersion] WITH ( NOLOCK ) WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [cpd].[DefValue] FROM [dbo].[CustomParamDefaults] cpd JOIN [dbo].[Profile] p ON cpd.InterfaceID = p.InterfaceID AND cpd.Version = p.Version AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode WHERE p.ProfNo = @ProfNo AND [cpd].[ParamNo] = @ParamNo IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] = @ParamNo END END IF @GroupDbs = 1 BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND [b].[SourceType] <> 'M' AND [b].[DbName] <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , a.SelDefault , a.StartPage , -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) '' AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode , b.SourceType AS SourceType , 'R' AS DbFlag , 'Z' AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' WHERE a.ProfNo = @ProfNo -- AND a.Enable = 1 AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND ( a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate, GETDATE()) < 0 ) AND ( cedl.DbVerNo IS NULL ) -- UNION ALL -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND SourceType <> 'M' AND DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.Id + @MaxSeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) '' AS 'StartPageTemplate' , 'Internal' AS Mode , b.SourceType AS SourceType , 'R' AS DbFlag , 'Z' AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo WHERE a.DbVerNo > 0 UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, DisplayName ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 1, 2, 3, 4 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, SeqNo ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 5 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo END ELSE BEGIN INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT ISNULL(ISNULL(ip.SeqNo, a.SeqNo), 1) SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , a.SelDefault , a.StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbList] b ON ( b.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' WHERE a.ProfNo = @ProfNo -- AND a.Enable = 1 AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND ( a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate, GETDATE()) < 0 ) AND ( cedl.DbVerNo IS NULL ) UNION ALL -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. SELECT a.Id + @MaxSeqNo AS SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , 'Internal' AS Mode , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) -- ORDER BY SortField1,SeqNo IF EXISTS ( SELECT 1 FROM @ProfDB WHERE DbFlag = 'P' ) UPDATE @ProfDB SET [pdb1].[DbFlag] = 'PM' -- Multiple Primary Databases FROM @ProfDB pdb1 WHERE [pdb1].[DbFlag] = 'P' END IF @ContentType IS null SELECT GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable FROM @ProfDB ORDER BY GroupNo , SubGroupNo , RowNo , SortField1 , SeqNo ELSE BEGIN DECLARE @ContentTypeID INT SELECT @ContentTypeID=[dbo].[DbContentList].[ContentType] FROM dbo.DbContentList WHERE [dbo].[DbContentList].[Description]=@ContentType SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , pdb.DisplayName , pdb.DbName , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , pdb.SourceType , [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo AND dbl.ContentType=@ContentTypeID order by [pdb].[GroupNo], [pdb].[SubGroupNo], [pdb].[RowNo], [pdb].[SortField1],[pdb].[SeqNo] End END
CREATE PROCEDURE [dbo].[EAUI_AddFieldGroup_70](@UserID nvarchar(20), @UserIP varchar(15), @FieldGroupID varchar(100), @Description nvarchar(255)) AS BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupId]=@FieldGroupID) BEGIN INSERT INTO [dbo].[FieldGroupList]([dbo].[FieldGroupList].[FieldGroupId], [dbo].[FieldGroupList].[Description]) VALUES(@FieldGroupId, @Description) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Field Customization', 'Add Field Group', @FieldGroupID, @Description END END
CREATE PROCEDURE [dbo].[EPCS_GetProfileClusters_80] (@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10))AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int, @DbLabel varchar(10) SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT @DbLabel = [dbo].[Profile].[DbLabel] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' SELECT cl.ClustId ID, gc.XPath, gc.XPathEnh, gc.Tag, gc.MinDisplay, gc.MaxDisplay, dbo.EAIF_GetClusterCaptions_80(cl.ClustId) as Captions FROM [dbo].[GlobalCluster] gc INNER JOIN [dbo].[ClusterList] cl ON gc.ID = cl.ClustId LEFT OUTER JOIN [dbo].[ProfileClusters2] pc ON pc.ProfNo = @ProfNO AND cl.ClustNo = pc.ClustNo WHERE ISNULL(pc.Show,gc.Show)=1 AND cl.DbLabel = @DbLabel AND NOT gc.XPath Is Null AND NOT gc.XPath = '' ORDER BY ISNULL(pc.SeqNo,cl.SeqNo) END
CREATE PROCEDURE [dbo].[BLL_GetExpanders](@CustID as varchar(10), @GroupID as varchar(10), @ProfID as varchar(10)) AS BEGIN DECLARE @ProfNo as int SELECT @ProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT g.ControlName ,ISNULL(a.ControlShow,g.ControlShow) as ControlShow ,ISNULL(a.ControlDefault,g.ControlDefault) as ControlDefault ,ISNULL(ISNULL(c.Caption,b.DefCaption),'') as ControlCaption FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[ProfExpander] a ON g.ControlName = a.ControlName AND a.ProfNo=@ProfNo LEFT JOIN [dbo].[ProfExpanderCaption] c ON a.ProfNo = c.ProfNo AND a.ControlName = c.ControlName AND c.LangCode = 'en' JOIN [dbo].[GlobalExpanderCaption] b ON g.ControlName = b.ControlName AND b.LangCode='en' END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceParamDetails_76](@InterfaceID varchar(10), @Version varchar(10),@ParamNo int) AS BEGIN IF EXISTS(SELECT TOP 1 [dbo].[InterfaceParamList2].[InterfaceID] FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version AND [dbo].[InterfaceParamList2].[ParamNo] = @ParamNo) select --isnull(icped.PromptText, ed.PromptText) PromptText, ed.PromptText, ip2.EditLevel, ip2.Mode from [dbo].[InterfaceParamList2] ip2 left outer join [dbo].[CustomParamEditDetail] ed on ed.ParamNo = ip2.ParamNo left outer join [dbo].[InterfaceCustomParamEditDetail] icped on ip2.ParamNo=icped.ParamNo And icped.InterfaceID=@InterfaceID and icped.Version=@Version WHERE ed.ParamNo = @ParamNo AND ip2.InterfaceID = @InterfaceID AND ip2.Version = @Version ELSE select --isnull(icped.PromptText, ed.PromptText) PromptText, ed.PromptText, ip.EditLevel, '' Mode from [dbo].[InterfaceParamList] ip left outer join [dbo].[CustomParamEditDetail] ed on ed.ParamNo = ip.ParamNo left outer join [dbo].[InterfaceCustomParamEditDetail] icped on ip.ParamNo=icped.ParamNo And icped.InterfaceID=@InterfaceID and icped.Version=@Version WHERE ed.ParamNo = @ParamNo AND ip.InterfaceID = @InterfaceID AND ip.Version = @Version END
CREATE PROCEDURE [dbo].[EARI_GetDbDisplayName_70](@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SELECT dbo.EAIF_GetDbDisplayName_70(@DbName, @DbLabel) END
CREATE PROCEDURE [dbo].[EPCAS_GetSegmentThesaurus](@MasterDbList int, @DBVersion int, @Label varchar(10), @LiveRebuild varchar(10), @Volume varchar(10)) AS BEGIN SELECT CAST(CHECKSUM(CONVERT(VARCHAR,d.DbVerNo)+':'+ d.SegName) as int) as 'SegCounter', e.DbVerNo, e.ThesNumber, e.ThesFile, e.UserControlled, e.StoreKWIC FROM [dbo].[DbThesaurus] e INNER JOIN [dbo].[DbSegment] d ON e.DbVerNo = d.DbVerNo AND e.SegName = d.SegName WHERE e.DbVerNo = @MasterDbList AND e.Volume = @Volume ORDER BY d.SeqNo END
CREATE Function [dbo].[EAIF_GetProfileMultiDBLimiters_99] ( @ProfNo int,@ScreenNo int) RETURNS @WRK_Limiters TABLE ( LimiterNo int ,LimiterID varchar(20),DbCount int,DbVerNo int) AS BEGIN --initialization DECLARE @CurrDate datetime SET @CurrDate=GETDATE() DECLARE @ProfDbCount int SELECT @ProfDbCount =COUNT([dbo].[ProfDatabase].[DbVerNo]) FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo and [dbo].[ProfDatabase].[Enable]=1 AND ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], @CurrDate)<0 ) DECLARE @Dblabel varchar(10) DECLARE @Limlabel varchar(10) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @STMode char(1) DECLARE @MarketID varchar(20) SELECT @Dblabel= [dbo].[Profile].[DbLabel], @Limlabel=[dbo].[Profile].[DbLabel], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @STMode=[dbo].[Profile].[STMode], @MarketID=[dbo].[Profile].[MarketID] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo IF @LimLabel NOT in ('live','liveQC', 'rebuild', 'rebuildQC') SET @Limlabel='custom' DECLARE @Show bit DECLARE @ShowOff bit SELECT @Show = [dbo].[InterfaceScreen].[LimiterShow] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo -- all limiters from valid profile databases and allowed on the interface INSERT Into @WRK_Limiters([dbo].[EAIF_GetProfileMultiDBLimiters_99].[LimiterNo], [dbo].[EAIF_GetProfileMultiDBLimiters_99].[LimiterID], [dbo].[EAIF_GetProfileMultiDBLimiters_99].[DbCount], [dbo].[EAIF_GetProfileMultiDBLimiters_99].[DbVerNo]) SELECT dl.LimiterNo, l.LimiterId, COUNT(*),MIN(pd.DbVerNo) FROM [dbo].[DbLimiter] dl JOIN [dbo].[ProfDatabase] pd ON dl.DbVerNo=pd.DbVerNo LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo=dil.DbVerNo AND dl.LimiterNo=dil.LimiterNo AND dil.IntfScreenNo=@ScreenNo JOIN [dbo].[LimiterList] l ON dl.LimiterNo=l.LimiterNo WHERE pd.ProfNo= @ProfNo AND pd.Enable=1 AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, @CurrDate)<0 ) AND (dl.ResFlag=1 OR dil.LimiterNo is not null) Group bY l.LimiterId,dl.LimiterNo -- remove non true common limiters wich are not multi-db limiters delete @WRK_Limiters from @WRK_Limiters wl LEFT OUTER JOIN ( SELECT mdbl.LimiterID FROM [dbo].[MDbLimiterList] mdbl LEFT OUTER JOIN [dbo].[InterfaceMDbLimiterList] imdbl ON mdbl.LimiterNo = imdbl.LimiterNo AND mdbl.DbLabel = @Limlabel AND imdbl.IntfScreenNo=@ScreenNo WHERE (mdbl.AutoAdd = 0 AND imdbl.LimiterNo is not null) OR (mdbl.AutoAdd = 1 AND imdbl.LimiterNo is null) ) a ON wl.LimiterID=a.LimiterID WHERE wl.DbCount<@ProfDbCount AND a.LimiterID is null --remove IQV limiters if profile does not allow imageQuickView IF dbo.EAIF_GetCustomParamScalarValue_70('imageQuickViewResults', @InterfaceId,@Version,@MarketId,@STMode,@ProfNo,'P')='0' delete @WRK_Limiters from @WRK_Limiters wl INNER JOIN [dbo].[LimiterList] l ON wl.LimiterID=l.LimiterId where l.DbLabel = @LimLabel and ( l.QueryMaskId='HasQuickViewRights' or l.QueryMaskId='HasQuickViewMatch') and l.EnableQueryMask=1 RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbParamXmlValue_70](@DbVerNo int, @ParamName varchar(100), @ItemName varchar(255)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetDbParamNumber_70(@ParamName) IF EXISTS (SELECT 1 FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName]=@ItemName) SELECT [dbo].[DbParamXmlValues].[ParamValue] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName]=@ItemName ELSE SELECT [dbo].[DbParamEditDetail].[ValueTemplate] as ParamValue FROM [dbo].[DbParamEditDetail] WHERE [dbo].[DbParamEditDetail].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseTOCs_80](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN BEGIN TRANSACTION DELETE dbf FROM [dbo].[DbFeature] dbf INNER JOIN [dbo].[FeatureList] fl ON dbf.FeatureNo = fl.FeatureNo WHERE dbf.DbVerNo=@NewDbVerNo AND fl.Category='toc' IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbFeature] SELECT @NewDbVerNo AS DbVerNo, dbf.FeatureNo FROM [dbo].[DbFeature] dbf INNER JOIN [dbo].[FeatureList] fl ON dbf.FeatureNo = fl.FeatureNo WHERE dbf.DbVerNo = @OldDbVerNo AND fl.Category = 'toc' IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceFeatureFieldDesignDetails_77](@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @Name varchar(50),@IncludeInSummary int,@EditCtrl varchar(50), @Template nvarchar(1000))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION UPDATE [dbo].[InterfaceFeatureFields] SET [dbo].[InterfaceFeatureFields].[IncludeInSummary]=@IncludeInSummary,[dbo].[InterfaceFeatureFields].[EditControl]=@EditCtrl,[dbo].[InterfaceFeatureFields].[ValueTemplate]=@Template WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldName]=@Name IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Update Feature Field', @InterfaceID,@Version,@FeatureName,@Name COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetTitleColNo_70](@CustID varchar(10),@ColID nvarchar(50)) RETURNS int AS BEGIN RETURN ( SELECT ( CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END ) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@ColID AND [dbo].[Collection].[IsDeleted]=0 ) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerLinksList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT @CustID as CustID, [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
Create PROCEDURE [dbo].[EAIP_DeleteContentVerticalFilter_163] ( @UserID varchar(10), @UserIP varchar(10), @ContentVerticalFilterID varchar(30) ) AS BEGIN IF LEN(@ContentVerticalFilterID)>25 BEGIN RAISERROR('Content Vertical Filter ID can not be longer then 25 characters.',16,-1) RETURN END DECLARE @ContentVerticalFilterNo INT SELECT @ContentVerticalFilterNo=[dbo].[ContentVerticalFilter].[ContentVerticalFilterNo] FROM [dbo].[ContentVerticalFilter] WHERE [dbo].[ContentVerticalFilter].[ContentVerticalFilterID]=@ContentVerticalFilterID IF EXISTS (SELECT 1 FROM dbo.DbCVFilter dbcvf JOIN dbo.ContentVerticalFilter cvf ON dbcvf.ContentVerticalFilterNo = cvf.ContentVerticalFilterNo WHERE cvf.ContentVerticalFilterNo=@ContentVerticalFilterNo) BEGIN RAISERROR('Unable to delete Content Vertical Filter %s because it is assigned to a database.',16,-1, @ContentVerticalFilterID) RETURN END BEGIN TRY BEGIN TRANSACTION DELETE FROM [dbo].[ContentVerticalFilter] WHERE [dbo].[ContentVerticalFilter].[ContentVerticalFilterNo]=@ContentVerticalFilterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ContentVertical', 'Delete a ContentVertical Filter', @ContentVerticalFilterID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
-- ====================================================================================================================== /* Description: Return A Template for Email based on type - Import or export? EAIP_GetEmailTemplate_133 'Imports' EAIP_GetEmailTemplate_133 'Exports', 'en' EAIP_GetEmailTemplate_133 'Imports', 'en' EAIP_GetEmailTemplate_133 'Imports', 'es' EAIP_GetEmailTemplate_133 'Imports', 'fr' */ -- ====================================================================================================================== CREATE PROCEDURE [dbo].[EAIP_GetEmailTemplate_133] @TemplateType VARCHAR(50) ,@LanguageID nvarchar(10) = N'en' AS BEGIN SELECT ETK.FromEmailAddress AS FromEmailAddress , ETK.TemplateID AS TemplateID , ETV.LanguageID AS LanguageCode , ETV.SubjectTemplate AS EmailSubjectTemplate , ETV.EmailBodyTemplate , ETK.TemplateType AS TemplateType FROM dbo.EmailTemplate ETK INNER JOIN dbo.EmailTemplateDetails ETV ON ETK.TemplateID = ETV.TemplateID WHERE ETK.TemplateType = @TemplateType AND ETV.LanguageID = @LanguageID END
--sql content merged from file: \StoredProcedures\EAUI_RemoveProfileDatabase_70.sql CREATE PROCEDURE [dbo].[EAUI_RemoveProfileDatabase_70] ( @UserID nvarchar(20), @UserIP varchar(15),@ProfNo int, @DbVerNo int, @IsInternalCustomer bit) AS BEGIN DECLARE @ProfLogName varchar(40) DECLARE @DbName varchar(10) Declare @DbCount int Declare @paramNo int SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo), @DbName = dbo.EAIF_GetDbName_70(@DbVerNo) SELECT @DbName = [dbo].[DbList].[DbName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] = @DbVerNo EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Profiles','Remove a Database from Profile',@ProfLogName,@DbName IF @IsInternalCustomer = 1 Begin DELETE FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo AND [dbo].[ProfDatabase].[DbVerNo]=@DbVerNo If not exists (Select 1 from [dbo].[ProfDatabase] pdb join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where [pdb].[ProfNo]=@ProfNo and [pdb].[Enable]=1 and [dbl].[SourceType] not in ('D', 'E', 'S')) Begin Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo]=@ProfNo and [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo End End ELSE UPDATE [dbo].[ProfDatabase] SET [dbo].[ProfDatabase].[Enable]=0 WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo AND [dbo].[ProfDatabase].[DbVerNo]=@DbVerNo END
Create FUNCTION dbo.EAIF_CheckCatalogStatusTabVisibility_142 (@CustID varchar(10)) RETURNS BIT AS BEGIN DECLARE @returnValue bit; Declare @Consortia bit Declare @CustType char(1) -- Note : This function is added for EHPMEBSCOADMIN-1927 (Release 14.2) task. Set @returnValue = 0; Select @Consortia=[dbo].[Customer].[Consortium], @CustType=[dbo].[Customer].[CustType] from [dbo].[Customer] Where [dbo].[Customer].[CustID]=@CustID IF @Consortia = 1 /* For Consortium customer, include the details of all its Child Customers, Owned catalog only */ BEGIN IF EXISTS (Select 1 FROM [dbo].[CustomerGroup] cg JOIN EASUPPORT.dbo.CustomerCatalogs cc ON cg.ChildID=cc.CustID JOIN [dbo].[DbList] d on d.DbName=cc.DbName AND d.DbLabel='live' WHERE cc.CustID = cc.SubscriberID AND cg.ParentID=@CustID AND d.DbName like 'cat%') SET @returnValue = 1 END ELSE /* Consortia = 0 Get Owned Catalogs only */ BEGIN IF EXISTS (Select 1 FROM EASUPPORT.dbo.CustomerCatalogs cc JOIN [dbo].[DbList] d on d.DbName=cc.DbName AND d.DbLabel='live' WHERE cc.CustID=@CustID AND cc.CustID = cc.SubscriberID AND d.DbName like 'cat%') SET @returnValue= 1; END RETURN @returnValue; END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbLabelClusters_89] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(20),@DbLabel varchar(20))AS BEGIN BEGIN TRANSACTION DELETE [dbo].[ClusterList] WHERE [dbo].[ClusterList].[ClustId]=@ID AND [dbo].[ClusterList].[DbLabel] = @DbLabel IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ReindexTable TABLE (SeqNo smallint, ClustID Varchar(20)) INSERT INTO @ReindexTable (SeqNo, ClustID) SELECT ROW_NUMBER() OVER (ORDER BY [dbo].[ClusterList].[SeqNo]), [dbo].[ClusterList].[ClustId] FROM [dbo].[ClusterList] WHERE [dbo].[ClusterList].[DbLabel] = @DbLabel UPDATE [dbo].[ClusterList] SET ClusterList.SeqNo = rt.SeqNo FROM [dbo].[ClusterList] cl INNER JOIN @ReindexTable rt ON cl.ClustId = rt.ClustID WHERE cl.DbLabel = @DbLabel AND cl.SeqNo != rt.SeqNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Delete Cluster', @ID, @DbLabel COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopySearchThemeDescriptions_88](@ThemeID varchar(20), @DescriptionsLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN DECLARE @DescriptionsList nvarchar(max) DECLARE @CLangList varchar(max) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim nchar(3) SET @LangDelim =N'|||' SET @DescriptionsList =SUBSTRING(@DescriptionsLangList, 1, CHARINDEX(@LangDelim,@DescriptionsLangList)-1) SET @CLangList=SUBSTRING(@DescriptionsLangList, CHARINDEX(@LangDelim,@DescriptionsLangList)+3, LEN(@DescriptionsLangList)) IF EXISTS (SELECT 1 FROM [dbo].[SearchThemeCaption] WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID) BEGIN UPDATE [dbo].[SearchThemeCaption] SET [Description]=ISNULL(cp.Item,N'') FROM [dbo].[SearchThemeCaption] AS sc INNER JOIN dbo.EAIF_GetItemValueTable_70(@DescriptionsList, @CLangList, @ValDelim) AS cp ON sc.LangCode=cp.Value WHERE sc.ThemeID=@ThemeID END ELSE INSERT INTO [dbo].[SearchThemeCaption]([dbo].[SearchThemeCaption].[ThemeID],[dbo].[SearchThemeCaption].[LangCode],[dbo].[SearchThemeCaption].[Description]) SELECT @ThemeID, cp.Value, ISNULL(cp.Item,N'') FROM dbo.EAIF_GetItemValueTable_70( @DescriptionsList,@CLangList,@ValDelim ) cp END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDatabaseListToCopy_104](@ProfNo INT) AS BEGIN DECLARE @CurrentDate datetime SET @CurrentDate= GETDATE() -- if the access end date is null, just use @CurrentData because it's a type I or P customer SELECT pdb.DbVerNo, dl.DisplayName+ N' ('+dl.DbName+N')' AS DisplayName FROM [dbo].[ProfDatabase] pdb JOIN [dbo].[DbList] dl ON pdb.DbVerNo = dl.DbVerNo WHERE [pdb].[ProfNo] = @ProfNo AND [pdb].[Enable] = 1 AND ([pdb].[AccessEndDate] IS NULL OR [pdb].[AccessEndDate] >= @CurrentDate) ORDER BY dl.DisplayName END
CREATE PROCEDURE [dbo].[EAUI_AddGlobalCluster_102] (@UserID varchar(10), @UserIP varchar(30),@ID varchar(20), @XPath varchar(4000), @XPathEnh varchar(4000), @Notes nvarchar(1000), @Tag varchar(20), @Caption nvarchar(255), @Show bit, @MinDisplay int, @MaxDisplay int, @MaxPercentageResults int, @CaseConversion tinyint, @AutoAdd2Interfaces bit) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID]=@ID ) BEGIN RAISERROR('The cluster %s already exists',16,-1,@ID) RETURN END DECLARE @SeqNo int BEGIN TRANSACTION INSERT INTO [dbo].[GlobalCluster] ([dbo].[GlobalCluster].[ID], [dbo].[GlobalCluster].[Tag], [dbo].[GlobalCluster].[XPath], [dbo].[GlobalCluster].[XPathEnh], [dbo].[GlobalCluster].[Notes], [dbo].[GlobalCluster].[MinDisplay], [dbo].[GlobalCluster].[MaxDisplay], [dbo].[GlobalCluster].[Show], [dbo].[GlobalCluster].[MaxPercentageResults], [dbo].[GlobalCluster].[CaseConversion], [dbo].[GlobalCluster].[AutoAdd2Interfaces]) VALUES (@ID, @Tag, @XPath, @XPathEnh, @Notes, @MinDisplay, @MaxDisplay, @Show, @MaxPercentageResults, @CaseConversion, @AutoAdd2Interfaces) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[GlobalClusterCaption]([dbo].[GlobalClusterCaption].[ID], [dbo].[GlobalClusterCaption].[LangCode], [dbo].[GlobalClusterCaption].[Caption]) VALUES (@ID, 'en', @Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Add Global Cluster', @ID COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EPCS_GetProfileClusters_98.sql CREATE Procedure [dbo].[EPCS_GetProfileClusters_98] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) as Begin Declare @profNo int Declare @DbLabel varchar(10) declare @InterfaceID varchar(10) declare @Version varchar(10) select @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @DbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID and [dbo].[Profile].[GroupID]=@GroupID and [dbo].[Profile].[ProfID]=@ProfID IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' Declare @profDatabaseTable table (DbVerNo int) Insert @profDatabaseTable (DbVerNo) select distinct isnull(s.PhysDbVerNo, p.DbVerNo) as DbVerNo -- use physicalDB if database is subsetDB from [dbo].[ProfDatabase] p JOIN [dbo].[DbList] dbl ON p.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType AND dbcl.Description<>'Publication' left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=p.DbVerNo where p.ProfNo=@ProfNo and ([p].[AccessEndDate] is null or datediff(hh, [p].[AccessEndDate], getdate())<0) and [p].[Enable]=1 select a.ClustId ID, isnull(isnull(pc.DefaultToOpen, ic.DefaultToOpen),0) as DefaultToOpen, dbo.EAIF_GetProfileClusterCaptions_99(@ProfNo, a.ClustNo) Captions, ISNULL(gcid.MinDisplay, gc.MinDisplay) AS MinDisplay, ISNULL(gcid.MaxDisplay, gc.MaxDisplay) AS MaxDisplay, ISNULL(gcid.MaxPercentageResults, gc.MaxPercentageResults) AS MaxPercentReturn from ( --Clusters that are enabled for the profile databases -- a. all explicitly enabled clusters select cl.ClustNo, cl.ClustId, cl.SeqNo from [dbo].[ClusterList] cl join [dbo].[DbCluster] dc On cl.ClustNo=dc.ClustNo join @profDatabaseTable pdb On pdb.DbVerNo=dc.DbVerNo where dc.Enable=1 and cl.DbLabel = @DbLabel union -- b.AutoAdded clusters, not explicitly disabled select cl.ClustNo,cl.ClustId,cl.SeqNo from @profDatabaseTable pdb join [dbo].[ClusterList] cl on 1=1 left outer join [dbo].[DbCluster] dc on pdb.DbVerNo=dc.DbVerNo and cl.ClustNo=dc.ClustNo and dc.Enable=0 where (cl.AutoAdd2Db=1 AND cl.DbLabel=@DbLabel and dc.DbVerNo is null) ) a left outer join [dbo].[ProfileClusters2] pc on pc.ProfNo = @ProfNo AND a.ClustNo = pc.ClustNo left outer join [dbo].[InterfaceClusters] ic on ic.InterfaceID=@InterfaceID and ic.Version=@Version and a.ClustNo=ic.ClustNo JOIN [dbo].[GlobalCluster] AS gc ON a.ClustId = gc.ID LEFT OUTER JOIN [dbo].[GlobalClusterInterface] AS gci ON gci.ClustId = gc.ID AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT OUTER JOIN [dbo].[GlobalClusterInterfaceDetails] AS gcid ON gcid.ClustId = gci.ClustId AND gcid.InterfaceId = gci.InterfaceId AND gcid.Version = gci.Version where isnull(pc.Show, ISNULL(gcid.Show, gc.Show))=1 AND ((gc.AutoAdd2Interfaces=0 and gci.ClustId is not null) or gc.AutoAdd2Interfaces=1) order by ISNULL(pc.SeqNo, a.SeqNo) End
CREATE PROCEDURE [dbo].[BLL_GetFullConsortiaDatabases_100](@ConsortiaCustID varchar(10)) AS BEGIN DECLARE @CurrentDate DATETIME; SELECT @CurrentDate = GETDATE(); SELECT DISTINCT c.CustID , c.CustName , db.DbName , db.DisplayName FROM [dbo].[Customer] c INNER JOIN [dbo].[Profile] p ON c.CustID = p.CustID INNER JOIN [dbo].[ProfDatabase] pd ON p.ProfNo = pd.ProfNo INNER JOIN [dbo].[DbList] db ON pd.DbVerNo = db.DbVerNo WHERE c.CustID != @ConsortiaCustID --AND db.dbname = db.dbname --AND db.dbname = g.dbname AND c.CustID IN (SELECT cg.ChildID FROM [dbo].[CustomerGroup] cg WHERE [cg].[ParentID] = @ConsortiaCustID) AND pd.Enable = 1 AND (pd.AccessEndDate is null OR DateDiff(hh, pd.AccessEndDate, @CurrentDate)< 0 ) ORDER BY c.CustName, c.CustID, db.DbName END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceParamList_70] (@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT a.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, -- isnull(e.PromptText, d.PromptText) PromptText, d.PromptText, a.EditLevel, DisplayLink=case When [b].[ParamType] in ('N', 'S', 'B', 'M') Then 1 When [b].[ParamType]='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where a.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 2 Else 0 End FROM [dbo].[InterfaceParamList] a Join [dbo].[CustomParamList] b on a.ParamNo= b.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' Left Outer Join [dbo].[CustomParamEditDetail] d on b.ParamNo=d.ParamNo -- Left Outer Join InterfaceCustomParamEditDetail e -- on b.ParamNo=e.ParamNo -- And e.InterfaceID=@InterfaceID and e.Version=@Version WHERE a.InterfaceID = @InterfaceID AND a.Version=@Version AND b.ParamLevel = 'P' -- AND b.ParamType<>'D' ORDER BY [d].[PromptText] SELECT [dbo].[InterfaceParamList2].[ParamNo], [dbo].[InterfaceParamList2].[Mode], [dbo].[InterfaceParamList2].[EditLevel] FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version END
CREATE PROCEDURE [dbo].[EARI_GetInterfaceName_70](@InterfaceId varchar(10), @Version varchar(10)='live', @LangCode varchar(10)='en') AS BEGIN SELECT [dbo].[InterfaceLanguage].[InterfaceName] FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[InterfaceID]=@InterfaceId AND [dbo].[InterfaceLanguage].[Version]=@Version AND [dbo].[InterfaceLanguage].[LangCode]=@LangCode END
CREATE PROCEDURE [dbo].[EPCAS_GetSmartLinkInfo]( @CustID varchar(10), @GroupID varchar(10), @ProfileID varchar(10)=null ) AS BEGIN DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @SmartLinkParamNo int SET @SmartLinkParamNo = dbo.EAIF_GetCustomParamNumber_70('softLinkingPermitted','P') IF ( (@ProfileID IS NULL) OR (@ProfileID='') ) -- select the first profile where smart linking is turned on SELECT TOP 1 @ProfNo=a.ProfNo, @InterfaceId=a.InterfaceID FROM [dbo].[Profile] a INNER JOIN [dbo].[CustomParamDefaults] b ON (b.ParamNo=@SmartLinkParamNo AND a.InterfaceID=b.InterfaceID AND a.Version=b.Version AND a.MarketID=b.MarketID AND a.STMode=b.STMode) LEFT OUTER JOIN [dbo].[CustomParamScalarValues] c ON (a.ProfNo=c.TargetNo AND c.ParamLevel='P' AND c.ParamNo=@SmartLinkParamNo) WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND CONVERT(int, ISNULL(c.ParamValue, b.DefValue))=1 ORDER BY a.SeqNo ELSE -- choose the profile passed SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceId=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfileID /*convert ProfileId to ehost, part of Jupiter updation */ IF ( (@ProfNo IS NULL) AND (@ProfileID='web') ) BEGIN SET @ProfileID='ehost' SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceId=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfileID END DECLARE @SelectTable TABLE (ExportName varchar(100), ParamValue varchar(2000), DataType char(1)) --Could not use this proc --EXEC EAIP_GetProfileParamByCategory_70 'smartLinks', @ProfNo DECLARE @Category varchar(50) SET @Category='smartLinks' INSERT INTO @SelectTable SELECT lst.ParamName as 'ExportName', ISNULL(val.ParamValue, dfl.DefValue) as 'ParamValue', lst.ParamType as 'DataType' FROM [dbo].[CustomParamCategory] ctg INNER JOIN [dbo].[CustomParamList] lst ON ctg.ParamNo=lst.ParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON lst.ParamNo=val.ParamNo AND val.ParamLevel='P' AND val.TargetNo=@ProfNo INNER JOIN [dbo].[CustomParamDefaults] dfl ON lst.ParamNo=dfl.ParamNo INNER JOIN [dbo].[InterfaceParamList] int ON dfl.InterfaceID=int.InterfaceID AND lst.ParamNo=int.ParamNo INNER JOIN [dbo].[Profile] p ON int.Version=p.Version AND int.InterfaceID=p.InterfaceID AND dfl.Version=p.Version AND dfl.MarketID=p.MarketID AND dfl.STMode=p.STMode WHERE ctg.Category=@Category AND p.ProfNo=@ProfNo UNION ALL SELECT 'smartlinkToMUSE','0','B' UNION ALL SELECT 'museColID','','S' DECLARE @DotPosn int, @CrossRefColIDVal varchar(2000) SELECT @CrossRefColIDVal=ParamValue FROM @SelectTable WHERE ExportName='crossRefColID' SET @DotPosn=CHARINDEX('.',@CrossRefColIDVal) IF @DotPosn>0 BEGIN DECLARE @ColId varchar(50), @ColIdCustId varchar(10) SET @ColIdCustId = SUBSTRING(@CrossRefColIDVal, 1, @DotPosn-1) SET @ColId = SUBSTRING(@CrossRefColIDVal, @DotPosn+1, 2000) IF @ColIdCustId = @CustID UPDATE @SelectTable SET ParamValue=@ColId WHERE ExportName='crossRefColID' ELSE UPDATE @SelectTable SET ParamValue='' WHERE ExportName='crossRefColID' END SELECT * FROM @SelectTable END
CREATE Function [dbo].[EAIF_GetProfileParamsTobeExcluded_133] ( @InterfaceID varchar(10), @Version varchar(10), @ProfNo INT, @UIFlag bit) RETURNS @ItemsTable TABLE ( ParamNo int)AS BEGIN -- Admin 10.0: Dynamed has two new parameters that has some type of table dependency / other parameter values. -- This function identifies the parameters that do not meet dependency requirements to be included in the -- list of parameters to be rendered on Admin screens or sent to ebscohost (through EPConfigService). -- Parameter : 'showSearchOtherOnDetailed' -- Param Text : Show Search Other Services on Detailed Record. -- Business Rule : Parameter will ONLY be available if Search other Services is configured for profile - ie, if at least one link has been setup. -- EHPMADMIND-301/315 Declare @ParamNo int Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showSearchOtherOnDetailed' Declare @DbLabel varchar(10) select @DbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo If exists (Select 1 from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo and [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceParamList].[Version]=@Version) AND NOT EXISTS (SELECT 1 FROM [dbo].[ProfOtherServiceLinks] l WHERE l.ProfNo=@ProfNo) Begin -- Add the paramno of 'showSearchOtherOnDetailed' to the itemtable if no links have been setup -- for the profile insert into @ItemsTable VALUES (@ParamNo) End -- Parameter : 'showPercOnDetailed' -- Param Text : Show Patient Education Research Center on Detailed Record. -- Business Rule : Parameter will ONLY be available if Patient Education Resource Center is available from the Database Tab for profile. -- EHPMADMIND-286/310 Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showPercOnDetailed' If exists (Select 1 from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo and [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceParamList].[Version]=@Version) Begin Declare @PercDbVerNo int set @PercDbVerNo=0 Select @PercDbVerNo=pd.DbVerNo FROM [dbo].[ProfDatabase] pd inner join [dbo].[DbList] d on (d.DbVerNo = pd.DbVerNo and d.DbName='perc') WHERE pd.ProfNo=@ProfNo AND pd.Enable=1 AND (pd.Mode is null or pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) -- Add the ParamNo of 'showPercOnDetailed' to exclude table, If the PERC is not enabled on the profile. IF @PercDbVerNo = 0 insert into @ItemsTable Select @ParamNo End -- Parameter : 'catalogHoldingTblHeadings' -- Param Text : Customize Catalog Holdings Table Headings (Link) -- Business Rule : Parameter will display ONLY if there is one catalog on the profile -- Note: The same business rule applies to Parameter 'supplBookJacketSourceForCatalogsLink' -- Param Text :Configure Supplemental Book Jacket Sources for Catalog Records (Results tab) -- @ParamNo2,@ParamNo3,@ParamNo4 logic added for Release 13.2. Declare @ParamNo2 int, @ParamNo3 int, @ParamNo4 int Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='catalogHoldingTblHeadings' SELECT @ParamNo2 = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='supplBookJacketSourceForCatalogsLink' SELECT @ParamNo3 = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='useSyndeticsAsBookJacketSource' -- child parameter of 'supplBookJacketSourceForCatalogsLink'. SELECT @ParamNo4 = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='syndeticsClientCodeForBookJacketSource' -- child parameter of 'supplBookJacketSourceForCatalogsLink'. If exists (Select 1 from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo] IN (@ParamNo,@ParamNo2) and [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceParamList].[Version]=@Version) Begin Declare @profHasCatalog bit set @profHasCatalog = 0 If exists (Select 1 FROM [dbo].[ProfDatabase] pd inner join [dbo].[DbList] d on (d.DbVerNo = pd.DbVerNo) WHERE pd.ProfNo=@ProfNo AND pd.Enable=1 AND d.DbName like 'cat%' AND d.SourceType = 'C' AND (pd.Mode is null or pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0)) set @profHasCatalog = 1 -- If profile has no catalogs, then add the parameter to the exclude table. IF @profHasCatalog = 0 insert into @ItemsTable ([dbo].[EAIF_GetProfileParamsTobeExcluded_133].[ParamNo]) Values (@ParamNo),(@ParamNo2),(@ParamNo3),(@ParamNo4) End -- Parameter : 'applyLocLimDefToCatalogHoldingTbl' -- Param Text : Apply Location Limiter Defaults to Catalog Holdings Table -- Business Rule : Parameter will display ONLY if there is location limiter is available to the profile. Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='applyLocLimDefToCatalogHoldingTbl' If exists (Select 1 from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo and [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceParamList].[Version]=@Version) Begin Declare @profHaslocLim bit Declare @limiterNo int -- LB is not a new limiter, it is already in live envirnoment. It is very unlikely that -- LB in other non-live labels will be attached to databases/interfaces. Select @LimiterNo=[dbo].[LimiterList].[LimiterNo] from [dbo].[LimiterList] where [dbo].[LimiterList].[LimiterId]='LB' and [dbo].[LimiterList].[DbLabel]='live' set @profHaslocLim = 0 -- Note : ResFlag column on DbLimiter is auto-add flag!! If exists (Select 1 from [dbo].[ProfDatabase] pd inner join [dbo].[DbLimiter] dl on dl.DbVerNo=pd.DbVerNo and dl.LimiterNo=@limiterNo inner join [dbo].[DbList] d on d.DbVerNo=pd.DbVerNo inner join [dbo].[InterfaceScreen] ifs on ifs.InterfaceID=@InterfaceID and ifs.Version=@Version left outer join [dbo].[DbInterfaceLimiter] dil on dil.DbVerNo=d.DbVerNo AND dil.LimiterNo=dl.LimiterNo AND dil.IntfScreenNo=ifs.IntfScreenNo WHERE pd.ProfNo=@ProfNo and pd.Enable=1 and d.DbName like 'cat%' and d.SourceType = 'C' and (pd.AccessEndDate is null OR datediff(hh, pd.AccessEndDate, getdate())< 0) and (( dl.ResFlag=1 and dil.LimiterNo is null) or (dl.ResFlag=0 and dil.LimiterNo is not null))) set @profHaslocLim = 1 -- If profile catalogs has no access to LB limiter, then add the parameter to the exclude table. IF @profHaslocLim = 0 insert into @ItemsTable Select @ParamNo END -- If Profile's Customer does not have the enableHoldingsManagement Parameter set to On or -- the Profile does not have the edspub Database available and enabled then add all 'pubBrowse%' parameters to the exlude table IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN [dbo].[Customer] c ON p.CustID=c.CustID JOIN dbo.CustomParamDefaults cpd ON c.MarketID=cpd.MarketID JOIN [dbo].[CustomParamList] cpl ON cpd.ParamNo=cpl.ParamNo AND cpl.ParamName='enableHoldingsManagement' LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON c.CustNo=cpsv.TargetNo AND cpl.ParamNo=cpsv.ParamNo WHERE p.ProfNo=@ProfNo AND ISNULL(cpsv.ParamValue,cpd.DefValue)=1) INSERT @ItemsTable SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] LIKE 'pubBrowse%' AND [dbo].[CustomParamList].[ParamLevel]='P' ELSE /* This function is called by the UI and EpConfigService and each of these have different rules as to what Parameters should and should not display. In the case of the UI the pubBrowse Parameters do not want to be excluded even if the edspub Database is disabled. In the case of EpConfigService the pubBrowse Parameters do want to be excluded when the edspub Database is disabled. Also, how profDatabases are handled differs between Internal and External Customers. For Internal Customers a Database may be associated with a Profile and be in the enabled or disbabled state. For External Customers however, if a Database is associated with a Profile the it is always enabled. If the Profile is disabled in the UI then it is deleted from the profDatabase tabel for the Profile. */ IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN [dbo].[Customer] c ON p.CustID=c.CustID AND c.CustType<>'I' -- External Customer JOIN dbo.ProfDatabase pdb ON p.ProfNo=pdb.ProfNo AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0) AND (pdb.Enable=1 OR @UIFlag=1) -- Database is not expired and it is enabled or the call is coming from the UI JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo AND dbl.DbName='edspub' AND dbl.DbLabel='live' WHERE p.ProfNo=@ProfNo UNION SELECT 1 FROM [dbo].[Profile] p JOIN [dbo].[Customer] c ON p.CustID=c.CustID AND c.CustType='I' -- Internal Customer LEFT OUTER JOIN dbo.ProfDatabase pdb ON p.ProfNo=pdb.ProfNo LEFT OUTER JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo AND dbl.DbName='edspub' AND dbl.DbLabel=@DbLabel WHERE p.ProfNo=@ProfNo AND (dbl.DbVerNo IS NOT NULL OR (dbl.DbVerNo IS NULL AND @UIFlag=1))) -- Database is enabled (since it exists in profDatabase for Profile) or it is diabled (it does not exist in profDatabase for Profile) and the call is coming from the UI INSERT @ItemsTable SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] LIKE 'pubBrowse%' AND [dbo].[CustomParamList].[ParamLevel]='P' -- EhpmEbscoAdmin-1464 SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName]='isEPKBMaster' IF EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN [dbo].[Customer] c ON p.CustID=c.CustID JOIN [dbo].[CustomParamScalarValues] cpsv ON c.CustNo=cpsv.TargetNo AND cpsv.ParamNo=@ParamNo AND cpsv.ParamValue=1 WHERE p.ProfNo=@ProfNo) INSERT @ItemsTable SELECT cplc.ParamNo FROM [dbo].[CustomParamList] cplc JOIN [dbo].[CustomParamList] cplp ON cplc.ParentParamNo=cplp.ParamNo AND cplp.ParamName='a-zLink' --EHPMEBSCOADMIN-1855:OCLC LibAdmin updates --- ILS Integration tab parameters Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='ILSIntegrationEnabled' If exists (Select 1 from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo and [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceParamList].[Version]=@Version) --AND @UIFlag = 0 Begin Declare @ILSIntegrationEnabledOnProfile bit Declare @CustType char(1) SET @ILSIntegrationEnabledOnProfile =0 Select @CustType = c.CustType from [dbo].[Profile] p join [dbo].[Customer] c on c.CustID=p.CustID Where p.ProfNo=@ProfNo IF @UIFlag=0 AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN dbo.CustomParamDefaults cpd ON cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version AND cpd.MarketID=p.MarketID JOIN [dbo].[CustomParamList] cpl ON cpd.ParamNo=cpl.ParamNo AND cpl.ParamNo=@ParamNo LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cpsv ON cpsv.TargetNo=p.ProfNo AND cpl.ParamNo=cpsv.ParamNo WHERE p.ProfNo=@ProfNo AND ISNULL(cpsv.ParamValue,cpd.DefValue)=1) SET @ILSIntegrationEnabledOnProfile =1 -- If 'ILSIntegrationEnabled' Parameter is disabled on the profile, exclude all the ILS parameters on ILSIntegration tab from Profile attribute list. -- Applies to both Paying and Internal customer profiles IF (@ILSIntegrationEnabledOnProfile = 0 AND @UIFlag = 0) INSERT @ItemsTable SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] IN ('ILSIntegrationEnabled','SelCatalogForILS','ILSCheckOuts','ILSCharges','ILSHolds','DefaultPickUpLocForILS') AND [dbo].[CustomParamList].[ParamLevel]='P' ELSE --IF 'ILSIntegrationEnabled' Parameter is enabled on the profile, Check if the paying customer has active subscription to OCLC subscription -- by looking at the specific database 'pfils' on the profile. -- If no active subscription to OCLC product offering found, exclude all the ILS parameters on ILSIntegration tab from Profile attribute list. --Applies to Paying customer profile only. Internal customer has access to all databases all the time. IF (@CustType = 'S' OR @CustType='T') AND NOT EXISTS (SELECT 1 FROM [dbo].[Profile] p /* Paying Customer profile */ -- JOIN Customer c -- ON p.CustID=c.CustID AND c.CustType IN ('S','T') JOIN dbo.ProfDatabase pdb ON p.ProfNo=pdb.ProfNo JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo AND dbl.DbName='pfils' WHERE p.ProfNo=@ProfNo AND (pdb.Mode IS NULL OR pdb.Mode <> 'X' ) AND (datediff(hh, pdb.AccessEndDate, getdate())<0)) INSERT @ItemsTable SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] IN ('ILSIntegrationEnabled','SelCatalogForILS','ILSCheckOuts','ILSCharges','ILSHolds','DefaultPickUpLocForILS') AND [dbo].[CustomParamList].[ParamLevel]='P' End -- EHPMEBSCOAdmin -2050 (Release 14.2) change. -- The new parameter 'showFullTextGridOnAdminCustomLinkPage' is for Admin UI (internal use) only. This parameter should not be sent to ehost. IF @UIFlag=0 INSERT @ItemsTable SELECT [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] ='showFullTextGridOnAdminCustomLinkPage' AND [dbo].[CustomParamList].[ParamLevel]='P' RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbParamXmlValuesList_70](@DbVerNo int, @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetDbParamNumber_70(@ParamName) SELECT [dbo].[DbParamXmlValues].[SeqNo], [dbo].[DbParamXmlValues].[ItemName], [dbo].[DbParamXmlValues].[ParamValue] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo ORDER BY [dbo].[DbParamXmlValues].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseToolbarItems_100](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN BEGIN TRANSACTION -- Category lpt : ToolbarItems for Regular databases (introduced in 10.0) DELETE dbf FROM [dbo].[DbFeature] dbf INNER JOIN [dbo].[FeatureList] fl ON dbf.FeatureNo = fl.FeatureNo WHERE dbf.DbVerNo=@NewDbVerNo AND fl.Category='lpt' IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbFeature] SELECT @NewDbVerNo AS DbVerNo, dbf.FeatureNo FROM [dbo].[DbFeature] dbf INNER JOIN [dbo].[FeatureList] fl ON dbf.FeatureNo = fl.FeatureNo WHERE dbf.DbVerNo = @OldDbVerNo AND fl.Category = 'lpt' IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceFeatureItemShow_142](@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @ItemNo int, @show bit) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION UPDATE [dbo].[InterfaceFeatureValues] SET [dbo].[InterfaceFeatureValues].[Show]=@show WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]=@ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Update Feature Item Show column', @InterfaceID,@Version,@FeatureName,@ItemNo,@show COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GetTitleNo_70](@ISSN varchar(20)) RETURNS int AS BEGIN RETURN (SELECT min([dbo].[MasterTitle].[TitleNo]) FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[ISSN]=@ISSN) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerList_70] as BEGIN SELECT TOP 1000 c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') as ParentID FROM [dbo].[Customer] c WHERE c.CustID<>'system' AND c.CustType <> 'U' ORDER BY [c].[CustName] END
CREATE PROCEDURE [dbo].[EAIP_DeleteContentVerticalType_162] ( @UserID varchar(10), @UserIP varchar(10), @ContentVerticalID varchar(25) ) AS BEGIN IF LEN(@ContentVerticalID)>20 BEGIN RAISERROR('Content vertical ID can not be longer then 20 characters.',16,-1) RETURN END DECLARE @ContentVerticalNo INT SELECT @ContentVerticalNo=[dbo].[ContentVerticalType].[ContentVerticalNo] FROM [dbo].[ContentVerticalType] WHERE [dbo].[ContentVerticalType].[ContentVerticalID]=@ContentVerticalID IF EXISTS(SELECT 1 FROM [dbo].[InterfaceCVType] WHERE [dbo].[InterfaceCVType].[ContentVerticalNo]=@ContentVerticalNo) OR EXISTS (SELECT 1 FROM dbo.DbCVFilter dbcvf JOIN dbo.ContentVerticalFilter cvf ON dbcvf.ContentVerticalFilterNo = cvf.ContentVerticalFilterNo WHERE cvf.ContentVerticalNo=@ContentVerticalNo) BEGIN RAISERROR('Unable to delete content vertical %s because it is either assigned to an interface or database.',16,-1, @ContentVerticalID) RETURN END BEGIN TRY BEGIN TRANSACTION DELETE FROM [dbo].[ContentVerticalType] WHERE [dbo].[ContentVerticalType].[ContentVerticalNo]=@ContentVerticalNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ContentVertical', 'Delete a ContentVertical', @ContentVerticalID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
-- ====================================================================================================================== /* Description: Return A Template for Email based on type - Import or export? EAIP_GetEmailTemplateParameters 2 EAIP_GetEmailTemplateParameters 1, 'S' EAIP_GetEmailTemplateParameters 1, 'B' EAIP_GetEmailTemplateParameters 1, 'Z' EAIP_GetEmailTemplateParameters 1 */ -- ====================================================================================================================== CREATE PROCEDURE [dbo].[EAIP_GetEmailTemplateParameters_133] @EmailTemplateID SMALLINT ,@SubjectOrBody [varchar](1) = 'B' AS BEGIN BEGIN TRY SELECT [dbo].[EmailTemplateParameters].[TemplateVariableName] FROM [dbo].[EmailTemplateParameters] WHERE [dbo].[EmailTemplateParameters].[TemplateID] = @EmailTemplateID AND [dbo].[EmailTemplateParameters].[VariableType] = @SubjectOrBody ORDER BY [dbo].[EmailTemplateParameters].[VariableType] DESC End TRY BEGIN CATCH SELECT ERROR_NUMBER() "ErrorNumber" ,ERROR_SEVERITY() "ErrorSeverity" ,ERROR_STATE() "ErrorState" ,ERROR_PROCEDURE() "ErrorProcedure" ,ERROR_LINE() "ErrorLine" ,ERROR_MESSAGE() "ErrorMessage" END CATCH END
--sql content merged from file: \StoredProcedures\EAUI_RemoveScalarDbParameter_96.sql CREATE PROCEDURE [dbo].[EAUI_RemoveScalarDbParameter_96] (@UserID nvarchar(20), @UserIP varchar(15), @ParamNo int)AS BEGIN BEGIN TRY BEGIN TRANSACTION -- Remove Db customization first, If it exists DELETE [dbo].[DbParamScalarValues] FROM [dbo].[DbParamScalarValues] sv INNER JOIN [dbo].[DbParamList] p ON sv.ParamNo=p.ParamNo WHERE sv.ParamNo=@ParamNo DELETE [dbo].[DbParamDefaults] WHERE [dbo].[DbParamDefaults].[ParamNo]=@ParamNo DELETE [dbo].[DbParamEditDetail] FROM [dbo].[DbParamEditDetail] pe INNER JOIN [dbo].[DbParamList] p ON pe.ParamNo = p.ParamNo WHERE pe.ParamNo = @ParamNo -- Finally remove the paramno from DbParamList DELETE FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamNo]=@ParamNo DECLARE @ParamName varchar(100) SET @ParamName = dbo.EAIF_GetDbParamName_70 (@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, ' ','Database Parameter','Remove Parameter',@ParamName,'','','' COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
--sql content merged from file: \Functions\EAIF_CheckIfDbParamIsCustomized_96.sql CREATE FUNCTION [dbo].[EAIF_CheckIfDbParamIsCustomized_96](@ParamNo int) RETURNS int AS BEGIN DECLARE @aRet int IF EXISTS (Select 1 from [dbo].[DbParamScalarValues] Where [dbo].[DbParamScalarValues].[ParamNo]=@ParamNo) SET @aRet=1 ELSE SET @aRet=0 RETURN @aRet END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbLimiter_76] (@UserId nvarchar(20), @UserIp varchar(15), @DbVerNo int, @LimiterNo int) AS BEGIN DECLARE @LimiterId varchar(2) DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo]=@LimiterNo SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION DELETE FROM [dbo].[ProfDbLimiter2] WHERE [dbo].[ProfDbLimiter2].[DbVerNo] = @DbVerNo AND [dbo].[ProfDbLimiter2].[LimiterNo] = @LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbLimiterDetail] WHERE [dbo].[DbLimiterDetail].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterDetail].[LimiterNo] = @LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbLimiter] WHERE [dbo].[DbLimiter].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiter].[LimiterNo] = @LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbLimiterCaption] WHERE [dbo].[DbLimiterCaption].[DbVerNo] = @DbVerNo AND [dbo].[DbLimiterCaption].[LimiterNo] = @LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserId,@UserIp,@DbName, @DbLabel,'Delete Limiter','Limiter ID:',@LimiterId END
CREATE PROCEDURE [dbo].[EAIP_CopySearchThemeImgAltTexts_83](@ThemeID varchar(20), @ImageAltTextsLangList nvarchar(max)) AS /** procedure is used by EACopy **/ BEGIN DECLARE @ImageAltTextList nvarchar(max) DECLARE @CLangList varchar(max) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim nchar(3) SET @LangDelim =N'|||' SET @ImageAltTextList =SUBSTRING(@ImageAltTextsLangList, 1, CHARINDEX(@LangDelim,@ImageAltTextsLangList)-1) SET @CLangList=SUBSTRING(@ImageAltTextsLangList, CHARINDEX(@LangDelim,@ImageAltTextsLangList)+3, LEN(@ImageAltTextsLangList)) IF EXISTS (SELECT 1 FROM [dbo].[SearchThemeCaption] WHERE [dbo].[SearchThemeCaption].[ThemeID]=@ThemeID) BEGIN UPDATE [dbo].[SearchThemeCaption] SET [ImageAltText]=ISNULL(cp.Item,N'') FROM [dbo].[SearchThemeCaption] AS sc INNER JOIN dbo.EAIF_GetItemValueTable_70(@ImageAltTextList, @CLangList, @ValDelim) AS cp ON sc.LangCode=cp.Value WHERE sc.ThemeID = @ThemeID END ELSE INSERT INTO [dbo].[SearchThemeCaption]([dbo].[SearchThemeCaption].[ThemeID],[dbo].[SearchThemeCaption].[LangCode],[dbo].[SearchThemeCaption].[ImageAltText]) SELECT @ThemeID, cp.Value, ISNULL(cp.Item,N'') FROM dbo.EAIF_GetItemValueTable_70( @ImageAltTextList,@CLangList,@ValDelim ) cp END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDatabaseListWithExp_132] ( @ProfNo INT,@DbStatus CHAR(1),@SourceType CHAR(1) ) AS BEGIN --Note : A new version of the procedure (_132) created, as we are adding new input parameters -- @DbStatus : This parameter can have values '0','1','A' -- Where '0' - Get Disabled profile databases -- '1' - Get Enabled profile databases -- 'A' - Get All databases - both enabled /Disabled. (Applicable to Paying customers only) -- @SourceType : This parameter can have values 'C','D' and 'O' -- Where 'C' - Includes Catalogs and IR's only -- 'D' - Includes Internal databases -- 'O' - All sources types other than 'C' and 'D'. -- @SourceType would be primarly used for internal customer only. -- The Show dropdown on Profile databases tab would have different options based on the customer type. -- For internal customer - Options available are Enabled, Disabled - Internal Databases, Disabled - Catalogs and IR's -- and Disabled - Others. -- There is NO option to get all disabled databases (for internal customer) to avoid performance issues. -- For Paying customer - Options available are Enabled, Disabled and 'All'. -- DECLARE @IndexBrowseParamNo INT DECLARE @RefSearchParamNo INT DECLARE @GroupDbs BIT DECLARE @ParamNo INT DECLARE @InterfaceID VARCHAR(10) DECLARE @Version VARCHAR(10) DECLARE @IsPrimaryDbAllowedOnIntf BIT DECLARE @CustType CHAR(1) DECLARE @ProfID VARCHAR(10) DECLARE @CustNo INT DECLARE @DbLabel VARCHAR(10) DECLARE @EnableFlag int DECLARE @PfILSDbName varchar (10) SELECT @CustType = [b].[CustType] , @ProfID = a.ProfID , @CustNo = b.CustNo , @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo = @ProfNo SET @PfILSDbName = 'pfils' /* This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ IF @DbStatus = 'A' SET @EnableFlag = 3 ELSE SET @EnableFlag = @DbStatus DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) IF ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag = 0) BEGIN IF @SourceType = 'D' OR @SourceType='C' INSERT INTO @ProfDbsForIntCustomer ( DbVerNo) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType =@SourceType AND a.DbName <> @PfILSDbName /* EHPMEBSCOADMIN-1855: This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ ORDER BY a.DisplayName asc -- Index connectors. -- Check if the profile interface supports 'M' type databases. ELSE IF @SourceType='O' AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN EASUPPORT.dbo.ProductInterface pi ON p.InterfaceID=pi.InterfaceID AND p.Version=pi.Version JOIN EASUPPORT.dbo.Product pr ON pi.ProductID=pr.ProductID and pr.ProductType= 'M' WHERE p.ProfNo=@ProfNo) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType JOIN [dbo].[CustExternalDbList] cedl ON cedl.CustNo=@CustNo AND cedl.DbVerNo=a.DbVerNo LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType NOT IN ('D','C') AND cedl.Status='A' ORDER BY a.DisplayName asc END DECLARE @ProfDB TABLE ( GroupNo INT , GroupHeading VARCHAR(MAX) , SubGroupNo INT , RowNo INT , SeqNo INT , DbVerNo INT PRIMARY key, DisplayName NVARCHAR(MAX) , DbName VARCHAR(10) , SelDefault BIT , StartPage VARCHAR(20) , StartPageTemplate VARCHAR(MAX) , Mode VARCHAR(10) , AccessEndDate DATETIME , SourceType CHAR(1) , DbFlag VARCHAR(3) , SortField1 CHAR(1) , Enable BIT ) SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'groupProfDatabases' SELECT @GroupDbs = [dbo].[CustomParamScalarValues].[ParamValue] FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel] = 'P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @paramNo SELECT @InterfaceID = [dbo].[Profile].[InterfaceID] , @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT @IsPrimaryDbAllowedOnIntf = ISNULL([dbo].[InterfaceVersion].[AllowPrimaryDatabases], 0) FROM [dbo].[InterfaceVersion] WITH ( NOLOCK ) WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [cpd].[DefValue] FROM [dbo].[CustomParamDefaults] cpd JOIN [dbo].[Profile] p ON cpd.InterfaceID = p.InterfaceID AND cpd.Version = p.Version AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode WHERE p.ProfNo = @ProfNo AND [cpd].[ParamNo] = @ParamNo IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] = @ParamNo END END IF @GroupDbs = 1 BEGIN -- For Paying customers - All DbStatus (0 - Disabled,1 - Enabled ,3 --ALL) -- For Internal customers - DbStatus (1 - Enabled only) IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND b.SourceType <> 'M' AND b.DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.SeqNo , a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , --SelDefault = CASE WHEN @ProfID = 'eds' THEN 1 -- default to 1 for eds profile EHPMEBSCOADMIN-848 -- ELSE a.SelDefault -- END , a.SelDefault, a.StartPage , --dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) AS 'StartPageTemplate' , '' AS 'StartPageTemplate', CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' WHEN 'X' THEN 'Expired' ELSE 'N/A' END AS Mode , ISNULL(a.AccessEndDate, NULL) AS [AccessEndDate] , b.SourceType AS SourceType , 'R' AS DbFlag , 1 AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 WHERE a.ProfNo = @ProfNo AND a.DbVerNo = b.DbVerNo AND cedl.DbVerNo IS NULL AND (@EnableFlag = 3 OR a.Enable = @EnableFlag) -- DbStatus 3: Get both enabled and disabled AND b.DbName <> @PfILSDbName /* EHPMEBSCOADMIN-1855: This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ END -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND b.SourceType <> 'M' AND b.DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.Id, a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , --dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) AS 'StartPageTemplate' , '' AS 'StartPageTemplate', 'Internal' AS Mode , NULL AS [AccessEndDate] , b.SourceType AS SourceType , 'R' AS DbFlag , 1 AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 WHERE a.DbVerNo > 0 -- The following update is common to both internal and paying customer UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, DisplayName ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 1, 2, 3, 4 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, SeqNo ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 5 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo END ELSE BEGIN IF (@CustType = 'S' OR @CustType ='T' OR @CustType ='U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT ISNULL(ISNULL(ip.SeqNo, a.SeqNo), 1) SeqNo , a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , a.SelDefault , a.StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' WHEN 'X' THEN 'Expired' ELSE 'N/A' END AS Mode , [AccessEndDate] = ISNULL(a.AccessEndDate, NULL) , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbList] b ON ( b.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 WHERE a.ProfNo = @ProfNo AND cedl.DbVerNo IS NULL AND (@EnableFlag = 3 OR a.Enable = @EnableFlag ) -- DbStatus 3: Get both enabled and disabled AND b.DbName <> @PfILSDbName /* EHPMEBSCOADMIN-1855: This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ -- UNION ALL -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT a.Id AS SeqNo , a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , 'Internal' AS Mode , NULL AS [AccessEndDate] , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) --ORDER BY SortField1 , SeqNo IF EXISTS ( SELECT 1 FROM @ProfDB WHERE DbFlag = 'P') UPDATE @ProfDB SET [pdb1].[DbFlag] = 'PM' -- Multiple Primary Databases FROM @ProfDB pdb1 WHERE [pdb1].[DbFlag] = 'P' END IF (@CustType = 'I' OR @CustType ='P') SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[AccessEndDate] , [pdb].[SourceType], [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName] ELSE SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[AccessEndDate] , [pdb].[SourceType], [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON pdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS null ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName] END
CREATE PROCEDURE [dbo].[EAUI_AddGlobalCluster_80] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(20), @XPath varchar(4000), @XPathEnh varchar(4000), @Notes nvarchar(1000), @Tag varchar(20), @Caption nvarchar(255)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID]=@ID ) BEGIN RAISERROR('The cluster %s already exists',16,-1,@ID) RETURN END DECLARE @SeqNo int BEGIN TRANSACTION INSERT INTO [dbo].[GlobalCluster] ([dbo].[GlobalCluster].[ID],[dbo].[GlobalCluster].[XPath],[dbo].[GlobalCluster].[XPathEnh],[dbo].[GlobalCluster].[Tag],[dbo].[GlobalCluster].[Notes]) VALUES (@ID,@XPath,@XPathEnh,@Tag,@Notes) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[GlobalClusterCaption]([dbo].[GlobalClusterCaption].[ID], [dbo].[GlobalClusterCaption].[LangCode], [dbo].[GlobalClusterCaption].[Caption]) VALUES (@ID, 'en', @Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Add Global Cluster', @ID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfileClustersByContentType_133] (@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @ContentType VARCHAR(50)) as BEGIN Declare @profNo int Declare @DbLabel varchar(10) declare @InterfaceID varchar(10) declare @Version varchar(10) select @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @DbLabel=[dbo].[Profile].[DbLabel] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID and [dbo].[Profile].[GroupID]=@GroupID and [dbo].[Profile].[ProfID]=@ProfID IF(@DbLabel NOT IN ('live', 'liveQC', 'rebuild', 'rebuildQC')) SELECT @DbLabel = 'custom' Declare @profDatabaseTable table (DbVerNo int) Insert @profDatabaseTable (DbVerNo) select distinct isnull(s.PhysDbVerNo, p.DbVerNo) as DbVerNo -- use physicalDB if database is subsetDB from [dbo].[ProfDatabase] p JOIN [dbo].[DbList] dbl ON p.DbVerNo=dbl.DbVerNo JOIN dbo.DbContentList dbcl ON dbl.ContentType=dbcl.ContentType AND dbcl.Description=@ContentType left outer join [dbo].[DbSubset] s on s.SubsetDbVerNo=p.DbVerNo where p.ProfNo=@ProfNo and ([p].[AccessEndDate] is null or datediff(hh, [p].[AccessEndDate], getdate())<0) and [p].[Enable]=1 select a.ClustId ID, isnull(isnull(pc.DefaultToOpen, ic.DefaultToOpen),0) as DefaultToOpen, dbo.EAIF_GetProfileClusterCaptions_99(@ProfNo, a.ClustNo) Captions, ISNULL(gcid.MinDisplay, gc.MinDisplay) AS MinDisplay, ISNULL(gcid.MaxDisplay, gc.MaxDisplay) AS MaxDisplay, ISNULL(gcid.MaxPercentageResults, gc.MaxPercentageResults) AS MaxPercentReturn from ( --Clusters that are enabled for the profile databases -- a. all explicitly enabled clusters select cl.ClustNo, cl.ClustId, cl.SeqNo from [dbo].[ClusterList] cl join [dbo].[DbCluster] dc On cl.ClustNo=dc.ClustNo join @profDatabaseTable pdb On pdb.DbVerNo=dc.DbVerNo where dc.Enable=1 and cl.DbLabel = @DbLabel union -- b.AutoAdded clusters, not explicitly disabled select cl.ClustNo,cl.ClustId,cl.SeqNo from @profDatabaseTable pdb join [dbo].[ClusterList] cl on 1=1 left outer join [dbo].[DbCluster] dc on pdb.DbVerNo=dc.DbVerNo and cl.ClustNo=dc.ClustNo and dc.Enable=0 where (cl.AutoAdd2Db=1 AND cl.DbLabel=@DbLabel and dc.DbVerNo is null) ) a left outer join [dbo].[ProfileClusters2] pc on pc.ProfNo = @ProfNo AND a.ClustNo = pc.ClustNo left outer join [dbo].[InterfaceClusters] ic on ic.InterfaceID=@InterfaceID and ic.Version=@Version and a.ClustNo=ic.ClustNo JOIN [dbo].[GlobalCluster] AS gc ON a.ClustId = gc.ID LEFT OUTER JOIN [dbo].[GlobalClusterInterface] AS gci ON gci.ClustId = gc.ID AND gci.InterfaceId = @InterfaceID AND gci.Version = @Version LEFT OUTER JOIN [dbo].[GlobalClusterInterfaceDetails] AS gcid ON gcid.ClustId = gci.ClustId AND gcid.InterfaceId = gci.InterfaceId AND gcid.Version = gci.Version where isnull(pc.Show, ISNULL(gcid.Show, gc.Show))=1 AND ((gc.AutoAdd2Interfaces=0 and gci.ClustId is not null) or gc.AutoAdd2Interfaces=1) order by ISNULL(pc.SeqNo, a.SeqNo) END
CREATE PROCEDURE [dbo].[BLL_GetFunFacts]( @InterfaceID varchar(10) ) AS BEGIN SELECT [dbo].[FunFacts].[FactNo], [dbo].[FunFacts].[Title], SUBSTRING([dbo].[FunFacts].[Fact],1,255) as 'Fact1', SUBSTRING([dbo].[FunFacts].[Fact],256,1000) as 'Fact2', [dbo].[FunFacts].[Image] FROM [dbo].[FunFacts] WHERE [dbo].[FunFacts].[InterfaceID]=@InterfaceID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceParamList_89] (@InterfaceID varchar(10), @Version varchar(10), @ExpandedParams varchar(8000))AS BEGIN DECLARE @ExpParams TABLE (ParamNo Smallint) INSERT INTO @ExpParams (ParamNo) SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ExpandedParams,',') SELECT a.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, -- IsNull(e.PromptText, d.PromptText) PromptText, isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText AS [Description], a.EditLevel, DisplayLink=case When [b].[ParamType] in ('N', 'S', 'B', 'M') Then 1 When [b].[ParamType]='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where a.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 2 When [b].[ParamType]='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 3 Else 0 End, (SELECT Count(cplChildren.ParamNo) FROM [dbo].[CustomParamList] cplChildren WHERE cplChildren.ParentParamNo = b.ParamNo) NChildren, 1 Indent, -- IsNull(e.PromptText, d.PromptText) SortName, isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText as SortName, --d.PromptText SortName, 1 as EditDetails FROM [dbo].[InterfaceParamList] a INNER JOIN [dbo].[CustomParamList] b ON a.ParamNo= b.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo -- Left Outer join InterfaceCustomParamEditDetail e on b.ParamNo=e.ParamNo And e.InterfaceID=@InterfaceID and e.Version=@Version WHERE a.InterfaceID = @InterfaceID AND a.Version=@Version AND b.ParamLevel = 'P' AND b.ParentParamNo IS Null union SELECT a.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, -- IsNull(e.PromptText, d.PromptText) PromptText, isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText AS [Description], a.EditLevel, DisplayLink=case When b.ParamType in ('N', 'S', 'B', 'M') Then 1 When b.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where a.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 2 When b.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 3 Else 0 End, (SELECT Count(cplChildren.ParamNo) FROM [dbo].[CustomParamList] cplChildren WHERE cplChildren.ParentParamNo = b.ParamNo) NChildren, 2 Indent, -- dp.PromptText + IsNull(e.PromptText, d.PromptText) SortName, dp.PromptText + isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText as SortName, --dp.PromptText + d.PromptText SortName, 1 as EditDetails FROM [dbo].[InterfaceParamList] a INNER JOIN [dbo].[CustomParamList] b ON a.ParamNo= b.ParamNo INNER JOIN [dbo].[CustomParamList] bp ON b.ParentParamNo = bp.ParamNo INNER JOIN @ExpParams ep ON bp.ParamNo = ep.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] dp ON bp.ParamNo=dp.ParamNo -- Left Outer join InterfaceCustomParamEditDetail e on b.ParamNo=e.ParamNo And e.InterfaceID=@InterfaceID and e.Version=@Version WHERE a.InterfaceID = @InterfaceID AND a.Version=@Version AND b.ParamLevel = 'P' UNION SELECT a.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, -- IsNull(e.PromptText, d.PromptText) PromptText, isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText AS [Description], a.EditLevel, DisplayLink=case When b.ParamType in ('N', 'S', 'B', 'M') Then 1 When b.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where a.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 2 When b.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 3 Else 0 End, (SELECT Count(cplChildren.ParamNo) FROM [dbo].[CustomParamList] cplChildren WHERE cplChildren.ParentParamNo = b.ParamNo) NChildren, 3 Indent, -- dpp.PromptText + dp.PromptText + IsNull(e.PromptText, d.PromptText) SortName, dp.PromptText + isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText as SortName, --dpp.PromptText + dp.PromptText + d.PromptText SortName, 1 as EditDetails FROM [dbo].[InterfaceParamList] a INNER JOIN [dbo].[CustomParamList] b ON a.ParamNo= b.ParamNo INNER JOIN [dbo].[CustomParamList] bp ON b.ParentParamNo = bp.ParamNo INNER JOIN [dbo].[CustomParamList] bpp ON bp.ParentParamNo = bpp.ParamNo INNER JOIN @ExpParams ep ON bpp.ParamNo = ep.ParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] dp ON bp.ParamNo=dp.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] dpp ON bpp.ParamNo=dpp.ParamNo -- Left Outer join InterfaceCustomParamEditDetail e on b.ParamNo=e.ParamNo And e.InterfaceID=@InterfaceID and e.Version=@Version WHERE a.InterfaceID = @InterfaceID AND a.Version=@Version AND b.ParamLevel = 'P' ORDER BY SortName SELECT [dbo].[InterfaceParamList2].[ParamNo], [dbo].[InterfaceParamList2].[Mode], [dbo].[InterfaceParamList2].[EditLevel] FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version END
--sql content merged from file: \StoredProcedures\EARI_GetTargetTypeList_70.sql CREATE PROCEDURE [dbo].[EARI_GetTargetTypeList_70] (@p_CustID varchar(10)) AS BEGIN /*2/25/2009 Admin 9.4 EhIS*/ declare @sql varchar(4000) set @sql = 'select [TargetId] = FieldCode, [TargetDesc] = Description from dbo.StringValueMap where FieldName in (''SLCategory'', ''CLCategory'')' if (len(@p_CustID)>0) begin set @sql = @sql + ' and FieldCode <> ''ehis''' if exists(select 1 from dbo.CustExternalDbList exlt join dbo.Customer cust on cust.CustNo = exlt.CustNo where cust.CustID = @p_CustID) set @sql = @sql + ' union all select [TargetId] = FieldCode, [TargetDesc] = Description from dbo.StringValueMap where FieldName = ''CLCategory'' and FieldCode = ''ehis'' order by 2' else set @sql = @sql + ' order by 2' end else set @sql = @sql + ' order by 2' exec (@sql) END
CREATE PROCEDURE [dbo].[EPCAS_GetSortOption](@MasterDbList int, @DBVersion int ) AS BEGIN SELECT [dbo].[DbSort].[SortID], [dbo].[DbSort].[SortName], [dbo].[DbSort].[SortField] FROM [dbo].[DbSort] WHERE [dbo].[DbSort].[DbVerNo] = @MasterDbList AND [dbo].[DbSort].[SortField] <> '' ORDER BY [dbo].[DbSort].[SeqNo] END
CREATE FUNCTION [dbo].[EAIF_GetProfShortInfo_235] ( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) RETURNS @ResTable TABLE (ProfNo INT,InterfaceID VARCHAR(10), Version VARCHAR(10)) AS BEGIN INSERT INTO @ResTable SELECT TOP 1 [ProfNo], InterfaceID, [Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID DECLARE @ProfNo INT = (SELECT TOP 1 ProfNo FROM @ResTable) IF @ProfNo IS NULL AND @ProfID='web' BEGIN INSERT INTO @ResTable SELECT TOP 1 [ProfNo], InterfaceID, [Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]='ehost' RETURN END RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbPickupLocationsForCatalog_141] (@DbName varchar(10), @DbLabel varchar (10)) AS BEGIN /* EHPMEBSCOADMIN-1860: Procedure called to populate the Default Pickup Location (on new ILS Integration tab)*/ DECLARE @DbVerNo int SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] from [dbo].[DbList] Where [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel Select [l].[LocationID],l.DisplayName FROM [dbo].[DbPickupLocation] l INNER JOIN [dbo].[DbList] d on d.DbVerNo=l.DbVerNo Where d.DbName =@DbName AND d.DbLabel=@DbLabel Order by [l].[SeqNo] END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseToolbarItems_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION DELETE dbf FROM [dbo].[DbFeature] dbf Join [dbo].[FeatureList] fl on dbf.FeatureNo = fl.FeatureNo AND fl.Category='lpt' JOIN #TempDbListTable t on dbf.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbFeature] SELECT t.UpperDbVerNo, dbf.FeatureNo FROM [dbo].[DbFeature] dbf Join [dbo].[FeatureList] fl on dbf.FeatureNo = fl.FeatureNo AND fl.Category='lpt' JOIN #TempDbListTable t ON dbf.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceFeatureValues_77](@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @ItemNo int, @FieldsXML nvarchar(max))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FieldsXML1 XML DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo SET @FieldsXML1 = CAST (@FieldsXML as XML) BEGIN TRANSACTION UPDATE [dbo].[InterfaceFeatureValues] SET [dbo].[InterfaceFeatureValues].[FieldValueXml]=@FieldsXML1 WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]=@ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Update Feature Values', @InterfaceID,@Version,@FeatureName,@ItemNo COMMIT TRANSACTION END
--IF EXISTS (SELECT * FROM sysobjects WHERE type = 'FN' AND name = 'EAIF_GetTitleNoByTitle_79') --BEGIN -- DROP FUNCTION dbo.EAIF_GetTitleNoByTitle_79 --END --GO CREATE FUNCTION [dbo].[EAIF_GetTitleNoByTitle_79](@Title nvarchar(430)) RETURNS int AS BEGIN --Make sure that the Title matches exactly and has valid ISSN number. SET @Title = Lower(RTrim(@Title)) RETURN ( SELECT min([dbo].[MasterTitle].[TitleNo]) FROM [dbo].[MasterTitle] WITH(NOLOCK) WHERE [dbo].[MasterTitle].[TitleChecksum]=checksum(@Title) and Lower(RTrim([dbo].[MasterTitle].[Title]))=@Title AND Len([dbo].[MasterTitle].[ISSN]) > 0 ) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerList_Paged_203] @pageIndex INT = 0, @pagSize INT = 10 AS BEGIN SELECT cust.RowNr, cust.CustID, cust.CustName, cust.ParentID FROM ( SELECT ROW_NUMBER() OVER(ORDER BY [CustName]) AS RowNr, c.CustID, c.CustName, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') AS ParentID FROM [dbo].[Customer] c WHERE c.CustID <> 'system' AND c.CustType <> 'U' ) cust WHERE cust.RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize END
CREATE PROCEDURE [dbo].[EAIP_DeleteCustCatalogNotificationConfigSettings_142]( @CallerUserID nvarchar(255), @CallerUserIP varchar(20), @CustID varchar(10), @SubscriberID varchar(10), @SubscriptionNo int=0 ) AS BEGIN SET NOCOUNT ON BEGIN TRY BEGIN TRANSACTION Delete [dbo].[CustCatalogNotificationConfig] From [dbo].[CustCatalogNotificationConfig] cn INNER JOIN EASUPPORT.dbo.CustomerCatalogs cc ON cc.CustID = cn.CustID AND cc.DbName = cn.DbName WHERE cc.SubscriptionNo=@SubscriptionNo AND cc.SubscriberID=@SubscriberID AND cc.CustID=@CustID AND [cc].[Owned]=0 EXEC [dbo].[EAIP_LogActivity_70] @CallerUserID, @CallerUserIP, 'DeleteSubscription','Delete CustCatalogNotificationConfigSetting', @CustID, @SubscriberID, @SubscriptionNo COMMIT TRANSACTION END TRY BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
/* =========================================================================== Developer: Anne Wan Create date: 3/24/2008 Description: Get all distinct End Dates in EASUPPORT.dbo.CustSubscription exec EAIP_GetEndDateToProcess_91 =============================================================================*/ create procedure [dbo].[EAIP_GetEndDateToProcess_91] ( @p_CustID varchar(10) = 'all' --default ) as begin set nocount on if (select count([EASUPPORT].[dbo].[CustSubEndDates].[EndDate]) from EASUPPORT.dbo.CustSubEndDates) > 0 truncate table EASUPPORT.dbo.CustSubEndDates /*Get all distinct End Dates*/ if @p_CustID <> 'all' insert into EASUPPORT.dbo.CustSubEndDates([EASUPPORT].[dbo].[CustSubEndDates].[EndDate],[EASUPPORT].[dbo].[CustSubEndDates].[UpdatedBy]) select [EASUPPORT].[dbo].[CustSubscription].[EndDate], user from EASUPPORT.dbo.CustSubscription where [EASUPPORT].[dbo].[CustSubscription].[CustID] = @p_CustID and [EASUPPORT].[dbo].[CustSubscription].[Mode] in ('s','t') and year([EASUPPORT].[dbo].[CustSubscription].[EndDate]) between 1900 and 9000 group by [EASUPPORT].[dbo].[CustSubscription].[EndDate] else insert into EASUPPORT.dbo.CustSubEndDates([EASUPPORT].[dbo].[CustSubEndDates].[EndDate],[EASUPPORT].[dbo].[CustSubEndDates].[UpdatedBy]) select [EASUPPORT].[dbo].[CustSubscription].[EndDate], user from EASUPPORT.dbo.CustSubscription where year([EASUPPORT].[dbo].[CustSubscription].[EndDate]) between 1900 and 9000 and lower([EASUPPORT].[dbo].[CustSubscription].[Mode]) in ('s','t') group by [EASUPPORT].[dbo].[CustSubscription].[EndDate] if (select count([EASUPPORT].[dbo].[CustSubEndDates].[EndDate]) from EASUPPORT.dbo.CustSubEndDates) > 0 update EASUPPORT.dbo.CustSubEndDates set [EASUPPORT].[dbo].[CustSubEndDates].[AED_S90] = dbo.fn_GetEPAccessEndDate_90([EASUPPORT].[dbo].[CustSubEndDates].[EndDate],90,null,null), [EASUPPORT].[dbo].[CustSubEndDates].[AED_S30] = dbo.fn_GetEPAccessEndDate_90([EASUPPORT].[dbo].[CustSubEndDates].[EndDate],30,null,null) declare @RowCnt int set @RowCnt = (select count([EASUPPORT].[dbo].[CustSubEndDates].[EndDate]) from EASUPPORT.dbo.CustSubEndDates) print 'There are ' + cast(@RowCnt as varchar) + ' distinct End Dates to look up at this running.' set nocount off end
CREATE PROCEDURE [dbo].[EAUI_ReorderDatabaseInterfaceAuthorities_85]( @UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @MainDbVerNo int, @AuthDbList varchar(8000), @OrderList varchar(8000)) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceDbAuthorityOrder] WHERE [dbo].[InterfaceDbAuthorityOrder].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceDbAuthorityOrder].[Version]=@Version AND [dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo]=@MainDbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceDbAuthorityOrder] ([dbo].[InterfaceDbAuthorityOrder].[InterfaceID],[dbo].[InterfaceDbAuthorityOrder].[Version],[dbo].[InterfaceDbAuthorityOrder].[MainDbVerNo],[dbo].[InterfaceDbAuthorityOrder].[AuthDbVerNo],[dbo].[InterfaceDbAuthorityOrder].[SeqNo]) SELECT @InterfaceID,@Version,@MainDbVerNo, CONVERT(int, a.Item),CONVERT(int,a.Value) FROM dbo.EAIF_GetItemValueTable_70(@AuthDbList, @OrderList,'+') a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @MainDbName varchar(10), @Dblabel varchar(10) SELECT @MainDbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@MainDbVerNo DECLARE @Interface varchar (25) SET @Interface = @InterfaceID+'/'+@Version EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID ,@UserIP,@MainDbName, @DbLabel,'Reorder Interface Authority', 'Interface',@Interface IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_CheckIfItIsDefaultProfile_131 (@ProfNo int) RETURNS BIT AS BEGIN DECLARE @returnValue bit; IF EXISTS (SELECT 1 FROM [dbo].[Profile] p INNER JOIN [dbo].[InterfaceVersion] iv ON iv.InterfaceID=p.InterfaceID AND iv.Version=p.Version WHERE p.ProfNo=@ProfNo AND p.ProfID = iv.DefProfID AND p.GroupID IN ('main','trial')) SET @returnValue= 1; ELSE SET @returnValue= 0; RETURN @returnValue; END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbParamXmlValueItem_70] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @DbName varchar(10), @DbLabel varchar(10), @ParamName varchar(100), @ItemName varchar(255)) AS BEGIN DECLARE @ParamNo int DECLARE @ActivityDesc varchar(255) SELECT @ParamNo = a.ParamNo, @ActivityDesc='Delete '+b.PromptText FROM [dbo].[DbParamList] a LEFT JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo=b.ParamNo WHERE a.ParamName=@ParamName DELETE FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo] = @DbVerNo AND [dbo].[DbParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[DbParamXmlValues].[ItemName] = @ItemName EXEC [dbo].[EAIP_LogDatabaseActivity_70] @UserID,@UserIP,@DbName, @DbLabel,@ActivityDesc,'',@ItemName END
CREATE PROCEDURE [dbo].[EAIP_CopySearchThemes_83] (@ThemeID varchar(20), @SearchString varchar(1500), @Image varchar(255), @ParentThemeID varchar(20), @CaptionsLangList nvarchar(max), @ImageAltTextsLangList nvarchar(max), @CustomAttributes xml, @DescriptionsLangList nvarchar(max)) AS BEGIN BEGIN TRANSACTION IF EXISTS (SELECT 1 FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID AND [dbo].[SearchTheme].[ParentThemeID]=@ParentThemeID) BEGIN UPDATE [dbo].[SearchTheme] WITH (ROWLOCK) SET [dbo].[SearchTheme].[SearchString]=@SearchString, [dbo].[SearchTheme].[Image]=@Image, [dbo].[SearchTheme].[ParentThemeID]=@ParentThemeID WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID --Due to Self-referential intgritiy key it is necessary to check for any errors. IF @@ERROR <> 0 RETURN IF @CaptionsLangList <> dbo.EAIF_SearchThemeLangAndCaptions_83(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeCaptions_83] @ThemeID,@CaptionsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @ImageAltTextsLangList <> dbo.EAIF_SearchThemeLangAndImgAltTexts_83(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeImgAltTexts_83] @ThemeID,@ImageAltTextsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @DescriptionsLangList <> dbo.EAIF_SearchThemeLangAndDescription_88(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeDescriptions_88] @ThemeID,@DescriptionsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE IF EXISTS (SELECT 1 FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID) BEGIN UPDATE [dbo].[SearchTheme] WITH (ROWLOCK) SET [dbo].[SearchTheme].[SearchString]=@SearchString, [dbo].[SearchTheme].[Image]=@Image, [dbo].[SearchTheme].[ParentThemeID]=@ParentThemeID WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID --Due to Self-referential intgritiy key it is necessary to check for any errors. IF @@ERROR <> 0 RETURN IF @CaptionsLangList <> dbo.EAIF_SearchThemeLangAndCaptions_83(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeCaptions_83] @ThemeID,@CaptionsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @ImageAltTextsLangList <> dbo.EAIF_SearchThemeLangAndImgAltTexts_83(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeImgAltTexts_83] @ThemeID,@ImageAltTextsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @DescriptionsLangList <> dbo.EAIF_SearchThemeLangAndDescription_88(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeDescriptions_88] @ThemeID,@DescriptionsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE IF NOT EXISTS (SELECT 1 FROM [dbo].[SearchTheme] WITH (NOLOCK) WHERE [dbo].[SearchTheme].[ThemeID]=@ThemeID) BEGIN INSERT INTO [dbo].[SearchTheme]([dbo].[SearchTheme].[ThemeID], [dbo].[SearchTheme].[SearchString], [dbo].[SearchTheme].[Image], [dbo].[SearchTheme].[ParentThemeID]) VALUES (@ThemeID, @SearchString, @Image, @ParentThemeID) IF @@ERROR <> 0 RETURN EXEC [dbo].[EAIP_CopySearchThemeCaptions_83] @ThemeID,@CaptionsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_CopySearchThemeImgAltTexts_83] @ThemeID,@ImageAltTextsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @DescriptionsLangList <> dbo.EAIF_SearchThemeLangAndDescription_88(@ThemeID) EXEC [dbo].[EAIP_CopySearchThemeDescriptions_88] @ThemeID,@DescriptionsLangList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDatabaseListWithExpFilteredPaged_252] ( @ProfNo INT ,@DbStatus CHAR(1) ,@SourceType CHAR(1) ,@browseField VARCHAR(25) = 'DbName' ,@browseTerm NVARCHAR(255) = '' ,@pageIndex INT = 0 ,@pageSize INT = 10 ) AS BEGIN --Note : A new version of the procedure (_132) created, as we are adding new input parameters -- @DbStatus : This parameter can have values '0','1','A' -- Where '0' - Get Disabled profile databases -- '1' - Get Enabled profile databases -- 'A' - Get All databases - both enabled /Disabled. (Applicable to Paying customers only) -- @SourceType : This parameter can have values 'C','D' and 'O' -- Where 'C' - Includes Catalogs and IR's only -- 'D' - Includes Internal databases -- 'O' - All sources types other than 'C' and 'D'. -- @SourceType would be primarly used for internal customer only. -- The Show dropdown on Profile databases tab would have different options based on the customer type. -- For internal customer - Options available are Enabled, Disabled - Internal Databases, Disabled - Catalogs and IR's -- and Disabled - Others. -- There is NO option to get all disabled databases (for internal customer) to avoid performance issues. -- For Paying customer - Options available are Enabled, Disabled and 'All'. -- DECLARE @IndexBrowseParamNo INT DECLARE @RefSearchParamNo INT DECLARE @GroupDbs BIT DECLARE @ParamNo INT DECLARE @InterfaceID VARCHAR(10) DECLARE @Version VARCHAR(10) DECLARE @IsPrimaryDbAllowedOnIntf BIT DECLARE @CustType CHAR(1) DECLARE @ProfID VARCHAR(10) DECLARE @CustNo INT DECLARE @DbLabel VARCHAR(10) DECLARE @EnableFlag int DECLARE @PfILSDbName varchar (10) SELECT @CustType = [b].[CustType] , @ProfID = a.ProfID , @CustNo = b.CustNo , @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo = @ProfNo SET @PfILSDbName = 'pfils' /* This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ IF @DbStatus = 'A' SET @EnableFlag = 3 ELSE SET @EnableFlag = @DbStatus DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) IF ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag = 0) BEGIN IF @SourceType = 'D' OR @SourceType='C' INSERT INTO @ProfDbsForIntCustomer ( DbVerNo) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType =@SourceType AND a.DbName <> @PfILSDbName /* EHPMEBSCOADMIN-1855: This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ ORDER BY a.DisplayName asc -- Index connectors. -- Check if the profile interface supports 'M' type databases. ELSE IF @SourceType='O' AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN EASUPPORT.dbo.ProductInterface pi ON p.InterfaceID=pi.InterfaceID AND p.Version=pi.Version JOIN EASUPPORT.dbo.Product pr ON pi.ProductID=pr.ProductID and pr.ProductType= 'M' WHERE p.ProfNo=@ProfNo) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType JOIN [dbo].[CustExternalDbList] cedl ON cedl.CustNo=@CustNo AND cedl.DbVerNo=a.DbVerNo LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType NOT IN ('D','C') AND cedl.Status='A' ORDER BY a.DisplayName asc END DECLARE @ProfDB TABLE ( GroupNo INT , GroupHeading VARCHAR(MAX) , SubGroupNo INT , RowNo INT , SeqNo INT , DbVerNo INT PRIMARY key, DisplayName NVARCHAR(MAX) , DbName VARCHAR(10) , SelDefault BIT , StartPage VARCHAR(20) , StartPageTemplate VARCHAR(MAX) , Mode VARCHAR(10) , AccessEndDate DATETIME , SourceType CHAR(1) , DbFlag VARCHAR(3) , SortField1 CHAR(1) , Enable BIT ) SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'groupProfDatabases' SELECT @GroupDbs = [dbo].[CustomParamScalarValues].[ParamValue] FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel] = 'P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @paramNo SELECT @InterfaceID = [dbo].[Profile].[InterfaceID] , @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT @IsPrimaryDbAllowedOnIntf = ISNULL([dbo].[InterfaceVersion].[AllowPrimaryDatabases], 0) FROM [dbo].[InterfaceVersion] WITH ( NOLOCK ) WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [cpd].[DefValue] FROM [dbo].[CustomParamDefaults] cpd JOIN [dbo].[Profile] p ON cpd.InterfaceID = p.InterfaceID AND cpd.Version = p.Version AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode WHERE p.ProfNo = @ProfNo AND [cpd].[ParamNo] = @ParamNo IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] = @ParamNo END END IF @GroupDbs = 1 BEGIN -- For Paying customers - All DbStatus (0 - Disabled,1 - Enabled ,3 --ALL) -- For Internal customers - DbStatus (1 - Enabled only) IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND b.SourceType <> 'M' AND b.DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.SeqNo , a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , --SelDefault = CASE WHEN @ProfID = 'eds' THEN 1 -- default to 1 for eds profile EHPMEBSCOADMIN-848 -- ELSE a.SelDefault -- END , a.SelDefault, a.StartPage , --dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) AS 'StartPageTemplate' , '' AS 'StartPageTemplate', CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' WHEN 'X' THEN 'Expired' ELSE 'N/A' END AS Mode , ISNULL(a.AccessEndDate, NULL) AS [AccessEndDate] , b.SourceType AS SourceType , 'R' AS DbFlag , 1 AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 WHERE a.ProfNo = @ProfNo AND a.DbVerNo = b.DbVerNo AND cedl.DbVerNo IS NULL AND (@EnableFlag = 3 OR a.Enable = @EnableFlag) -- DbStatus 3: Get both enabled and disabled AND b.DbName <> @PfILSDbName /* EHPMEBSCOADMIN-1855: This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ END -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND b.SourceType <> 'M' AND b.DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.Id, a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , --dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) AS 'StartPageTemplate' , '' AS 'StartPageTemplate', 'Internal' AS Mode , NULL AS [AccessEndDate] , b.SourceType AS SourceType , 'R' AS DbFlag , 1 AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 WHERE a.DbVerNo > 0 -- The following update is common to both internal and paying customer UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, DisplayName ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 1, 2, 3, 4 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, SeqNo ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 5 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo END ELSE BEGIN IF (@CustType = 'S' OR @CustType ='T' OR @CustType ='U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT ISNULL(ISNULL(ip.SeqNo, a.SeqNo), 1) SeqNo , a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , a.SelDefault , a.StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' WHEN 'X' THEN 'Expired' ELSE 'N/A' END AS Mode , [AccessEndDate] = ISNULL(a.AccessEndDate, NULL) , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a INNER JOIN [dbo].[DbList] b ON ( b.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 WHERE a.ProfNo = @ProfNo AND cedl.DbVerNo IS NULL AND (@EnableFlag = 3 OR a.Enable = @EnableFlag ) -- DbStatus 3: Get both enabled and disabled AND b.DbName <> @PfILSDbName /* EHPMEBSCOADMIN-1855: This is a database for internal use ONLY (to track a specific subscription in Admin UI). There is no content behind it. */ -- UNION ALL -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , AccessEndDate , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT a.Id AS SeqNo , a.DbVerNo , -- b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , CASE WHEN db.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' END AS DisplayName, b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , 'Internal' AS Mode , NULL AS [AccessEndDate] , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo LEFT OUTER JOIN [dbo].[DbList] db ON db.DbVerNo=a.DbVerNo AND db.NonSearchableDb=1 LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) --ORDER BY SortField1 , SeqNo IF EXISTS ( SELECT 1 FROM @ProfDB WHERE DbFlag = 'P') UPDATE @ProfDB SET [pdb1].[DbFlag] = 'PM' -- Multiple Primary Databases FROM @ProfDB pdb1 WHERE [pdb1].[DbFlag] = 'P' END DECLARE @ProfileDatabases TABLE ( GroupNo INT ,GroupHeading VARCHAR(MAX) ,SubGroupNo INT ,RowNo INT ,SeqNo INT ,DbVerNo INT PRIMARY KEY ,DisplayName NVARCHAR(MAX) ,DbName VARCHAR(10) ,SelDefault BIT ,StartPage VARCHAR(20) ,StartPageTemplate VARCHAR(MAX) ,Mode VARCHAR(10) ,AccessEndDate DATETIME ,SourceType CHAR(1) ,DbFlag VARCHAR(3) ,SortField CHAR(1) ,[Enable] BIT ); IF (@CustType = 'I' OR @CustType ='P') INSERT INTO @ProfileDatabases SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[AccessEndDate] , [pdb].[SourceType], [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName] ELSE INSERT INTO @ProfileDatabases SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[AccessEndDate] , [pdb].[SourceType], [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON pdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS null ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName]; WITH CTE AS ( SELECT [pdb].[GroupNo] ,[pdb].[GroupHeading] ,[pdb].[SubGroupNo] ,[pdb].[RowNo] ,[pdb].[SeqNo] ,[pdb].[DbVerNo] ,[pdb].[DisplayName] ,[pdb].[DbName] ,[pdb].[SelDefault] ,[pdb].[StartPage] ,[pdb].[StartPageTemplate] ,[pdb].[Mode] ,[pdb].[AccessEndDate] ,[pdb].[SourceType] ,[pdb].[DbFlag] ,[pdb].[SortField] ,[pdb].[Enable] FROM @ProfileDatabases pdb WHERE @browseTerm = '' OR (@browseField = 'DbName' AND DbName LIKE '%' + @browseTerm + '%') OR (@browseField = 'DisplayName' AND DisplayName LIKE '%' + @browseTerm + '%') ), PagedCte AS ( SELECT [GroupNo] ,[GroupHeading] ,[SubGroupNo] ,[RowNo] ,[SeqNo] ,[DbVerNo] ,[DisplayName] ,[DbName] ,[SelDefault] ,[StartPage] ,[StartPageTemplate] ,[Mode] ,[AccessEndDate] ,[SourceType] ,[DbFlag] ,[SortField] ,[Enable] FROM CTE ORDER BY [GroupNo] ,[SubGroupNo] ,[RowNo] ,[SortField] ,[SeqNo] ,[DisplayName] OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT [GroupNo] ,[GroupHeading] ,[SubGroupNo] ,[RowNo] ,[SeqNo] ,[DbVerNo] ,[DisplayName] ,[DbName] ,[SelDefault] ,[StartPage] ,[StartPageTemplate] ,[Mode] ,[AccessEndDate] ,[SourceType] ,[DbFlag] ,[SortField] ,[Enable] ,NULL TotalCount FROM PagedCte UNION ALL SELECT NULL [GroupNo] ,NULL [GroupHeading] ,NULL [SubGroupNo] ,NULL [RowNo] ,NULL [SeqNo] ,NULL [DbVerNo] ,NULL [DisplayName] ,NULL [DbName] ,NULL [SelDefault] ,NULL [StartPage] ,NULL [StartPageTemplate] ,NULL [Mode] ,NULL [AccessEndDate] ,NULL [SourceType] ,NULL [DbFlag] ,NULL [SortField] ,NULL [Enable] ,COUNT(*) TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_AddGlobalDbSearchTagDetails_82](@UserID nvarchar(20), @UserIP varchar(15),@Tag varchar(10), @Description nvarchar(255), @AutoAdd bit) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[GlobalSearchTags] WHERE [dbo].[GlobalSearchTags].[Tag]=@Tag) BEGIN RAISERROR('The %s search tag already exists',16,-1,@Tag) RETURN END DECLARE @SeqNo int SELECT @SeqNo=ISNULL(MAX([dbo].[GlobalSearchTags].[SeqNo]+1),1) FROM [dbo].[GlobalSearchTags] BEGIN TRANSACTION INSERT INTO [dbo].[GlobalSearchTags]([dbo].[GlobalSearchTags].[Tag],[dbo].[GlobalSearchTags].[Description],[dbo].[GlobalSearchTags].[AutoAdd],[dbo].[GlobalSearchTags].[SeqNo]) VALUES (@Tag,@Description, @AutoAdd , @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'GlobalDbSearchTags','Add Tag', @Tag, @Description COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfileContentVertical_162] (@CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10)) AS BEGIN --Note: there are no expectations that a list of dbtarget will be verified on the correctness. DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF @InterfaceID IS NULL BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END --this will be customized on profile level later DECLARE @Enable Bit SET @Enable=1 SELECT l.ContentVerticalID, l.ContentVerticalName, @Enable AS Enabled, d.DbTarget, d.SearchServiceAPIConfigXML FROM dbo.ContentVerticalType l INNER JOIN dbo.InterfaceCVType i ON l.ContentVerticalNo = i.ContentVerticalNo AND i.InterfaceID=@InterfaceID AND i.Version=@Version LEFT OUTER JOIN dbo.InterfaceCVTypeDetails d ON i.IntfCVTypeNo=d.IntfCVTypeNo END
CREATE PROCEDURE [dbo].[BLL_GetGlobalLimiters](@CustID as varchar(10), @GroupID as varchar(10), @ProfID as varchar(10)) AS BEGIN -- Current CI-BLL applications (bir) does not make use of this data, so a dummy result is returned so as -- not to break the CI-BLL Code. They only use BLL_GetDbLimiters. DECLARE @GlobalLimiterTable TABLE ( LimiterNo int, ControlType int, ControlDefault int, Caption varchar(100), SearchString varchar(4000), SeqNo int) SELECT 17 as 'ControlType', typ.ControlTag, a.Caption, [a].[ControlDefault], Tag = 'FX', typ.ControlFormat, lst.ControlSize, '' as ColID, 0 as Category, ValueText='FT y', lst.LogicalOpCode, a.SeqNo FROM @GlobalLimiterTable a INNER JOIN [dbo].[LimiterList] lst ON a.LimiterNo=lst.LimiterNo CROSS JOIN [dbo].[LimiterControlType] typ WHERE typ.ControlType=17 END
--sql content merged from file: \StoredProcedures\EAUI_GetInterfaceParamListForAdd_70.sql CREATE PROCEDURE [dbo].[EAUI_GetInterfaceParamListForAdd_70] ( @InterfaceID varchar(10), @Version varchar(10) ) AS BEGIN -- we only support adding interfaces of client type web SELECT a.ParamNo, -- isNull(c.PromptText, b.PromptText) AS ParamName b.PromptText AS ParamName FROM [dbo].[CustomParamList] a JOIN [dbo].[CustomParamEditDetail] b ON a.ParamNo = b.ParamNo -- Left Outer Join InterfaceCustomParamEditDetail c ON a.ParamNo = c.ParamNo And c.InterfaceID=@InterfaceID and c.Version=@Version WHERE a.ParamLevel='P' AND a.WebClient=1 AND a.ParamNo NOT IN (SELECT [dbo].[InterfaceParamList].[ParamNo] FROM [dbo].[InterfaceParamList] Where [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceParamList].[Version]=@Version) AND a.ParentParamNo IS Null AND a.ParamNo <> dbo.EAIF_GetCustomParamNumber_70('profOtherSrvLinks','P') ORDER by [b].[PromptText] END
CREATE PROCEDURE dbo.EARI_GetUserDefinedList_70 ( @ParentID varchar(10) , @UdfNumber int ) AS BEGIN SELECT DISTINCT CASE @UdfNumber WHEN 1 THEN CDF.UserDefined1 ELSE CDF.UserDefined2 END AS UserDefined FROM dbo.CustDefField AS CDF INNER JOIN dbo.CustomerGroup AS CG ON CDF.CustID = CG.ChildID WHERE CG.ParentID = @ParentID AND CG.ChildID <> @ParentID ORDER BY UserDefined ASC END
CREATE PROCEDURE [dbo].[EPCAS_GetTrustedClients](@ServiceID varchar(20)) AS BEGIN DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int SELECT @xmlText=c.ParamValue, @xmlTextLen=DATALENGTH(c.ParamValue) FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigParamList] b ON a.ApplicationNo=b.ApplicationNo INNER JOIN [dbo].[ConfigParamXmlValues] c ON a.ApplicationNo=c.TargetNo AND b.ParamNo=c.ParamNo WHERE a.ApplicationID='amrc' AND b.ParamName='trustedClients' AND c.ParamLevel='A' AND c.ItemName='' IF @xmlTextLen < 8001 BEGIN --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText END ELSE BEGIN DECLARE @xml_0 varchar( 7500 ), @xml_1 varchar( 7500 ), @xml_2 varchar( 7500 ), @xml_3 varchar( 7500 ), @xml_4 varchar( 7500 ), @xml_5 varchar( 7500 ), @xml_6 varchar( 7500 ), @xml_7 varchar( 7500 ), @xml_8 varchar( 7500 ), @xml_9 varchar( 7500 ) -- Strip the text value into several varchar strings: SELECT @xml_0 = SUBSTRING( [c].[ParamValue], ( 0*7500 ) + 1, 7500 ), @xml_1 = SUBSTRING( [c].[ParamValue], ( 1*7500 ) + 1, 7500 ), @xml_2 = SUBSTRING( [c].[ParamValue], ( 2*7500 ) + 1, 7500 ), @xml_3 = SUBSTRING( [c].[ParamValue], ( 3*7500 ) + 1, 7500 ), @xml_4 = SUBSTRING( [c].[ParamValue], ( 4*7500 ) + 1, 7500 ), @xml_5 = SUBSTRING( [c].[ParamValue], ( 5*7500 ) + 1, 7500 ), @xml_6 = SUBSTRING( [c].[ParamValue], ( 6*7500 ) + 1, 7500 ), @xml_7 = SUBSTRING( [c].[ParamValue], ( 7*7500 ) + 1, 7500 ), @xml_8 = SUBSTRING( [c].[ParamValue], ( 8*7500 ) + 1, 7500 ), @xml_9 = SUBSTRING( [c].[ParamValue], ( 9*7500 ) + 1, 7500 ) FROM [dbo].[ConfigApplication] a INNER JOIN [dbo].[ConfigParamList] b ON a.ApplicationNo=b.ApplicationNo INNER JOIN [dbo].[ConfigParamXmlValues] c ON a.ApplicationNo=c.TargetNo AND b.ParamNo=c.ParamNo WHERE a.ApplicationID='amrc' AND b.ParamName='trustedClients' AND c.ParamLevel='A' AND c.ItemName='' EXEC [dbo].[EAIPO_XmlPrepareDocument_70] @xmlDocHandle OUTPUT, @xml_0,@xml_1, @xml_2, @xml_3, @xml_4, @xml_5, @xml_6, @xml_7, @xml_8, @xml_9 END -- Execute a SELECT statement that uses the OPENXML rowset provider. SELECT cid as 'ClientId', cidDesc as 'Description', Internal=CASE WHEN internal='Y' THEN 1 ELSE 0 END, ip as 'IPAddress' FROM OPENXML (@xmlDocHandle, '/trustedClients/trustedClient/ip', 2) WITH (cid varchar(25) '../@cid', cidDesc varchar(255) '../@desc', internal char(1) '../@internal', ip varchar(30) 'text()') ORDER BY cid EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END
Create Function [dbo].[EAIF_GetPromoteDbList_161](@DbName varchar(10), @OldDbLabel varchar(10), @NewDbLabel varchar(10), @Authorities bit, @SubsetDbs bit) Returns @TempDbListTable table (LowerDbVerNo int, UpperDbVerNo int, MainDb bit, Authority bit, Subset bit, NewDb bit Default(0)) As Begin -- get list of database to be promoted -- main db Insert @TempDbListTable ([dbo].[EAIF_GetPromoteDbList_161].[LowerDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[UpperDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[MainDb], [dbo].[EAIF_GetPromoteDbList_161].[Authority], [dbo].[EAIF_GetPromoteDbList_161].[Subset]) select dbl1.DbVerNo, dbl2.DbVerNo, 1, 0, 0 from [dbo].[DbList] dbl1 left outer join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel Where dbl1.DbName=@DbName and dbl1.DbLabel=@OldDbLabel if (@SubsetDbs=1) Begin -- Subsets of main db Insert @TempDbListTable ([dbo].[EAIF_GetPromoteDbList_161].[LowerDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[UpperDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[MainDb], [dbo].[EAIF_GetPromoteDbList_161].[Authority], [dbo].[EAIF_GetPromoteDbList_161].[Subset]) select SubsetDbVerNo, dbl2.DbVerNo, 0, 0, 1 from [dbo].[DbSubset] dbs join @TempDbListTable t on dbs.PhysDbVerNo=t.LowerDbVerNo join [dbo].[DbList] dbl1 on dbs.SubsetDbVerNo=dbl1.DbVerNo left outer join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel -- Authorities of subsets Insert @TempDbListTable ([dbo].[EAIF_GetPromoteDbList_161].[LowerDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[UpperDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[MainDb], [dbo].[EAIF_GetPromoteDbList_161].[Authority], [dbo].[EAIF_GetPromoteDbList_161].[Subset]) Select distinct AuthDbVerNo, dbl2.DbVerNo, 0, 1, 0 from [dbo].[DbAuthority] dba join @TempDbListTable t on dba.MainDbVerNo=t.LowerDbVerNo and [Subset]=1 join [dbo].[DbList] dbl1 on dba.AuthDbVerNo=dbl1.DbVerNo and dbl1.DbType<>4 left outer join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel -- Subsets of authorities of subsets Insert @TempDbListTable ([dbo].[EAIF_GetPromoteDbList_161].[LowerDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[UpperDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[MainDb], [dbo].[EAIF_GetPromoteDbList_161].[Authority], [dbo].[EAIF_GetPromoteDbList_161].[Subset]) select SubsetDbVerNo, dbl2.DbVerNo, 0, 0, 1 from [dbo].[DbSubset] dbs join @TempDbListTable t on dbs.PhysDbVerNo=t.LowerDbVerNo and [Authority]=1 join [dbo].[DbList] dbl1 on dbs.SubsetDbVerNo=dbl1.DbVerNo left outer join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel End if (@Authorities=1) Begin -- Authorities of main db Insert @TempDbListTable ([dbo].[EAIF_GetPromoteDbList_161].[LowerDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[UpperDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[MainDb], [dbo].[EAIF_GetPromoteDbList_161].[Authority], [dbo].[EAIF_GetPromoteDbList_161].[Subset]) Select distinct AuthDbVerNo, dbl2.DbVerNo, 0, 1, 0 from [dbo].[DbAuthority] dba join @TempDbListTable t on dba.MainDbVerNo=t.LowerDbVerNo and [MainDb]=1 join [dbo].[DbList] dbl1 on dba.AuthDbVerNo=dbl1.DbVerNo and dbl1.DbType<>4 left outer join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel -- Subset of Authorities Insert @TempDbListTable ([dbo].[EAIF_GetPromoteDbList_161].[LowerDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[UpperDbVerNo], [dbo].[EAIF_GetPromoteDbList_161].[MainDb], [dbo].[EAIF_GetPromoteDbList_161].[Authority], [dbo].[EAIF_GetPromoteDbList_161].[Subset]) select SubsetDbVerNo, dbl2.DbVerNo, 0, 0, 1 from [dbo].[DbSubset] dbs join @TempDbListTable t1 on dbs.PhysDbVerNo=t1.LowerDbVerNo and [Authority]=1 join [dbo].[DbList] dbl1 on dbs.SubsetDbVerNo=dbl1.DbVerNo left outer join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel left outer join @TempDbListTable t2 on dbs.SubsetDbVerNo=t2.LowerDbVerNo where t2.LowerDbVerNo is null End Return End
-- get the Enable, Config and Translation data for the given database CREATE PROCEDURE [dbo].[EAUI_GetDbRTACInfo_101] (@DbVerNo int) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; SELECT [dbo].[DbRTACInfo].[Enable], [dbo].[DbRTACInfo].[Config], [dbo].[DbRTACInfo].[Translation], [dbo].[DbRTACInfo].[ILSIntegration] FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseTopics_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try BEGIN TRANSACTION DELETE dbt FROM [dbo].[DbTopic] dbt JOIN #TempDbListTable t on dbt.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbTopic] SELECT t.UpperDbVerNo, dbt.TopicNo FROM [dbo].[DbTopic] dbt JOIN #TempDbListTable t ON dbt.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) COMMIT TRANSACTION End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceKnownSearchItem_103] (@UserID nvarchar(20),@UserIP varchar(30), @KnownSearchItemNo int, @SearchString nvarchar(255), @Label nvarchar(255), @GhostText nvarchar(255), @IsSelected bit, @LangCode varchar(10), @SeqNo smallint )AS BEGIN BEGIN TRANSACTION BEGIN TRY UPDATE [dbo].[InterfaceKnownSearchItems] SET [dbo].[InterfaceKnownSearchItems].[SearchString]=@SearchString, [dbo].[InterfaceKnownSearchItems].[SeqNo]=@SeqNo, [dbo].[InterfaceKnownSearchItems].[IsSelected]=@IsSelected WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]=@KnownSearchItemNo -- check if ghost text is 'empty' IF @GhostText = N'' SET @GhostText = NULL -- if removing label and ghost text for non-English language, delete it from the table IF @Label = N'' AND @GhostText IS NULL AND @LangCode != 'en' BEGIN DELETE FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo]=@KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode]=@LangCode END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo]=@KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceKnownSearchItemCaption] SET [dbo].[InterfaceKnownSearchItemCaption].[Label]=@Label, [dbo].[InterfaceKnownSearchItemCaption].[GhostText]=@GhostText WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo]=@KnownSearchItemNo AND [dbo].[InterfaceKnownSearchItemCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceKnownSearchItemCaption] ([dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo], [dbo].[InterfaceKnownSearchItemCaption].[LangCode], [dbo].[InterfaceKnownSearchItemCaption].[Label], [dbo].[InterfaceKnownSearchItemCaption].[GhostText]) VALUES (@KnownSearchItemNo, @LangCode, @Label, @GhostText) -- logging info DECLARE @Param1 varchar(1024) SELECT @Param1=[dbo].[InterfaceKnownSearchItems].[InterfaceID]+'-'+[dbo].[InterfaceKnownSearchItems].[Version] + ', KnownSearchItemNo ' + convert(varchar(20), @KnownSearchItemNo) FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]=@KnownSearchItemNo DECLARE @Param2 nvarchar(1024) SET @Param2=@Label + N', ' + @LangCode + N', ' + @SearchString + N', ' + CAST(@IsSelected as nvarchar(1)) + N', ' + ISNULL(@GhostText, N'') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceKnownSearchItems','Update Interface Known Search Item', @Param1, @Param2 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetTypeOfDatabaseAccess_91](@ProfNo int, @DbVerNo int) RETURNS char AS BEGIN DECLARE @Ret char SET @Ret = 'G' IF EXISTS (SELECT 1 FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo]=@ProfNo AND [dbo].[ProfDatabase].[DbVerNo]=@DbVerNo and [dbo].[ProfDatabase].[Enable]=1 AND ([dbo].[ProfDatabase].[Mode] is null OR [dbo].[ProfDatabase].[Mode]<>'X') AND ([dbo].[ProfDatabase].[AccessEndDate] is null or datediff(hh, [dbo].[ProfDatabase].[AccessEndDate], getdate())<0) ) SET @Ret = 'P' RETURN @Ret END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerListBrowseByCustID_70] (@CustID varchar(10)) as BEGIN SELECT TOP 1000 c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') as ParentID FROM [dbo].[Customer] c WHERE c.CustID like @CustID + '%' AND c.CustID<>'system' AND c.CustType <> 'U' ORDER BY c.CustID END
CREATE PROCEDURE [dbo].[EAIP_DeleteCustomerParamScalarValue_70](@CustID varchar(10),@ParamName varchar(100)) AS BEGIN DECLARE @ParamNo int DECLARE @CustNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70(@ParamName, 'C') SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) EXEC [dbo].[EAIP_DeleteCustomParamScalarValue_70] @CustNo, 'C', @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_GetExternalSourceDb_102] (@DbVerNo int, @lang VARCHAR(2)) as BEGIN -- 2011.12.26: jjalbert adds @lang parameter to get correct short description -- 2011.12.19: jjalbert makes changes as specified by rjain. -- 2012.02.28: jjalbert, ignore language, get all records SELECT l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, ISNULL(muse.ExternalDbID,'') AS ExternalSourceID, ISNULL(e.VendorName,'') AS Vendor, ISNULL(e.ConnectorType,'') AS ConnectorType, e.Free AS DbFree, l.SourceType, ISNULL(indexData.ExternalDbID,'') AS ExternalSourceID_I, ISNULL(e.Notes,'') as Notes, ISNULL(indexData.ProxyForResult, 1) AS ProxyForResult, ISNULL(indexData.ProxyForSearch,1) AS ProxyForSearch, ISNULL(indexData.ConnectorURL,'') AS ConnectorURL, ISNULL(indexData.KeyValuePairs,'') AS KeyValuePairs, e.ConnectorProvider , ISNULL(sv.ParamValue,'') AS ShortDescription, ISNULL(dpsv.ParamValue,'') AS ResourceType FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) INNER JOIN [dbo].[DbParamList] p1 on p1.ParamName = 'shortDescription' INNER JOIN [dbo].[DbParamList] p2 on p2.ParamName = 'ResourceType' LEFT OUTER JOIN [dbo].[DbParamXmlValues] sv ON sv.DbVerNo = e.DbVerNo AND sv.ParamNo = p1.ParamNo -- and sv.ItemName = @lang LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON (indexData.DbVerNo = e.DbVerNo) LEFT OUTER JOIN [dbo].[DbParamScalarValues] dpsv on dpsv.DbVerNo = e.DbVerNo AND dpsv.ParamNo = p2.ParamNo LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON muse.DbVerNo = @DbVerNo WHERE l.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_ReorderGlobalClusters_80] (@UserID nvarchar(20), @UserIP varchar(30),@IDList varchar(8000), @SeqNoList varchar(8000), @DbLabel varchar(10))AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[ClusterList] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[ClusterList] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@IDList, @SeqNoList,'+') b ON a.ClustId = b.Item WHERE a.DbLabel = @DbLabel IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Reorder Global Cluster' COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_CheckIfProfileHasEnabledDbs_131 (@ProfNo int,@UserEditLevel int) RETURNS BIT AS BEGIN DECLARE @returnValue bit; DECLARE @CustNo int DECLARE @ParamNo INT DECLARE @DefValue bit SELECT @ParamNo=dbpl.ParamNo, @DefValue=[dbpd].[DefValue] FROM dbo.DbParamList dbpl JOIN dbo.DbParamDefaults dbpd ON dbpl.ParamNo=dbpd.ParamNo WHERE [dbpl].[ParamName]='showOnProfDbList' SELECT @CustNo=b.CustNo FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo IF EXISTS (SELECT 1 FROM [dbo].[ProfDatabase] a Inner Join [dbo].[DbList] b on b.DbVerNo = a.DbVerNo LEFT OUTER JOIN dbo.DbParamScalarValues dbpsv ON b.DbVerNo=dbpsv.DbVerNo AND dbpsv.ParamNo=@ParamNo LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl on cedl.DbVerNo = a.DbVerNo and cedl.CustNo = @CustNo and cedl.Status = 'P' WHERE a.ProfNo = @ProfNo AND a.Enable = 1 AND cedl.DbVerNo is null AND (@UserEditLevel =1 OR ((a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ))) AND ISNULL(dbpsv.ParamValue, @DefValue)=1) SET @returnValue= 1; ELSE SET @returnValue= 0; RETURN @returnValue; END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbRTACInfo_101] (@UserID nvarchar(20), @UserIP varchar(30), @DbVerNo int) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; -- get the database info for logging DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo -- log the activity EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DbRTACInfo', 'Delete RTACInfo', @DbName,@Dblabel -- call the stored procedure to do the delete EXEC [dbo].[EAIP_DeleteDbRTACInfo_101] @DbVerNo END
CREATE PROCEDURE [dbo].[EAIP_CopyToolbarItem_77](@InterfaceID varchar(10), @Version varchar(10), @ItemName varchar(10), @Category varchar(50), @Alignment varchar(10),@Image varchar(255),@SeqNo int, @CaptionLangList nvarchar(max),@DbList varchar(max)) AS /** procedure is used by EPCopy **/ BEGIN INSERT INTO [dbo].[InterfaceToolbar]([dbo].[InterfaceToolbar].[InterfaceID],[dbo].[InterfaceToolbar].[Version],[dbo].[InterfaceToolbar].[ItemName],[dbo].[InterfaceToolbar].[Category],[dbo].[InterfaceToolbar].[Alignment],[dbo].[InterfaceToolbar].[Image],[dbo].[InterfaceToolbar].[SeqNo]) VALUES (@InterfaceID,@Version,@ItemName,@Category,@Alignment,@Image,@SeqNo) IF @@ERROR <> 0 RETURN DECLARE @IntfToolbarItem int SELECT @IntfToolbarItem =[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version AND [dbo].[InterfaceToolbar].[ItemName]=@ItemName DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList varchar(max) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim nchar(3) SET @LangDelim =N'|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=convert(varchar(max), SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList))) INSERT INTO [dbo].[InterfaceToolbarCaption]([dbo].[InterfaceToolbarCaption].[IntfToolbarItem],[dbo].[InterfaceToolbarCaption].[LangCode],[dbo].[InterfaceToolbarCaption].[Caption]) SELECT @IntfToolbarItem, cp.Value, cp.Item FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[InterfaceToolbarDb]([dbo].[InterfaceToolbarDb].[IntfToolbarItem], [dbo].[InterfaceToolbarDb].[DbVerNo]) SELECT @IntfToolbarItem, db.DbVerNo FROM dbo.EAIF_GetItemTable_70( @DbList, '+') AS a INNER JOIN [dbo].[DbList] AS db ON a.Item = db.DbName WHERE db.DbLabel='live' END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDBLimiterDefault_86]( @ProfNo int,@DbVerNo int,@LimiterNo int )AS BEGIN SELECT TOP 1 ll.LimiterId,lct.ControlTag, dbld.ControlTemplate, pdbl.DefValue, ISNULL(pdblc.Caption,dblc.Caption) AS Caption, db.DisplayName As DbLongName FROM [dbo].[LimiterList] ll INNER JOIN [dbo].[LimiterControlType] lct ON ll.ControlType=lct.ControlType INNER JOIN [dbo].[DbLimiterDetail] dbld ON dbld.LimiterNo=ll.LimiterNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdbl ON pdbl.ProfNo=@ProfNo AND dbld.DbVerNo=pdbl.DbVerNo AND dbld.LimiterNo=pdbl.LimiterNo LEFT OUTER JOIN [dbo].[ProfDbLimiterCaption2] pdblc ON pdblc.ProfNo=@ProfNo AND dbld.DbVerNo = pdblc.DbVerNo AND dbld.LimiterNo=pdblc.LimiterNo AND pdblc.LangCode ='en' INNER JOIN [dbo].[DbLimiterCaption] dblc ON dbld.DbVerNo = dblc.DbVerNo AND dbld.LimiterNo = dblc.LimiterNo INNER JOIN [dbo].[DbList] db ON dbld.DbVerNo = db.DbVerNo WHERE dbld.DbVerNo = @DbVerNo AND dbld.LimiterNo=@LimiterNo AND dblc.LangCode='en' END
CREATE PROCEDURE [dbo].[EAUI_AddGroup_80] (@UserID nvarchar(20), @UserIP varchar(30),@GroupID varchar(12), @Caption nvarchar(255), @MouseOverText nvarchar(255), @Notes nvarchar(255))AS BEGIN IF EXISTS(SELECT 1 FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID) BEGIN RAISERROR ('%s with ID %s already exists.',16,1, 'Group' ,@GroupID) RETURN END DECLARE @GroupNo int BEGIN TRANSACTION --Add new group INSERT INTO [dbo].[GroupList] ([dbo].[GroupList].[GroupID],[dbo].[GroupList].[GroupNotes]) VALUES (@GroupID,@Notes) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END --Add Caption and Mouse Over Text SELECT @GroupNo=[dbo].[GroupList].[GroupNo] FROM [dbo].[GroupList] WHERE [dbo].[GroupList].[GroupID]=@GroupID INSERT INTO [dbo].[GroupCaption] ([dbo].[GroupCaption].[GroupNo], [dbo].[GroupCaption].[LangCode],[dbo].[GroupCaption].[Caption],[dbo].[GroupCaption].[MouseOverText]) VALUES (@GroupNo,'en',@Caption,@MouseOverText) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP,'Groups','Add Group',@GroupID,@Caption,@MouseOverText,@Notes COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EPCS_GetProfileCustomAuthDbSettings_99.sql CREATE PROCEDURE [dbo].[EPCS_GetProfileCustomAuthDbSettings_99](@CustId varchar(10), @GroupID varchar(10), @ProfID varchar(10))AS BEGIN DECLARE @ProfNo int SELECT @ProfNo=dbo.EAIF_GetProfNo_70(@CustId,@GroupID,@ProfID) IF @ProfNo IS NULL RETURN Select * from ( --Get the Customized values from ProfAuthDbDefaults table SELECT au.DbName as AuthDbName, pa.BrowseMode as BrowseMode, pa.BoolOperator as LogicalOperator From [dbo].[ProfAuthDbDefaults] pa Inner Join [dbo].[DbList] au on (au.DbVerNo=pa.AuthDbVerNo) WHERE pa.ProfNo = @ProfNo UNION -- Default values for the Authority databases of Content type 10- MESH, 11-Thesaurus SELECT au.DbName as AuthDbName, ISNULL(dbo.EAIF_GetDbParamScalarValue_70(au.DbVerNo,'defaultThesaurusSearchMode'),'1') as BrowseMode, ISNULL(dbo.EAIF_GetDbParamScalarValue_70(au.DbVerNo,'defaultThesaurusLogicalOperator'),'0') as LogicalOperator FROM [dbo].[ProfDatabase] a Inner Join [dbo].[DbAuthority] da on (da.MainDbVerNo=a.DbVerNo) Inner Join [dbo].[DbList] au on (au.DbVerNo=da.AuthDbVerNo and au.ContentType in ('10','11')) Left outer join [dbo].[ProfAuthDbDefaults] pa ON (pa.ProfNo=a.ProfNo and pa.AuthDbVerNo=au.DbVerNo) WHERE a.ProfNo = @ProfNo and a.DbVerNo=da.MainDbVerNo AND a.Enable = 1 AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) AND pa.AuthDbVerNo is null ) s Order by [s].[AuthDbName] END
CREATE PROCEDURE [dbo].[BLL_GetGroupProfileInfo](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ProfNo int, @ProfPwd varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @STMode char(1), @ProfName varchar(100), @CustName varchar(100), @MsgText varchar(2000), @ColID varchar(50) SELECT @ProfNo=[p].[ProfNo], @ProfPwd=[p].[ProfPwd], @InterfaceID=[p].[InterfaceID], @Version=[p].[Version], @MarketID=p.MarketID, @STMode=[p].[STMode], @ProfName=[p].[ProfName], @CustName=[ct].[CustName] FROM [dbo].[Profile] p INNER JOIN [dbo].[Customer] ct ON p.CustID=ct.CustID WHERE p.CustID=@CustID AND [p].[GroupID]=@GroupID AND [p].[ProfID]=@ProfID AND [p].[DefLangCode]='en' SET @MsgText=dbo.EAIF_GetCustomParamScalarValue_70('defaultLocalsNoMessage', @Interfaceid,@version,@MarketID,@STMode,@ProfNo,'P') SET @ColID=dbo.EAIF_GetCustomParamScalarValue_70('localsKey', @Interfaceid,@version,@MarketID,@STMode,@ProfNo,'P') SELECT @ProfNo as 'Profile', @ProfPwd as 'ProfPwd', @InterfaceID as 'InterfaceID', @ProfName as 'Name', @ColID as 'ColID', @MsgText as 'MsgText', @CustName as 'CustName' END
--sql content merged from file: \StoredProcedures\EAUI_GetInterfaceParamNewProfileDefault_92.sql CREATE PROCEDURE [dbo].[EAUI_GetInterfaceParamNewProfileDefault_92]( @InterfaceID varchar(10), @Version varchar(10), @ParamNo int) AS BEGIN DECLARE @DefValue nvarchar(2000) SELECT @DefValue = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo SELECT e.MarketID, e.Description, ISNULL(ISNULL(convert(nvarchar(1000),a.NewProfileDefValue),convert(nvarchar(2000),a.DefValue)),@DefValue) AS SValue, ISNULL(ISNULL(convert(nvarchar(1000),b.NewProfileDefValue),convert(nvarchar(2000),b.DefValue)),@DefValue) AS TValue, CASE WHEN a.NewProfileDefValue is null THEN '**' ELSE '' END AS SDef, CASE WHEN b.NewProfileDefValue is null THEN '**' ELSE '' END AS TDef FROM EASUPPORT.dbo.MarketList e LEFT OUTER JOIN (SELECT [dbo].[CustomParamDefaults].[NewProfileDefValue], [dbo].[CustomParamDefaults].[DefValue], [dbo].[CustomParamDefaults].[MarketID] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[STMode]='S' AND [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) a ON e.MarketID=a.MarketID LEFT OUTER JOIN (SELECT [dbo].[CustomParamDefaults].[NewProfileDefValue], [dbo].[CustomParamDefaults].[DefValue], [dbo].[CustomParamDefaults].[MarketID] FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[STMode]='T' AND [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) b ON e.MarketID=b.MarketID END
CREATE PROCEDURE [dbo].[EATL_GetBrowseCaptionsByLangCode_76] (@LangCode varchar(10), @DbVerNo int) AS BEGIN SELECT bol.BrowseOptionId, dboc.OptionCaption, dboc.ResultCaption, dboc.Description FROM [dbo].[DbBrowseOption] dbo INNER JOIN [dbo].[BrowseOptionList] bol ON dbo.BrowseOptionNo = bol.BrowseOptionNo INNER JOIN [dbo].[DbBrowseOptionCaption] dboc ON dbo.DbVerNo = dboc.DbVerNo AND dbo.BrowseOptionNo = dboc.BrowseOptionNo WHERE dbo.DbVerNo = @DbVerNo AND dboc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCAS_GetUserGroupDatabase](@CustId varchar(10), @GroupId varchar(10)) AS BEGIN SELECT DISTINCT m.DbName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON p.ProfNo=d.ProfNo INNER JOIN [dbo].[DbList] m ON d.DbVerNo=m.DbVerNo WHERE p.CustID=@CustId AND p.GroupID=@GroupId AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable=1 AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) AND dbo.EAIF_GetDbParamScalarValue_70(m.DbVerNo, 'fullTextAllowed')='1' END
CREATE PROCEDURE [dbo].[EAUI_GetDbSearchContextMappingList_131](@DbVerNo INT) AS BEGIN SELECT [dbo].[DbSearchContextMapping].[ContextName] AS Context, [dbo].[DbSearchContextMapping].[ConceptName] AS Concept, [dbo].[DbSearchContextMapping].[SearchTag] FROM [dbo].[DbSearchContextMapping] WHERE [dbo].[DbSearchContextMapping].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseTopics_77]( @OldDbVerNo int, @NewDbVerNo int) AS BEGIN BEGIN TRANSACTION DELETE FROM [dbo].[DbTopic] WHERE [dbo].[DbTopic].[DbVerNo]=@NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbTopic] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbTopic].[TopicNo] FROM [dbo].[DbTopic] WHERE [dbo].[DbTopic].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceMDbSTSDetails_90] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MultiDbSTSID varchar(10), @SearchImage varchar(255)=null, @ResultImage varchar(255)=null, @DefValue bit, @LangCode varchar(10), @Caption nvarchar(255), @MouseOverText nvarchar(255)=null) AS begin try Declare @IntfMultiDbSTSNo int Select @IntfMultiDbSTSNo=[dbo].[InterfaceMultiDbSTSList].[IntfMultiDbSTSNo] from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version and [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID begin transaction Update [dbo].[InterfaceMultiDbSTSList] set [dbo].[InterfaceMultiDbSTSList].[SearchImage]=@SearchImage, [dbo].[InterfaceMultiDbSTSList].[ResultImage]=@ResultImage, [dbo].[InterfaceMultiDbSTSList].[DefValue]=@DefValue where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version and [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID if exists(Select 1 from [dbo].[InterfaceMultiDbSTSCaption] where [dbo].[InterfaceMultiDbSTSCaption].[IntfMultiDbSTSNo]=@IntfMultiDbSTSNo and [dbo].[InterfaceMultiDbSTSCaption].[LangCode]=@LangCode) Update [dbo].[InterfaceMultiDbSTSCaption] set [dbo].[InterfaceMultiDbSTSCaption].[Caption]=@Caption, [dbo].[InterfaceMultiDbSTSCaption].[MouseOverText]=@MouseOverText where [dbo].[InterfaceMultiDbSTSCaption].[IntfMultiDbSTSNo]=@IntfMultiDbSTSNo and [dbo].[InterfaceMultiDbSTSCaption].[LangCode]=@LangCode else Insert [dbo].[InterfaceMultiDbSTSCaption] ([dbo].[InterfaceMultiDbSTSCaption].[IntfMultiDbSTSNo], [dbo].[InterfaceMultiDbSTSCaption].[LangCode], [dbo].[InterfaceMultiDbSTSCaption].[Caption], [dbo].[InterfaceMultiDbSTSCaption].[MouseOverText]) Values (@IntfMultiDbSTSNo, @LangCode, @Caption, @MouseOverText) commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Update MDbSTS for Interface', @MultiDbSTSID, @InterfaceID, @Version End try begin catch rollback transaction end catch
CREATE FUNCTION dbo.EAIF_GetXmlAttribValue_70(@XmlText nvarchar(max), @AttribName varchar(255)) RETURNS nvarchar(max) AS BEGIN DECLARE @Start int, @End int DECLARE @Search varchar(8000) DECLARE @Value nvarchar(max) SET @Value='' SET @Search = ' '+@AttribName+'=' SET @Start = CHARINDEX(@Search,@XmlText,1) IF @Start > 0 BEGIN SET @Start = @Start + DataLength(@Search) SET @End = CHARINDEX('"',@XmlText,@Start+1) IF @End > 0 SET @Value=Substring(@XmlText,@Start+1, @End-@Start-1) END RETURN @Value END
Create PROCEDURE [dbo].[EAUI_GetCustomerListBrowseByCustID_90] ( @CustID varchar(10), @CallerFlgTxt varchar(30) = '' ) as BEGIN if (@CallerFlgTxt = '') SELECT TOP 1000 c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') as ParentID FROM [dbo].[Customer] c WHERE c.CustID like @CustID + '%' AND c.CustID<>'system' ORDER BY c.CustID /*08/25/2008 AW disallow internal users & partners adding subscription to db*/ else if (@CallerFlgTxt = 'util_AddModSub') select top 1000 [dbo].[Customer].[CustName], [dbo].[Customer].[CustID], ISNULL(dbo.EAIF_GetParents_70([dbo].[Customer].[CustID]),'') as ParentID from dbo.Customer where lower([dbo].[Customer].[CustType]) in ('s', 't') and [dbo].[Customer].[CustID] like @CustID + '%' and [dbo].[Customer].[CustID]<>'system' order by [dbo].[Customer].[CustID] END
CREATE PROCEDURE [dbo].[EAIP_DeleteCustomParamDefaultsByInterfaceVersion_182](@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID varchar(10), @Version VARCHAR(10)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamDefaults] Where [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Interfaces', 'DELETE CustomParamDefaults By InterfaceVersion', @InterfaceID, @Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
--sql content merged from file: \StoredProcedures\EAIP_GetExternalSourceDb_92.sql CREATE PROCEDURE [dbo].[EAIP_GetExternalSourceDb_92] (@DbVerNo int) as BEGIN -- Note : DbShortDescription is read in DataAccessLayer (see DaExternalSource.cs) SELECT l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, e.ExternalDbID as ExternalSourceID, ISNULL(e.VendorName,'') as Vendor, ISNULL(e.ConnectorType,'') as ConnectorType, e.Free as DbFree, l.SourceType FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) WHERE l.DbVerNo = @DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceDbSearchTags_82](@UserID nvarchar(20), @UserIP varchar(30),@InterfaceID varchar(10),@Version varchar(10),@TagList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[InterfaceSearchTagsCaption] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[InterfaceSearchTagsCaption] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@TagList, @SeqNoList,'+') b ON a.Tag = b.Item WHERE a.InterfaceID=@InterfaceID AND a.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceSearchTagsCaption] ([a].[InterfaceID],[a].[Version],[a].[Tag],[a].[SeqNo]) SELECT @InterfaceID, @Version, b.Item,CONVERT(int,b.Value) FROM dbo.EAIF_GetItemValueTable_70(@TagList, @SeqNoList,'+') b LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] a ON a.InterfaceID=@InterfaceID AND a.Version=@Version AND a.Tag = b.Item WHERE a.Tag is null IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceDbSearchTags','Reorder Search Tags', @InterfaceID,@Version COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_CheckIfProfileIsEISEnabled_104](@ProfNo int) RETURNS BIT AS BEGIN DECLARE @EISEnabled bit DECLARE @CustNo int SELECT @CustNo=b.CustNo FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo SET @EISEnabled = 0 IF EXISTS (SELECT 1 FROM [dbo].[ProfDatabase] a JOIN [dbo].[DbList] b ON b.DbVerNo=a.DbVerNo JOIN [dbo].[CustExternalDbList] cedl on cedl.DbVerNo = a.DbVerNo and cedl.CustNo = @CustNo and cedl.Status != 'P' WHERE a.ProfNo=@ProfNo AND b.SourceType = 'M' AND (a.Mode is null OR a.Mode<>'X') AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 )) SET @EISEnabled=1 RETURN @EISEnabled END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbSearchConceptMapping_131] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo INT, @Context VARCHAR(10), @Concept VARCHAR(20), @SearchTag NVARCHAR(5)) AS BEGIN DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION DELETE FROM dbo.DbSearchContextMapping WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchContextMapping].[ContextName] = @Context AND [dbo].[DbSearchContextMapping].[ConceptName] = @Concept AND [dbo].[DbSearchContextMapping].[SearchTag] = @SearchTag IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'DbSearchContextMapping', 'Delete DbSearchConcept', @DbName, @DbLabel, @Context, @Concept, @SearchTag COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyTopicCaptions_77] (@TopicNo int, @CaptionLangList nvarchar(max)) AS /** procedure is used by EPCopy **/ BEGIN --Begin of Captions init DECLARE @CaptionsList nvarchar(max) DECLARE @CLangList nvarchar(max) DECLARE @ValDelim char(1) SET @ValDelim = '|' DECLARE @LangDelim char(3) SET @LangDelim ='|||' SET @CaptionsList =SUBSTRING(@CaptionLangList, 1, CHARINDEX(@LangDelim,@CaptionLangList)-1) SET @CLangList=SUBSTRING(@CaptionLangList, CHARINDEX(@LangDelim,@CaptionLangList)+3, LEN(@CaptionLangList)) --End of Captions and Mouse over texts init DELETE FROM [dbo].[TopicCaption] WHERE [dbo].[TopicCaption].[TopicNo]=@TopicNo IF @@ERROR <> 0 RETURN INSERT INTO [dbo].[TopicCaption]([dbo].[TopicCaption].[TopicNo],[dbo].[TopicCaption].[LangCode],[dbo].[TopicCaption].[Caption]) SELECT @TopicNo, cp.Value, ISNULL(cp.Item,N'') FROM dbo.EAIF_GetItemValueTable_70( @CaptionsList,@CLangList,@ValDelim ) cp END
/**************** Changed for : Multi-Lingual Admin (To support Unicode, UTF8 Encoding - MBCS) Table Name : LimiterList Column/Field def : LimDesc corresponds to the Description (NOT NULL): nvarchar from varchar(100) Sproc Called by : DataAccess\Profile Called by page/app : UserInterface\Profiles\ProfileDbLimiterListItemsGrouped.aspx Version : 10.2 *****************/ CREATE procedure [dbo].[EAUI_GetProfileDbLimiterGroupedItemDetails_912] @ProfNo int, @LimiterNo int, @ScreenNo int AS BEGIN DECLARE @ProfCustId varchar(10) DECLARE @CurrDate datetime DECLARE @DbCnt int DECLARE @AddHeaderFlag bit SET @CurrDate=GETDATE() DECLARE @WRK_ProfDBsForLimiter TABLE ( LimiterNo int , LimiterID varchar(5), LimDesc nvarchar(100), DbVerNo int, DbSeqNo int ) INSERT INTO @WRK_ProfDBsForLimiter(LimiterNo, LimiterID, LimDesc, DbVerNo,DbSeqNo) SELECT dl.LimiterNo,l.LimiterId,l.Description,pd.DbVerNo,pd.SeqNo FROM [dbo].[DbLimiter] dl JOIN [dbo].[ProfDatabase] pd ON dl.DbVerNo=pd.DbVerNo LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON dl.DbVerNo=dil.DbVerNo AND dl.LimiterNo=dil.LimiterNo AND dil.IntfScreenNo=@ScreenNo JOIN [dbo].[LimiterList] l ON dl.LimiterNo=l.LimiterNo WHERE dl.LimiterNo=@LimiterNo AND [pd].[ProfNo]= @ProfNo AND pd.Enable=1 AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, @CurrDate)<0 ) AND (dl.ResFlag=1 OR dil.LimiterNo is not null) Select @ProfCustId=[dbo].[Profile].[CustID] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo /* Logic changed to - Always display header record in Admin UI Select @DbCnt=count(*) from @WRK_ProfDBsForLimiter If @DbCnt > 1 Set @AddHeaderFlag =1 else Set @AddHeaderFlag =0 */ Set @AddHeaderFlag=1 Select isnull (do.SeqNo,w.DbSeqNo) as SeqNo,d.DbVerNo,d.DisplayName,dbo.EAIF_GetIndentedListItems_912(ld.ControlTemplate,d.DbVerNo,@AddHeaderFlag) as ControlTemplate,pdbl.DefValue as DefValue, Case when do.SeqNo is not null then 1 --When dbo.EAIF_IsCustTheOwnerOfDB_912(@ProfCustId,d.DbName) = 2 then 2 else 9 End as Priority, w.LimDesc as LimiterDesc from @WRK_ProfDBsForLimiter w Inner join [dbo].[DbList] d on d.DbVerNo=w.DbVerNo Inner join [dbo].[DbLimiterDetail] ld on (ld.DbVerNo=w.DbVerNo and ld.LimiterNo=w.LimiterNo) Left outer join [dbo].[ProfDbLimiterDbOrder] do on (do.ProfNo=@ProfNo and do.DbVerNo=w.DbVerNo and do.IntfScreenNo=@ScreenNo and do.LimiterNo=w.LimiterNo) LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdbl ON pdbl.ProfNo=@ProfNo AND ld.DbVerNo=pdbl.DbVerNo AND ld.LimiterNo=pdbl.LimiterNo and pdbl.IntfScreenNo=@ScreenNo Order by Priority,SeqNo,d.DisplayName END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceFeature_77] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @FeatureName varchar(50), @ScreenID varchar(10), @Type char, @VisibleItemCount varchar(10), @SelectionMode char, @DbDependency bit , @AllowProfAccess bit, @AllowProfEdit bit, @AllowProfAddItem bit , @FieldXML nvarchar(max) ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceFeatureList].[Version]=@Version AND [dbo].[InterfaceFeatureList].[FeatureName]=@FeatureName) BEGIN RAISERROR ('Feature %s already exists in the Interface %s-%s.',16,1,@FeatureName,@InterfaceID,@Version) RETURN END DECLARE @aVisibleItemCount int IF LEN(@VisibleItemCount) > 0 SET @aVisibleItemCount = CONVERT(int, @VisibleItemCount) ELSE SET @aVisibleItemCount = null DECLARE @FieldXML2 XML DECLARE @InterfaceFeatureNo int BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceFeatureList]([dbo].[InterfaceFeatureList].[InterfaceID],[dbo].[InterfaceFeatureList].[Version],[dbo].[InterfaceFeatureList].[FeatureName],[dbo].[InterfaceFeatureList].[ScreenID],[dbo].[InterfaceFeatureList].[FeatureType],[dbo].[InterfaceFeatureList].[DbDependant],[dbo].[InterfaceFeatureList].[VisibleItemCount],[dbo].[InterfaceFeatureList].[SelectionMode],[dbo].[InterfaceFeatureList].[AllowProfAccess],[dbo].[InterfaceFeatureList].[AllowProfEdit],[dbo].[InterfaceFeatureList].[AllowProfItemAdd]) VALUES (@InterfaceID,@Version,@FeatureName,@ScreenID,@Type,@DbDependency, @aVisibleItemCount,@SelectionMode, @AllowProfAccess, @AllowProfEdit, @AllowProfAddItem) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SELECT @InterfaceFeatureNo=[dbo].[InterfaceFeatureList].[InterfaceFeatureNo] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceFeatureList].[Version]=@Version AND [dbo].[InterfaceFeatureList].[FeatureName]=@FeatureName INSERT INTO [dbo].[InterfaceFeatureFields] ([dbo].[InterfaceFeatureFields].[InterfaceFeatureNo],[dbo].[InterfaceFeatureFields].[FieldName],[dbo].[InterfaceFeatureFields].[FieldLevel],[dbo].[InterfaceFeatureFields].[FieldType],[dbo].[InterfaceFeatureFields].[IncludeInSummary],[dbo].[InterfaceFeatureFields].[EditControl]) VALUES (@InterfaceFeatureNo,'Caption','F','SM',0,'TextBox') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SET @FieldXML2 =CAST (@FieldXML as XML) INSERT INTO [dbo].[InterfaceFeatureValues]([dbo].[InterfaceFeatureValues].[InterfaceFeatureNo],[dbo].[InterfaceFeatureValues].[ItemNo],[dbo].[InterfaceFeatureValues].[FieldValueXml]) VALUES (@InterfaceFeatureNo,0,@FieldXML2) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @AllValues varchar (50) SET @AllValues = @ScreenID+','+@Type+','+ @VisibleItemCount+','+ @SelectionMode+','+CONVERT(varchar,@DbDependency)+','+CONVERT(varchar,@AllowProfAccess)+','+CONVERT(varchar,@AllowProfEdit)+','+CONVERT(varchar,@AllowProfAddItem) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Add Feature', @InterfaceID,@Version,@FeatureName,@AllValues COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EPCS_GetProfileCustomWidgets_97.sql CREATE PROCEDURE [dbo].[EPCS_GetProfileCustomWidgets_97] (@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10))AS BEGIN DECLARE @ProfNo int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT [dbo].[ProfCustomWidgets].[WidgetID] as ID, [dbo].[ProfCustomWidgets].[Type], [dbo].[ProfCustomWidgets].[Label], [dbo].[ProfCustomWidgets].[Height], [dbo].[ProfCustomWidgets].[URL], [dbo].[ProfCustomWidgets].[CustomHTML], [dbo].[ProfCustomWidgets].[DefOpen], [dbo].[ProfCustomWidgets].[DisplayScreen] FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[ProfNo]=@ProfNo and [dbo].[ProfCustomWidgets].[Show]=1 ORDER BY [dbo].[ProfCustomWidgets].[SeqNo] END
CREATE PROCEDURE [dbo].[BLL_GetLocalCollAsAuth](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ProfNo int SELECT @ProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT af.ColNo, col.ColID, col.ColName FROM [dbo].[ProfLocalAuthority] af INNER JOIN [dbo].[Collection] col ON af.ColNo=col.ColNo WHERE af.ProfNo=@ProfNo AND col.CustID=@CustID AND col.Exclude=0 AND col.IsDeleted = 0 END
CREATE PROCEDURE [dbo].[EAUI_GetInterfacePrimaryAddDatabaseList_103] (@InterfaceID varchar(10),@InterfaceVersion varchar(10)) AS BEGIN SELECT a.DbVerNo, a.DisplayName + N'(' + CONVERT(NVARCHAR(10), a.DbName) + N')' as DisplayName, 0 as Selected FROM [dbo].[DbList] a Left outer join [dbo].[InterfacePrimaryDatabases] s on (s.InterfaceID=@InterfaceID and s.Version=@InterfaceVersion and s.DbVerNo=a.DbVerNo) Where a.DbType = 1 AND a.SourceType='D' and a.DbLabel='live' and s.DbVerNo is null /* Restrict the list to Regular EP databases, 'live' label and not already configured as the interface primary database */ Order by a.DisplayName END
CREATE PROCEDURE [dbo].[EATL_GetCaptionByLangCode_70](@LangCode varchar(10), @DbVerNo int) AS BEGIN SELECT ll.LimiterId, lc.Caption, lc.MouseOverText FROM [dbo].[LimiterList] ll JOIN [dbo].[DbLimiterCaption] lc ON (ll.LimiterNo = lc.LimiterNo) WHERE [lc].[LangCode] = @LangCode AND [lc].[DbVerNo] = @DbVerNo END
CREATE PROCEDURE [dbo].[EPCAS_GetVerDatabase]( @ShortDBName varchar(10), @Label varchar(20), @Volume varchar(10) ) AS BEGIN DECLARE @DbVerNo int, @DbType int SELECT @DbVerNo=[dbo].[DbList].[DbVerNo], @DbType=[dbo].[DbList].[DbType] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName]=@ShortDBName AND [dbo].[DbList].[DbLabel]=@Label DECLARE @ISField varchar(25), @ANField varchar(25), @DTField varchar(25) SET @ISField = dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'dbISSNField') IF (LTRIM(@ISField)='') SET @ISField=0 SET @ANField = dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'dbANField') IF (LTRIM(@ANField)='') SET @ANField=0 SET @DTField = dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'dbPubDateField') IF (LTRIM(@DTField)='') SET @DTField=0 SELECT @DbVerNo as 'MasterDbList', @DbType as 'DatabaseType', @DbVerNo as 'DbVersion', b.LastUpdateDate, @ISField as 'ISField', @ANField as 'ANField', @DTField as 'DTField', b.EpkPath FROM [dbo].[DbList] a LEFT OUTER JOIN [dbo].[DbVolume] b ON (a.DbVerNo=b.DbVerNo AND b.Volume=@Volume) WHERE a.DbVerNo=@DbVerNo END
CREATE FUNCTION [dbo].[EAIF_GetSearchThemeHierarchyTable_83]( @ParentID varchar(20)) RETURNS @ThemesTable TABLE (ThemeID varchar(20)) AS BEGIN DECLARE @Depth int DECLARE @stack table (item char(20), Depth int) --Create a tempory stack. INSERT INTO @stack VALUES (@ParentID, 1) --Insert current node to the stack. SELECT @Depth = 1 WHILE @Depth > 0 --From the top level going down. BEGIN IF EXISTS (SELECT * FROM @stack WHERE Depth = @Depth) BEGIN SELECT @ParentID = item --Find the first node that matches current node's name. FROM @stack WHERE Depth = @Depth INSERT INTO @ThemesTable VALUES (@ParentID) DELETE FROM @stack WHERE Depth = @Depth AND item = @ParentID --Remove the current node from the stack. INSERT @stack --Insert the childnodes of the current node into the stack. SELECT [dbo].[SearchTheme].[ThemeID], @Depth + 1 FROM [dbo].[SearchTheme] with (nolock) WHERE [dbo].[SearchTheme].[ParentThemeID] = @ParentID IF @@ROWCOUNT > 0 --If the previous statement added one or more nodes, go down for its first child. SELECT @Depth = @Depth + 1 --If no nodes are added, check its brother nodes. END ELSE SELECT @Depth = @Depth - 1 --Back to the level immediately above. END --While RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDBSearchOptionDetails_76] ( @DbVerNo int, @OptionNo int, @LangCode varchar(10)) AS BEGIN SELECT sol.SearchOptionId, dso.OptionType, dso.SearchString, dso.TargetDb, dso.SourceType, dso.TabImage, dso.AuthoritySubset, dso.AuthorityView, dsc.OptionCaption, dsc.ResultCaption, dsc.Description FROM [dbo].[DbSearchOption] dso LEFT OUTER JOIN [dbo].[DbSearchOptionCaption] dsc ON dso.DbVerNo = dsc.DbVerNo AND dso.SearchOptionNo = dsc.SearchOptionNo AND dsc.LangCode = @LangCode INNER JOIN [dbo].[SearchOptionList] sol ON dso.SearchOptionNo = sol.SearchOptionNo WHERE dso.DbVerNo = @DbVerNo AND dso.SearchOptionNo = @OptionNo END
Create PROCEDURE [dbo].[EAIP_PromoteDatabaseXmlParam_161](@ParamName varchar(100), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN BEGIN TRY DECLARE @ParamNo int SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName]=@ParamName BEGIN TRANSACTION DELETE dbpxv FROM [dbo].[DbParamXmlValues] dbpxv INNER JOIN #TempDbListTable t on dbpxv.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE ParamNo=@ParamNo INSERT INTO [dbo].[DbParamXmlValues] SELECT t.UpperDbVerNo,ParamNo, ItemName,ParamValue,SeqNo FROM [dbo].[DbParamXmlValues] dbpxv JOIN #TempDbListTable t ON dbpxv.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) WHERE ParamNo=@ParamNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceParamEditLevel_76](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @ParamNo int, @EditLevel int, @Mode char(1)) AS BEGIN DECLARE @OldEditLevel int SELECT @OldEditLevel =[dbo].[InterfaceParamList2].[EditLevel] FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version AND [dbo].[InterfaceParamList2].[ParamNo] = @ParamNo IF @@RowCount = 0 SELECT @OldEditLevel =[dbo].[InterfaceParamList].[EditLevel] FROM [dbo].[InterfaceParamList] WHERE [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList].[Version] = @Version AND [dbo].[InterfaceParamList].[ParamNo] = @ParamNo Declare @ParentParamNo int Declare @ParentParamEditLevel int Select @ParentParamNo = cpl2.ParamNo From [dbo].[CustomParamList] cpl1 join [dbo].[CustomParamList] cpl2 on cpl1.ParentParamNo=cpl2.ParamNo where cpl1.ParamNo=@ParamNo if @ParentParamNo is not null Begin Select @ParentParamEditLevel = [dbo].[InterfaceParamList].[EditLevel] from [dbo].[InterfaceParamList] where [dbo].[InterfaceParamList].[ParamNo]=@ParentParamNo and [dbo].[InterfaceParamList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceParamList].[Version]=@Version if not((@ParentParamEditLevel=@EditLevel) or ((@ParentParamEditLevel=1 or @ParentParamEditLevel=2) and @EditLevel=0)) Begin RAISERROR('Child Parameter Edit Level is incompatable with its Parent Parameter Edit Level',16,-1) return End End BEGIN TRANSACTION --if param level is reset from "Session" related Interface New Feature should be removed IF @OldEditLevel=-1 DELETE [dbo].[InterfaceNewFeature] FROM [dbo].[InterfaceNewFeature] i INNER JOIN [dbo].[NewFeatureParam] p ON i.FeatureID = p.FeatureID WHERE i.[InterfaceID ] = @InterfaceID AND i.Version = @Version AND p.ParamNo=@ParamNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @Mode IS Null Or @Mode = '' BEGIN UPDATE [dbo].[InterfaceParamList] SET [dbo].[InterfaceParamList].[EditLevel] =@EditLevel WHERE [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList].[Version] = @Version AND [dbo].[InterfaceParamList].[ParamNo] = @ParamNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END --also update children parameters edit level UPDATE [dbo].[InterfaceParamList] SET [EditLevel] =@EditLevel FROM [dbo].[InterfaceParamList] ip INNER JOIN [dbo].[CustomParamList] cp ON ip.ParamNo= cp.ParamNo WHERE ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND cp.ParentParamNo = @ParamNo --also update children of childred edit level IF @@RowCount > 0 UPDATE [dbo].[InterfaceParamList] SET [EditLevel] =@EditLevel FROM [dbo].[InterfaceParamList] ip INNER JOIN [dbo].[CustomParamList] cp ON ip.ParamNo= cp.ParamNo INNER JOIN [dbo].[CustomParamList] cpp ON cp.ParentParamNo = cpp.ParamNo WHERE ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND cpp.ParentParamNo = @ParamNo --delete mode specific info if any DELETE FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version AND [dbo].[InterfaceParamList2].[ParamNo]= @ParamNo --delete mode specific info for children parameters IF @@RowCount > 0 DELETE FROM [dbo].[InterfaceParamList2] FROM [dbo].[InterfaceParamList2] ip2 INNER JOIN [dbo].[CustomParamList] cp ON ip2.ParamNo= cp.ParamNo WHERE ip2.InterfaceID = @InterfaceID AND ip2.Version = @Version AND cp.ParentParamNo = @ParamNo END ELSE BEGIN --delete mode specific info if any DELETE FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version AND [dbo].[InterfaceParamList2].[ParamNo]= @ParamNo AND [dbo].[InterfaceParamList2].[Mode] = @Mode --delete mode specific info for children parameters IF @@RowCount > 0 DELETE FROM [dbo].[InterfaceParamList2] FROM [dbo].[InterfaceParamList2] ip2 INNER JOIN [dbo].[CustomParamList] cp ON ip2.ParamNo= cp.ParamNo WHERE ip2.InterfaceID = @InterfaceID AND ip2.Version = @Version AND ip2.Mode = @Mode AND cp.ParentParamNo = @ParamNo UPDATE [dbo].[InterfaceParamList] SET [dbo].[InterfaceParamList].[EditLevel] = -32767 WHERE [dbo].[InterfaceParamList].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList].[Version] = @Version AND [dbo].[InterfaceParamList].[ParamNo] = @ParamNo IF @@RowCount > 0 UPDATE [dbo].[InterfaceParamList] SET [EditLevel] = -32767 FROM [dbo].[InterfaceParamList] ip INNER JOIN [dbo].[CustomParamList] cp ON ip.ParamNo= cp.ParamNo WHERE ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND cp.ParentParamNo = @ParamNo --also update children of childred edit level IF @@RowCount > 0 UPDATE [dbo].[InterfaceParamList] SET [EditLevel] = -32767 FROM [dbo].[InterfaceParamList] ip INNER JOIN [dbo].[CustomParamList] cp ON ip.ParamNo= cp.ParamNo INNER JOIN [dbo].[CustomParamList] cpp ON cp.ParentParamNo = cpp.ParamNo WHERE ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND cpp.ParentParamNo = @ParamNo INSERT INTO [dbo].[InterfaceParamList2] ([dbo].[InterfaceParamList2].[InterfaceID], [dbo].[InterfaceParamList2].[Version], [dbo].[InterfaceParamList2].[Mode], [dbo].[InterfaceParamList2].[ParamNo], [dbo].[InterfaceParamList2].[EditLevel]) VALUES(@InterfaceID, @Version, @Mode, @ParamNo, @EditLevel) INSERT INTO [dbo].[InterfaceParamList2] ([dbo].[InterfaceParamList2].[InterfaceID], [dbo].[InterfaceParamList2].[Version], [dbo].[InterfaceParamList2].[Mode], [dbo].[InterfaceParamList2].[ParamNo], [dbo].[InterfaceParamList2].[EditLevel]) SELECT @InterfaceID, @Version, @Mode, ip.ParamNo, @EditLevel FROM [dbo].[InterfaceParamList] ip INNER JOIN [dbo].[CustomParamList] cp ON ip.ParamNo= cp.ParamNo WHERE ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND cp.ParentParamNo = @ParamNo END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ParamName varchar(100) SELECT @ParamName=[dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Update Param EditLevel', @ParamName, @EditLevel COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_GroupLangAndCaptions_80](@GroupNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(8000) SET @Captions='' SET @Langs='' SELECT @Captions=@Captions+'|'+[dbo].[GroupCaption].[Caption], @Langs=@Langs+'|'+[dbo].[GroupCaption].[LangCode] FROM [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerListBrowseByCustID_Paged_203] @CustID VARCHAR(10), @pageIndex INT = 0, @pagSize INT = 10 AS BEGIN SELECT cust.RowNr, cust.CustID, cust.CustName, cust.ParentID FROM ( SELECT ROW_NUMBER() OVER(ORDER BY [CustID]) AS RowNr, c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') AS ParentID FROM [dbo].[Customer] c WHERE c.CustID LIKE @CustID + '%' AND c.CustID <> 'system' AND c.CustType <> 'U' ) cust WHERE cust.RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize END
CREATE PROCEDURE [dbo].[EAIP_DeleteDbCVTypeFilter_163] (@UserID NVARCHAR(20), @UserIP VARCHAR(15), @ContentVerticalFilterID varchar(30),@DbName varchar(10), @DbLabel varchar(20)) AS BEGIN DECLARE @ContentVerticalFilterNo int DECLARE @DbVerNo INT IF LEN(@ContentVerticalFilterID)>25 BEGIN RAISERROR('The Content Vertical Filter ID length can not exceed 25 characters.', 16, -1) RETURN END SELECT @ContentVerticalFilterNo=[dbo].[ContentVerticalFilter].[ContentVerticalFilterNo] FROM dbo.ContentVerticalFilter WITH (NOLOCK) WHERE [dbo].[ContentVerticalFilter].[ContentVerticalFilterID]=@ContentVerticalFilterID IF @ContentVerticalFilterNo IS NULL BEGIN RAISERROR('The Content Vertical Filter (%s) does not exist ', 16, -1, @ContentVerticalFilterID) RETURN END SELECT @DbVerNo=[dbo].[DbList].[DbVerNo] FROM dbo.DbList WITH (NOLOCK) WHERE [dbo].[DbList].[DbName]=@DbName AND [dbo].[DbList].[DbLabel]=@DbLabel IF @DbVerNo IS NULL BEGIN RAISERROR('The DbName/DbLabel (%s)/(%s) does not exist ', 16, -1, @DbName, @DbLabel) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[DbCVFilter] WITH (NOLOCK) WHERE [dbo].[DbCVFilter].[DbVerNo]=@DbVerNo AND [dbo].[DbCVFilter].[ContentVerticalFilterNo]=@ContentVerticalFilterNo) RETURN BEGIN Try BEGIN TRANSACTION DELETE dbo.DbCVFilter WHERE [dbo].[DbCVFilter].[DbVerNo]=@DbVerNo AND [dbo].[DbCVFilter].[ContentVerticalFilterNo]=@ContentVerticalFilterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Content Verticals', 'Delete DbCVType Filter',@ContentVerticalFilterID,@DbName, @DbLabel COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetExternalSourceDbList_102] ( @DbLabel varchar(10), @SourceType char(1) ) AS BEGIN SELECT l.DbVerNo, l.DisplayName, l.DbName, l.DbLabel, e.ConnectorProvider, ISNULL(muse.ExternalDbID,'') AS ExternalSourceID, ISNULL(indexData.ExternalDbID,'') AS ExternalSourceID_I, ISNULL(e.VendorName,'') AS Vendor, ISNULL(e.ConnectorType,'') AS ConnectorType, e.Free AS DbFree, l.SourceType, ISNULL(e.Notes,'') AS Notes, ISNULL(indexData.ProxyForResult, 0) AS ProxyForResult, ISNULL(indexData.ProxyForSearch,0) AS ProxyForSearch, ISNULL(indexData.ConnectorURL,'') AS ConnectorURL, ISNULL(indexData.KeyValuePairs,'') AS KeyValuePairs FROM [dbo].[DbList] l INNER JOIN [dbo].[DbListExternalSource] e ON (e.DbVerNo = l.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceIndexData] indexData ON (indexData.DbVerNo = e.DbVerNo) LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] muse ON (muse.DbVerNo = e.DbVerNo) WHERE l.DbLabel = @DbLabel AND l.SourceType = @SourceType END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceDbSearchTagsAlpha_82](@UserID nvarchar(20), @UserIP varchar(30),@InterfaceID varchar(10),@Version varchar(10))AS BEGIN DECLARE @SearchTagSeqNoTable TABLE (Tag varchar(10), SeqNo int identity) INSERT INTO @SearchTagSeqNoTable(Tag) SELECT gt.Tag FROM [dbo].[GlobalSearchTags] gt LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] itc ON gt.Tag=itc.Tag AND itc.InterfaceID=@InterfaceID AND itc.Version=@Version ORDER BY ISNULL(itc.Caption, gt.Description) BEGIN TRANSACTION UPDATE [dbo].[InterfaceSearchTagsCaption] SET [SeqNo] = b.SeqNo FROM [dbo].[InterfaceSearchTagsCaption] a INNER JOIN @SearchTagSeqNoTable b ON a.Tag = b.Tag WHERE a.InterfaceID=@InterfaceID AND a.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[InterfaceSearchTagsCaption] ([a].[InterfaceID],[a].[Version],[a].[Tag],[a].[SeqNo]) SELECT @InterfaceID, @Version, b.Tag, b.SeqNo FROM @SearchTagSeqNoTable b LEFT OUTER JOIN [dbo].[InterfaceSearchTagsCaption] a ON a.InterfaceID=@InterfaceID AND a.Version=@Version AND a.Tag = b.Tag WHERE a.Tag is null IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceDbSearchTags','Reorder Search Tags', @InterfaceID,@Version COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_ClustersLangAndCaptions_80](@ClusterID varchar(20)) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(8000) SET @Captions='' SET @Langs='' SELECT @Captions=@Captions+'|'+[dbo].[GlobalClusterCaption].[Caption], @Langs=@Langs+'|'+[dbo].[GlobalClusterCaption].[LangCode] FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID]=@ClusterID IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_DeleteDbSearchOption_76] ( @UserID nvarchar(20), @UserIP varchar(15), @DbVerNo int, @OptionNo int ) AS BEGIN DECLARE @OptionId varchar(20) DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @OptionId=[dbo].[SearchOptionList].[SearchOptionId] FROM [dbo].[SearchOptionList] WHERE [dbo].[SearchOptionList].[SearchOptionNo] = @OptionNo SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo BEGIN TRANSACTION DELETE FROM [dbo].[DbSearchOptionCaption] WHERE [dbo].[DbSearchOptionCaption].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchOptionCaption].[SearchOptionNo]=@OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[DbSearchOption] WHERE [dbo].[DbSearchOption].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchOption].[SearchOptionNo]=@OptionNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'SearchOptions', 'Delete DbSearch Option', @DbName, @DbLabel, @OptionID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyTopics_77](@TopicID varchar(10),@SearchString varchar(255), @ParentTopicID varchar(10),@CaptionLangList nvarchar(max))AS /** procedure is used by EPCopy **/ BEGIN DECLARE @ParentTopicNo int DECLARE @TopicNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID) BEGIN SELECT @ParentTopicNo = [dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID] = @ParentTopicID INSERT INTO [dbo].[TopicList] ([dbo].[TopicList].[TopicID],[dbo].[TopicList].[SearchString],[dbo].[TopicList].[ParentTopicNo]) VALUES (@TopicID,@SearchString, @ParentTopicNo) IF @@ERROR <> 0 RETURN SELECT @TopicNo=[dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID exec [dbo].[EAIP_CopyTopicCaptions_77] @TopicNo,@CaptionLangList END ELSE BEGIN SELECT @TopicNo=[dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID]=@TopicID SELECT @ParentTopicNo = [dbo].[TopicList].[TopicNo] FROM [dbo].[TopicList] WHERE [dbo].[TopicList].[TopicID] = @ParentTopicID UPDATE [dbo].[TopicList] SET [dbo].[TopicList].[SearchString]=@SearchString, [dbo].[TopicList].[ParentTopicNo]=@ParentTopicNo WHERE [dbo].[TopicList].[TopicNo]=@TopicNo AND ([dbo].[TopicList].[SearchString]<>@SearchString OR ISNULL([dbo].[TopicList].[ParentTopicNo], '')<>ISNULL(@ParentTopicNo, '')) IF @@ERROR <> 0 RETURN IF @CaptionLangList<> dbo.EAIF_TopicLangAndCaptions_77(@TopicNo) exec [dbo].[EAIP_CopyTopicCaptions_77] @TopicNo,@CaptionLangList END END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDBLimiters_76] (@ProfNo int, @DBVerNo int, @LangCode varchar(10), @EditLevel int , @ScreenNo int) AS BEGIN DECLARE @AutoAddLmiter bit SELECT @AutoAddLmiter=[dbo].[InterfaceScreen].[AutoAddLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo IF @AutoAddLmiter=1 exec [dbo].[EAIP_GetProfileDBLimitersAutoAdd_76] @ProfNo,@DBVerNo,@LangCode,@EditLevel,@ScreenNo ELSE exec [dbo].[EAIP_GetProfileDBLimitersNoAutoAdd_76] @ProfNo,@DBVerNo,@LangCode,@EditLevel,@ScreenNo END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceFeatureField_77](@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @Name varchar(50), @Level char, @Type char(2), @IncludeInSummary int,@EditCtrl varchar(50), @Template nvarchar(1000))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo IF EXISTS (SELECT 1 FROM [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldName]=@Name) BEGIN RAISERROR ('Feature Field %s already exists in the Interface %s-%s, Feature %s.',16,1,@Name,@InterfaceID,@Version,@FeatureName) RETURN END BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceFeatureFields] ([dbo].[InterfaceFeatureFields].[InterfaceFeatureNo],[dbo].[InterfaceFeatureFields].[FieldName],[dbo].[InterfaceFeatureFields].[FieldLevel],[dbo].[InterfaceFeatureFields].[FieldType],[dbo].[InterfaceFeatureFields].[IncludeInSummary],[dbo].[InterfaceFeatureFields].[EditControl],[dbo].[InterfaceFeatureFields].[ValueTemplate]) VALUES (@InterfaceFeatureNo,@Name,@Level, @Type,@IncludeInSummary,@EditCtrl,@Template) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Add Feature Field', @InterfaceID,@Version,@FeatureName,@Name COMMIT TRANSACTION END
CREATE procedure [dbo].[EPCS_GetProfileDbLimiterDbOrder_912]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @ScreenNo int DECLARE @ScreenID varchar(10) DECLARE @ProfCustId varchar(10) DECLARE @CurrDate datetime SET @CurrDate=GETDATE() SELECT @ProfCustId=[dbo].[Profile].[CustID], @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID DECLARE @WRK_ProfDBsForLimiter TABLE ( ScreenNo int, ScreenID varchar(10), LimiterNo int , LimiterID varchar(20), DbVerNo int, DbSeqNo int) ---- Restrict the select to limiters with IsListContentsGrouped =1 (List items grouped) INSERT INTO @WRK_ProfDBsForLimiter(ScreenNo,ScreenID,LimiterNo, LimiterID, DbVerNo,DbSeqNo) Select s.IntfScreenNo,s.ScreenID,dl.LimiterNo,l.LimiterId, pd.DbVerNo,pd.SeqNo from [dbo].[ProfDatabase] pd join [dbo].[DbLimiter] dl on dl.DbVerNo = pd.DbVerNo Join [dbo].[LimiterList] l on l.LimiterNo = dl.LimiterNo join [dbo].[InterfaceScreen] s on s.InterfaceID=@InterfaceID and s.Version=@Version Left outer join [dbo].[DbInterfaceLimiter] dil on (dil.DbVerNo=dl.DbVerNo and dil.LimiterNo=dl.LimiterNo and dil.IntfScreenNo=s.IntfScreenNo) WHERE pd.ProfNo= @ProfNo AND pd.Enable=1 AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, @CurrDate)<0 ) AND (dl.ResFlag=1 OR dil.LimiterNo is not null) AND l.IsListContentsGrouped =1 Select w.ScreenID as ScreenID,w.LimiterID as LimiterID,d.DbName as DbName,d.DbLabel as DbLabel,pdbl.DefValue as DefValue, Case when do.SeqNo is not null then 1 else 9 End as Priority from @WRK_ProfDBsForLimiter w Inner join [dbo].[DbList] d on d.DbVerNo=w.DbVerNo Left outer join [dbo].[ProfDbLimiterDbOrder] do on (do.ProfNo=@ProfNo and do.DbVerNo=w.DbVerNo and do.IntfScreenNo=w.ScreenNo and do.LimiterNo=w.LimiterNo) LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdbl ON pdbl.ProfNo=@ProfNo AND pdbl.DbVerNo=w.DbVerNo AND pdbl.LimiterNo=w.LimiterNo and pdbl.IntfScreenNo=w.ScreenNo Order by ScreenID,LimiterID,Priority,isnull (do.SeqNo,w.DbSeqNo),d.DisplayName END
CREATE PROCEDURE [dbo].[BLL_GetLocalCollectionList]( @CustomerID varchar(10) ) AS BEGIN SELECT c.ColID, c.Exclude FROM [dbo].[Collection] c WHERE c.CustID=@CustomerID AND (c.AutoRecreate=1 OR c.ForceRecreate=1) AND c.IsDeleted = 0 END
CREATE PROCEDURE [dbo].[EAUI_GetInterfacePrimaryDatabasesList_103] (@InterfaceID varchar(10),@InterfaceVersion varchar(10)) AS BEGIN SELECT a.DbVerNo, a.DisplayName + N'(' + CONVERT(NVARCHAR(10), a.DbName) + N')' as DisplayName, ISNULL(s.SeqNo,1) as SeqNo FROM [dbo].[DbList] a inner join [dbo].[InterfacePrimaryDatabases] s on (s.InterfaceID=@InterfaceID and s.Version=@InterfaceVersion and s.DbVerNo=a.DbVerNo) where a.DbLabel='live' Order by SeqNo, DisplayName END
CREATE PROCEDURE [dbo].[EATL_GetClusters_80] (@LangCode varchar(10))AS BEGIN SELECT cl.ID, cc.Caption FROM [dbo].[GlobalCluster] cl INNER JOIN [dbo].[GlobalClusterCaption] cc ON cl.ID = cc.ID WHERE cc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCAS_GetVersionFromLabel](@Label varchar(10), @ShortDB varchar(10) ) AS BEGIN SELECT [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @ShortDB AND [dbo].[DbList].[DbLabel] = @Label END
CREATE Function [dbo].[EAIF_GetTblParamItemsForProfDB_90] ( @ParamNo int, @ProfNo int) RETURNS @ItemsTable TABLE ( ItemID VARCHAR(10))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo DECLARE @Table TABLE ( ItemID VARCHAR(10), SeqNo int) IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[FieldType]='SD' AND [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo ) BEGIN INSERT INTO @ItemsTable SELECT i.ItemID FROM [dbo].[CustomParamTblItems] i LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version WHERE i.ParamNo=@ParamNo AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) Order By [i].[SeqNo] RETURN END INSERT INTO @Table SELECT i.ItemID, i.SeqNo FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo=i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON f.ParamNo= v.ParamNo AND i.ItemID=v.ItemID AND f.FieldNo=v.FieldNo WHERE f.ParamNo=@ParamNo AND f.FieldType='SD' AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) AND v.DbName in ( SELECT db.DbName FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfDatabase] pdb ON db.DbVerNo=pdb.DbVerNo WHERE pdb.ProfNo = @ProfNo AND pdb.Enable=1 and (pdb.Mode is null or pdb.Mode<>'X') and (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) UNION ALL SELECT db2.DbName FROM [dbo].[DbList] db INNER JOIN [dbo].[ProfDatabase] pdb ON db.DbVerNo=pdb.DbVerNo INNER JOIN [dbo].[DbAuthority] dba ON db.DbVerNo= dba.MainDbVerNo INNER JOIN [dbo].[DbList] db2 ON dba.AuthDbVerNo=db2.DbVerNo WHERE pdb.ProfNo = @ProfNo AND pdb.Enable=1 AND (pdb.Mode is null or pdb.Mode<>'X') AND (pdb.AccessEndDate is null or datediff(hh, pdb.AccessEndDate, getdate())<0 ) ) UNION ALL SELECT i.ItemID, i.SeqNo FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo=i.ParamNo LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMDValues] v ON v.ParamNo=@ParamNo AND i.ItemID=v.ItemID LEFT OUTER JOIN [dbo].[CustomParamTblItemsInterface] ii ON i.ParamNo=ii.ParamNo AND i.ItemID=ii.ItemID AND ii.InterfaceID=@InterfaceID AND ii.Version=@Version WHERE f.ParamNo=@ParamNo AND f.FieldType='SD' AND v.ParamNo is null AND (i.AutoAddToInterface =1 OR ii.ParamNo is not null) Order By i.SeqNo INSERT INTO @ItemsTable SELECT distinct ItemID FROM @Table RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbSearchOptions_76] (@DbVerNo int) AS BEGIN SELECT dso.SearchOptionNo, ol.SearchOptionId, oc.OptionCaption, svm.Description AS OptionType, dso.SearchString, dso.TargetDb FROM [dbo].[DbSearchOption] dso INNER JOIN [dbo].[SearchOptionList] ol ON dso.SearchOptionNo = ol.SearchOptionNo INNER JOIN [dbo].[DbSearchOptionCaption] oc ON dso.DbVerNo = oc.DbVerNo AND dso.SearchOptionNo = oc.SearchOptionNo INNER JOIN [dbo].[StringValueMap] svm ON dso.OptionType = svm.FieldCode WHERE dso.DbVerNo = @DbVerNo AND oc.LangCode ='en' AND svm.FieldName='SearchOptionType' END
CREATE PROCEDURE [dbo].[EAIP_PromoteDatabaseXmlParam_70]( @OldDbVerNo int, @NewDbVerNo int, @ParamName varchar(100)) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=[dbo].[DbParamList].[ParamNo] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName]=@ParamName BEGIN TRANSACTION DELETE FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@NewDbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[DbParamXmlValues] SELECT @NewDbVerNo AS DbVerNo,[dbo].[DbParamXmlValues].[ParamNo], [dbo].[DbParamXmlValues].[ItemName],[dbo].[DbParamXmlValues].[ParamValue],[dbo].[DbParamXmlValues].[SeqNo] FROM [dbo].[DbParamXmlValues] WHERE [dbo].[DbParamXmlValues].[DbVerNo]=@OldDbVerNo AND [dbo].[DbParamXmlValues].[ParamNo]=@ParamNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceParameterDefault_70] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @StMode char, @ParamNo int, @DefValue nvarchar(2000)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[MarketID]=@MarketID AND [dbo].[CustomParamDefaults].[STMode]= @StMode AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) UPDATE [dbo].[CustomParamDefaults] SET [dbo].[CustomParamDefaults].[DefValue]=@DefValue WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[MarketID]=@MarketID AND [dbo].[CustomParamDefaults].[STMode]= @StMode AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ELSE INSERT INTO [dbo].[CustomParamDefaults] ([dbo].[CustomParamDefaults].[InterfaceID],[dbo].[CustomParamDefaults].[Version],[dbo].[CustomParamDefaults].[MarketID],[dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[ParamNo],[dbo].[CustomParamDefaults].[DefValue]) VALUES (@InterfaceID,@Version,@MarketID,@STMode,@ParamNo,@DefValue) DECLARE @Intf varchar(100), @Mkt varchar(50), @ParamName varchar(100) SET @Intf = @InterfaceID+'('+@Version+')' SET @Mkt = @MarketID + ' - ' + @STMode SET @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Edit Parameter DefaultValue', @Intf, @Mkt, @ParamName, @DefValue END
CREATE FUNCTION [dbo].[EAIF_GroupLangAndMouseOverTexts_80](@GroupNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @MouseOverTexts nvarchar(max) DECLARE @Langs varchar(8000) SET @MouseOverTexts='' SET @Langs='' SELECT @MouseOverTexts=@MouseOverTexts+'|'+[dbo].[GroupCaption].[MouseOverText], @Langs=@Langs+'|'+[dbo].[GroupCaption].[LangCode] FROM [dbo].[GroupCaption] WHERE [dbo].[GroupCaption].[GroupNo]=@GroupNo IF LEN(@MouseOverTexts)>1 SET @MouseOverTexts=SUBSTRING(@MouseOverTexts, 2, LEN(@MouseOverTexts)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @MouseOverTexts+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerListBrowseByCustName_70] (@CustName nvarchar(100)) as BEGIN SELECT TOP 1000 c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') as ParentID FROM [dbo].[Customer] c WHERE c.CustName like @CustName + '%' AND c.CustID<>'system' AND c.CustType <> 'U' ORDER BY c.CustName END
Create Procedure [dbo].[EAIP_DeleteGlobalInterfaceDatabaseTable_162] @UserID NVARCHAR(20), @UserIP VARCHAR(30), @ParamName VarChar(100), @ItemName VarChar(10) As Begin If Not Exists (Select 1 From [dbo].[CustomParamList] Where [dbo].[CustomParamList].[ParamName] = @ParamName) Begin RaisError('The Parameter Name ''%s'' does not exist.', 16,-1, @ParamName) Return End Declare @ParamType VARCHAR(5); Select @ParamType = C.[Description] From [dbo].[CustomParamList] B Left Outer Join [dbo].[CharValueMap] C On (B.ParamType = C.FieldCode And C.FieldName = 'ParamType') Where [B].[ParamName] = @ParamName; IF ((@ParamType IS NOT NULL) AND (@ParamType <> 'Table')) BEGIN RaisError('The Parameter Name: ''%s'' is not a valid Table Parameter type.', 16, -1, @ParamName) Return END If Not Exists (Select 1 From [dbo].[CustomParamList] CPL Inner Join [dbo].[CustomParamTblItems] CPT On (CPL.ParamNo = CPT.ParamNo And CPL.ParamName = @ParamName And CPT.ItemID = @ItemName)) Begin RaisError('Item: ''%s'' is either invalid or does not exist for Parameter ''%s''.', 16,-1, @ItemName, @ParamName) Return End Declare @ParamNo SmallInt = 0, @ItemID VarChar(10); Select @ParamNo = [dbo].[CustomParamList].[ParamNo] From [dbo].[CustomParamList] Where [dbo].[CustomParamList].[ParamName] = @ParamName; Select Top 1 @ItemID = CPT.ItemID From [dbo].[CustomParamList] CPL Inner Join [dbo].[CustomParamTblItems] CPT On (CPL.ParamNo = CPT.ParamNo And CPL.ParamName = @ParamName And CPT.ItemID = @ItemName); Begin Try Begin Transaction Delete [dbo].[CustomParamTblInterfaceSMValues] Where [dbo].[CustomParamTblInterfaceSMValues].[ParamNo] = @ParamNo And [dbo].[CustomParamTblInterfaceSMValues].[ItemID] = @ItemID Delete [dbo].[CustomParamTblInterfaceValues] Where [dbo].[CustomParamTblInterfaceValues].[ParamNo] = @ParamNo And [dbo].[CustomParamTblInterfaceValues].[ItemID] = @ItemID; Delete [dbo].[CustomParamTblItemsInterface] Where [dbo].[CustomParamTblItemsInterface].[ParamNo] = @ParamNo And [dbo].[CustomParamTblItemsInterface].[ItemID] = @ItemID; Delete [dbo].[CustomParamTblGlobalDefaultSMValues] Where [dbo].[CustomParamTblGlobalDefaultSMValues].[ParamNo] = @ParamNo And [dbo].[CustomParamTblGlobalDefaultSMValues].[ItemID] = @ItemID; Delete [dbo].[CustomParamTblGlobalDefaultSMDValues] Where [dbo].[CustomParamTblGlobalDefaultSMDValues].[ParamNo] = @ParamNo And [dbo].[CustomParamTblGlobalDefaultSMDValues].[ItemID] = @ItemID; Delete [dbo].[CustomParamTblGlobalDefaultValues] Where [dbo].[CustomParamTblGlobalDefaultValues].[ParamNo] = @ParamNo And [dbo].[CustomParamTblGlobalDefaultValues].[ItemID] = @ItemID; Delete [dbo].[CustomParamTblItems] WHERE [dbo].[CustomParamTblItems].[ParamNo] = @ParamNo And [dbo].[CustomParamTblItems].[ItemID] = @ItemID; EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Global Parameters', 'Delete Parameter Item',@ParamName, @ItemID Commit Transaction End Try Begin Catch Rollback Transaction Declare @ErrorMessage NVarChar(4000), @ErrorSeverity Int, @ErrorState Int; Select @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetGlobalDbDocTypeList_77](@DbVerNo int)AS /** procedure is used by EPCopy **/ BEGIN SELECT distinct -- pdtl.DocTypeNo, pdtl.DocTypeID, pdtl.SearchString, pdtl.SortOption, pdtl.SearchImage, pdtl.ResultImage, pdtl.DefValue, pdtl.Category, null AS ParentDocTypeID, dbo.EAIF_DocTypeLangAndCaptions_77(pdtl.DocTypeNo) AS Captions, dbo.EAIF_DocTypeLangAndMouseOverTexts_77(pdtl.DocTypeNo) As MouseOverTexts, 1 AS IsParent FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DbDocType] db ON dtl.DocTypeNo = db.DocTypeNo WHERE db.DbVerNo=@DbVerNo UNION ALL SELECT --dtl.DocTypeNo, dtl.DocTypeID, dtl.SearchString, dtl.SortOption, dtl.SearchImage, dtl.ResultImage, dtl.DefValue, dtl.Category, pdtl.DocTypeID AS ParentDocTypeID, dbo.EAIF_DocTypeLangAndCaptions_77(dtl.DocTypeNo) AS Captions, dbo.EAIF_DocTypeLangAndMouseOverTexts_77(dtl.DocTypeNo) As MouseOverTexts, 0 AS IsParent FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DbDocType] db ON dtl.DocTypeNo = db.DocTypeNo WHERE db.DbVerNo=@DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceDocTypes_77](@UserID nvarchar(20), @UserIP varchar(30),@IntfDocTypeNoList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[InterfaceDocType] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[InterfaceDocType] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@IntfDocTypeNoList, @SeqNoList,'+') b ON a.IntfDocTypeNo=CONVERT(int, b.Item) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @IntfDocTypeNo int SELECT @IntfDocTypeNo =CONVERT(int, b.Item) FROM dbo.EAIF_GetItemValueTable_70(@IntfDocTypeNoList, @SeqNoList,'+') b SELECT @InterfaceID=idt.InterfaceID, @Version=idt.Version FROM [dbo].[InterfaceDocType] idt WHERE idt.IntfDocTypeNo =@IntfDocTypeNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'DocTypes','Reorder Interface DocTypes', @InterfaceID,@Version COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_ConvertSiteURLToEhIS_97 (@ProfNo int, @SiteURL varchar(255), @EhISSiteURL varchar(255), @Plink bit=0) RETURNS VARCHAR(255) AS BEGIN DECLARE @ParamName varchar(20) IF @Plink=0 SET @ParamName ='ehisUrl' ELSE SET @ParamName ='ehisUrlDirect' IF EXISTS ( SELECT 1 FROM [dbo].[ProfDatabase] a with (nolock) JOIN [dbo].[DbList] b with (nolock) ON a.DbVerNo = b.DbVerNo JOIN [dbo].[Profile] p with (nolock) ON a.ProfNo = p.ProfNo WHERE p.ProfNo=@ProfNo AND b.SourceType = 'M' AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ) AND a.Enable=1 ) BEGIN IF @EhISSiteURL IS NULL OR LEN(@EhISSiteURL)=0 SELECT @EhISSiteURL=v.ParamValue FROM [dbo].[ConfigApplication] c with (nolock) JOIN [dbo].[ConfigParamList] l with (nolock) ON c.ApplicationNo=l.ApplicationNo AND c.ApplicationID='webauth' AND l.ParamName=@ParamName JOIN [dbo].[ConfigParamScalarValues] v with (nolock) ON l.ParamNo=v.ParamNo AND v.TargetNo=l.ApplicationNo IF @EhISSiteURL IS NOT NULL AND LEN(@EhISSiteURL)>0 SET @SiteURL=@EhISSiteURL END RETURN @SiteURL END
CREATE PROCEDURE [dbo].[EAUI_DeleteDocType_77] (@UserID nvarchar(20), @UserIP varchar(15),@DocTypeNo int)AS BEGIN DECLARE @DocTypeID varchar(10) DECLARE @Caption nvarchar(255) SELECT @DocTypeID = dtl.DocTypeID, @Caption = dtc.Caption FROM dbo.DocTypeList dtl INNER JOIN dbo.DocTypeCaption dtc ON dtl.DocTypeNo = dtc.DocTypeNo WHERE dtl.DocTypeNo = @DocTypeNo AND dtc.LangCode = 'en' BEGIN TRANSACTION UPDATE dbo.DocTypeList SET [dbo].[DocTypeList].[ParentDocTypeNo] = null WHERE [dbo].[DocTypeList].[ParentDocTypeNo]=@DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE dbo.DbSearchOption SET [dbo].[DbSearchOption].[SourceType]=null WHERE [dbo].[DbSearchOption].[SourceType]=@DocTypeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE dbo.DbBrowseOption SET [dbo].[DbBrowseOption].[SourceType]=null WHERE [dbo].[DbBrowseOption].[SourceType]=@DocTypeID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM dbo.DocTypeList WHERE [dbo].[DocTypeList].[DocTypeNo]=@DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID, @UserIP, 'DocTypes','Delete DocType', @DocTypeID, @Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_CopyUserGroup_70]( @SrcCustID varchar(10), @SrcGroupID nvarchar(10), @DstCustID varchar(10), @DstGroupID nvarchar(10)) AS BEGIN DECLARE @SrcGroupNo int DECLARE @DstGroupNo int BEGIN TRANSACTION INSERT INTO [dbo].[UserGroup]([dbo].[UserGroup].[CustID], [dbo].[UserGroup].[GroupID], [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], [dbo].[UserGroup].[GroupEmail]) SELECT @DstCustID, @DstGroupID, [dbo].[UserGroup].[GroupType], [dbo].[UserGroup].[GroupName], null FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@SrcCustID AND [dbo].[UserGroup].[GroupID]=@SrcGroupID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SELECT @SrcGroupNo=[dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@SrcCustID AND [dbo].[UserGroup].[GroupID]=@SrcGroupID SELECT @DstGroupNo=[dbo].[UserGroup].[GroupNo] FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID]=@DstCustID AND [dbo].[UserGroup].[GroupID]=@DstGroupID INSERT INTO [dbo].[CustomParamScalarValues] SELECT @DstGroupNo, 'G', a.ParamNo, a.ParamValue FROM [dbo].[CustomParamScalarValues] AS a INNER JOIN [dbo].[CustomParamEditDetail] AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo=@SrcGroupNo AND a.ParamLevel='G' AND b.Copyable=1 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[CustomParamXmlValues] SELECT @DstGroupNo, 'G', a.ParamNo, [a].[ItemName],a.ParamValue,a.SeqNo FROM [dbo].[CustomParamXmlValues] AS a INNER JOIN [dbo].[CustomParamEditDetail] AS b ON a.ParamNo = b.ParamNo WHERE a.TargetNo = @SrcGroupNo AND a.ParamLevel = 'G' AND b.Copyable = 1 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDbListForProfDbPage_132] ( @ProfNo INT,@DbStatus CHAR(1),@SourceType CHAR(1) ) AS BEGIN --Note : This is a copy of EAUI_GetProfileAllDbs_EnabledAndDisabledList_131 with Release 13.2 changes for EHPMEBSCOADMIN-1327 -- on top it. The procedure name is changed to reflect the new functionality of the procedure. The procedure -- no longer returns a complete list of enabled and disabled databases on the profile. -- New input parameters @DbStatus and @SourceType filters the data on the SQL. -- @DbStatus : This parameter can have values '0','1','A' -- Where '0' - Get Disabled profile databases -- '1' - Get Enabled profile databases -- 'A' - Get All databases - both enabled /Disabled. (Applicable to Paying customers only) -- @SourceType : This parameter can have values 'C','D' and 'O' -- Where 'C' - Includes Catalogs and IR's only -- 'D' - Includes Internal databases -- 'O' - All sources types other than 'C' and 'D'. -- @SourceType would be primarly used for internal customer only. -- The Show dropdown on Profile databases tab would have different options based on the customer type. -- For internal customer - Options available are Enabled, Disabled - Internal Databases, Disabled - Catalogs and IR's -- and Disabled - Others. -- There is NO option to get all disabled databases (for internal customer) to avoid performance issues. -- For Paying customer - Options available are Enabled, Disabled and 'All'. -- DECLARE @IndexBrowseParamNo INT DECLARE @RefSearchParamNo INT DECLARE @GroupDbs BIT DECLARE @ParamNo INT DECLARE @InterfaceID VARCHAR(10) DECLARE @Version VARCHAR(10) DECLARE @IsPrimaryDbAllowedOnIntf BIT DECLARE @CustType CHAR(1) DECLARE @ProfID VARCHAR(10) DECLARE @CustNo INT DECLARE @DbLabel VARCHAR(10) DECLARE @EnableFlag int SELECT @CustType = [b].[CustType] , @ProfID = a.ProfID , @CustNo = b.CustNo , @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo = @ProfNo IF @DbStatus = 'A' SET @EnableFlag = 3 ELSE SET @EnableFlag = @DbStatus DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) -- Get DBs For Internal Customers. These customers do not have ProfDatabases to begin with. IF (( @CustType = 'I' OR @CustType = 'P') AND @EnableFlag = 0) BEGIN IF (@SourceType = 'D' OR @SourceType='C' ) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType =@SourceType ORDER BY a.DisplayName asc ELSE -- Index connectors. -- Check if the profile interface supports 'M' type databases. IF @SourceType='O' AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN EASUPPORT.dbo.ProductInterface pi ON p.InterfaceID=pi.InterfaceID AND p.Version=pi.Version JOIN EASUPPORT.dbo.Product pr ON pi.ProductID=pr.ProductID and pr.ProductType= 'M' WHERE p.ProfNo=@ProfNo) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType JOIN [dbo].[CustExternalDbList] cedl ON cedl.CustNo=@CustNo AND cedl.DbVerNo=a.DbVerNo LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType NOT IN ('D','C') AND cedl.Status='A' ORDER BY a.DisplayName asc END DECLARE @ProfDB TABLE ( GroupNo INT , GroupHeading VARCHAR(MAX) , SubGroupNo INT , RowNo INT , SeqNo INT , DbVerNo INT PRIMARY KEY , DisplayName NVARCHAR(MAX) , DbName VARCHAR(10) , SelDefault BIT , StartPage VARCHAR(20) , StartPageTemplate VARCHAR(MAX) , Mode VARCHAR(10) , SourceType CHAR(1) , DbFlag VARCHAR(3) , SortField1 CHAR(1) , Enable BIT ) SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'groupProfDatabases' SELECT @GroupDbs = [dbo].[CustomParamScalarValues].[ParamValue] FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel] = 'P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @paramNo SELECT @InterfaceID = [dbo].[Profile].[InterfaceID] , @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT @IsPrimaryDbAllowedOnIntf = ISNULL([dbo].[InterfaceVersion].[AllowPrimaryDatabases], 0) FROM [dbo].[InterfaceVersion] WITH ( NOLOCK ) WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [cpd].[DefValue] FROM [dbo].[CustomParamDefaults] cpd JOIN [dbo].[Profile] p ON cpd.InterfaceID = p.InterfaceID AND cpd.Version = p.Version AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode WHERE p.ProfNo = @ProfNo AND [cpd].[ParamNo] = @ParamNo IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] = @ParamNo END END IF @GroupDbs = 1 BEGIN -- For Paying customers - All DbStatus (0 - Disabled,1 - Enabled ,3 --ALL) -- For Internal customers - DbStatus (1 - Enabled only) IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND [b].[SourceType] <> 'M' AND [b].[DbName] <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , a.SelDefault , a.StartPage , -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) '' AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode , b.SourceType AS SourceType , 'R' AS DbFlag , 'Z' AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a -- JOIN dbList b ON a.DbVerNo = b.DbVerNo JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0 LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' WHERE a.ProfNo = @ProfNo AND (@EnableFlag =3 OR a.Enable = @EnableFlag) --@EnableFlag: Get All databases -Enabled and disabled AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND ( a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate, GETDATE()) < 0 ) AND ( cedl.DbVerNo IS NULL ) END -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND SourceType <> 'M' AND DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.Id , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) '' AS 'StartPageTemplate' , 'Internal' AS Mode , b.SourceType AS SourceType , 'R' AS DbFlag , 'Z' AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a -- INNER JOIN dbList b ON a.DbVerNo = b.DbVerNo INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0 WHERE a.DbVerNo > 0 END -- The following update is common to both internal and paying customer UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, DisplayName ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 1, 2, 3, 4 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, SeqNo ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 5 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo END ELSE BEGIN IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT ISNULL(ISNULL(ip.SeqNo, a.SeqNo), 1) SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , a.SelDefault , a.StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a -- INNER JOIN dbList b ON ( b.DbVerNo = a.DbVerNo ) INNER JOIN [dbo].[DbList] b ON (a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0) LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' WHERE a.ProfNo = @ProfNo AND (@EnableFlag = 3 OR a.Enable = @EnableFlag) AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND ( a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate, GETDATE()) < 0 ) AND ( cedl.DbVerNo IS NULL )-- DbStatus 3: Get both enabled and disabled -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT a.Id AS SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , 'Internal' AS Mode , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a -- INNER JOIN dbList b ON a.DbVerNo = b.DbVerNo INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0 LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) IF EXISTS ( SELECT 1 FROM @ProfDB WHERE DbFlag = 'P' ) UPDATE @ProfDB SET [pdb1].[DbFlag] = 'PM' -- Multiple Primary Databases FROM @ProfDB pdb1 WHERE [pdb1].[DbFlag] = 'P' END IF (@CustType = 'I' OR @CustType ='P') SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[SourceType] , [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName] ELSE SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[SourceType] , [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON pdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS null ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName] END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceFeatureItem_77](@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @FieldsXML nvarchar(max))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) DECLARE @FieldsXML1 XML SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo SET @FieldsXML1=CAST(@FieldsXML as XML) DECLARE @ItemNo int DECLARE @SeqNo int SELECT @ItemNo=ISNULL(Max([dbo].[InterfaceFeatureValues].[ItemNo])+1,1), @SeqNo=ISNULL(Max([dbo].[InterfaceFeatureValues].[SeqNo])+1,1) FROM [dbo].[InterfaceFeatureValues] WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceFeatureValues] ([dbo].[InterfaceFeatureValues].[InterfaceFeatureNo], [dbo].[InterfaceFeatureValues].[ItemNo], [dbo].[InterfaceFeatureValues].[FieldValueXml], [dbo].[InterfaceFeatureValues].[SeqNo]) VALUES (@InterfaceFeatureNo, @ItemNo, @FieldsXML1, @SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Add Feature Item', @InterfaceID,@Version,@FeatureName,@ItemNo COMMIT TRANSACTION END
-- EHPMEBSCOADMIN-924 CREATE PROCEDURE [dbo].[EPCS_GetProfileDisciplines_131] (@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10))AS BEGIN DECLARE @ProfNo int SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) SELECT [dl].[DisciplineCode], CASE (ISNULL(pd.SelDefault, dl.SelDefault)) WHEN 1 THEN 'y' WHEN 0 THEN 'n' ELSE 'n' END AS SelDefault FROM [dbo].[DisciplineList] dl LEFT OUTER JOIN [dbo].[ProfDiscipline] pd ON dl.DisciplineNo = pd.DisciplineNo AND pd.ProfNo = @ProfNo WHERE ISNULL(pd.Show, dl.Show) = 1 END
CREATE PROCEDURE [dbo].[BLL_GetLocalHoldingsInfo](@CustID varchar(10), @CollID varchar(50), @ISSNlist varchar(1024) ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID, @CollID) SELECT m.ISSN, l.Subscribe, d.FromDate, d.ToDate, SUBSTRING(l.Notes,1,8000) as Notes, SUBSTRING(ym.MsgText,1,8000) as YesMessage, SUBSTRING(nm.MsgText,1,8000) as NoMessage FROM dbo.EAIF_GetItemTableSingleByte_70(@ISSNlist, ',') AS ws INNER JOIN [dbo].[LocalDate] AS d RIGHT OUTER JOIN [dbo].[MasterTitle] AS m ON d.TitleNo = m.TitleNo AND d.ColNo = @ColNo ON ws.Item = m.ISSN INNER JOIN [dbo].[LocalTitle] AS l ON m.TitleNo = l.TitleNo INNER JOIN [dbo].[YesMessage] AS ym ON l.YesMsgNo = ym.YesMsgNo INNER JOIN [dbo].[NoMessage] AS nm ON l.NoMsgNo = nm.NoMsgNo WHERE (l.ColNo = @ColNo) ORDER BY m.ISSN END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaces_70] AS SELECT [dbo].[InterfaceLanguage].[InterfaceID], [dbo].[InterfaceLanguage].[Version], [dbo].[InterfaceLanguage].[InterfaceName] FROM [dbo].[InterfaceLanguage] WHERE [dbo].[InterfaceLanguage].[LangCode] = 'en'
Create Procedure [dbo].[EATL_GetContentLinksByLangCode_102] (@LangCode varchar(10)) as Select [dbo].[DbContentCaptions].[ContentType],[dbo].[DbContentCaptions].[LinkText] FROM [dbo].[DbContentCaptions] WHERE [dbo].[DbContentCaptions].[LangCode]=@LangCode
CREATE PROCEDURE [dbo].[EPCAS_GetWTProfParamValues](@Profile int) AS BEGIN EXEC [dbo].[EAIP_GetProfileParamByCategory_70] 'webToolKitBasicProfile', @Profile END
CREATE FUNCTION dbo.EAIF_GetURLsFromXML(@XML NVARCHAR(MAX)) RETURNS @URLs TABLE (URLText NVARCHAR(MAX)) AS BEGIN DECLARE @URL NVARCHAR(4000) WHILE CHARINDEX('"http', @XML) > 0 OR CHARINDEX('''http', @XML) > 0 BEGIN IF CHARINDEX('"http', @XML) > 0 BEGIN SET @XML = SUBSTRING(@XML, CHARINDEX('"http', @XML) , LEN(@XML)) SET @URL = SUBSTRING(@XML, CHARINDEX('"http', @XML) , CHARINDEX('"', @XML, LEN('"http'))) END ELSE BEGIN SET @XML = SUBSTRING(@XML, CHARINDEX('''http', @XML) , LEN(@XML)) SET @URL = SUBSTRING(@XML, CHARINDEX('''http', @XML) , CHARINDEX('''', @XML, LEN('''http'))) END SET @XML = SUBSTRING(@XML, CHARINDEX(@URL, @XML) +LEN(@URL), LEN(@XML)) SET @URL = REPLACE(REPLACE(@URL, '"', ''), '''', '') INSERT @URLs (URLText) VALUES(@URL) END RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbSearchOptionsForAdd_76] (@DbVerNo int, @ScreenNo int ) AS BEGIN SELECT dso.SearchOptionNo, sol.SearchOptionId + ':' + dsc.OptionCaption As Value FROM [dbo].[DbSearchOption] dso LEFT OUTER JOIN [dbo].[DbInterfaceSearchOption] iso ON dso.DbVerNo = iso.DbVerNo AND dso.SearchOptionNo = iso.SearchOptionNo AND iso.IntfScreenNo = @ScreenNo AND iso.DbVerNo = @DbVerNo INNER JOIN [dbo].[DbSearchOptionCaption] dsc ON dso.DbVerNo = dsc.DbVerNo AND dso.SearchOptionNo = dsc.SearchOptionNo INNER JOIN [dbo].[SearchOptionList] sol ON dso.SearchOptionNo = sol.SearchOptionNo WHERE dso.DbVerNo = @DbVerNo AND dsc.LangCode='en' AND iso.SearchOptionNo is null ORDER BY sol.SearchOptionId END
CREATE PROCEDURE [dbo].[EAIP_PromoteDbPickupLocations_141](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN SET NOCOUNT ON; IF NOT EXISTS (SELECT 1 FROM dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@OldDbVerNo) BEGIN DELETE dbo.DbPickupLocation WHERE [dbo].[DbPickupLocation].[DbVerNo]=@NewDbVerNo END ELSE BEGIN -- Insert pickup locations (that don't exist in new Label) from old Label to new Label INSERT INTO dbo.DbPickupLocation([p2].[DbVerNo], [p2].[LocationID], [p2].[DisplayName]) SELECT @NewDbVerNo, p1.LocationID, p1.DisplayName FROM dbo.DbPickupLocation p1 LEFT OUTER JOIN dbo.DbPickupLocation p2 ON p2.DbVerNo=@NewDbVerNo AND p2.LocationID=p1.LocationID WHERE p1.DbVerNo = @OldDbVerNo AND (p2.DbVerNo IS NULL) -- Update pickup location DisplayName, if pickup locations exist in new Label UPDATE p1 SET p1.DisplayName=p2.DisplayName FROM dbo.DbPickupLocation p1 INNER JOIN dbo.DbPickupLocation p2 ON p2.DbVerNo=@OldDbVerNo AND p2.LocationID=p1.LocationID WHERE p1.DbVerNo=@NewDbVerNo END END
--sql content merged from file: \StoredProcedures\EAUI_UpdateInterfaceParameterNewProfileDefault_92.sql CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceParameterNewProfileDefault_92] (@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20), @StMode char, @ParamNo int, @NewProfileDefValue nvarchar(1000)) AS BEGIN DECLARE @DefValue nvarchar(2000) SELECT @DefValue = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo IF EXISTS (SELECT 1 FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[MarketID]=@MarketID AND [dbo].[CustomParamDefaults].[STMode]= @StMode AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ) -- If the New Profile Default is same as Param Default, clear the New Profile default value UPDATE [dbo].[CustomParamDefaults] SET [dbo].[CustomParamDefaults].[NewProfileDefValue]= CASE WHEN @NewProfileDefValue=[dbo].[CustomParamDefaults].[DefValue] THEN null ELSE @NewProfileDefValue END WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version AND [dbo].[CustomParamDefaults].[MarketID]=@MarketID AND [dbo].[CustomParamDefaults].[STMode]= @StMode AND [dbo].[CustomParamDefaults].[ParamNo]=@ParamNo ELSE INSERT INTO [dbo].[CustomParamDefaults] ([dbo].[CustomParamDefaults].[InterfaceID],[dbo].[CustomParamDefaults].[Version],[dbo].[CustomParamDefaults].[MarketID],[dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[ParamNo],[dbo].[CustomParamDefaults].[DefValue],[dbo].[CustomParamDefaults].[NewProfileDefValue]) VALUES (@InterfaceID,@Version,@MarketID,@StMode,@ParamNo,@DefValue,CASE WHEN LTRIM(RTRIM(@NewProfileDefValue))=@DefValue THEN null ELSE @NewProfileDefValue END ) DECLARE @Intf varchar(100), @Mkt varchar(50), @ParamName varchar(100) SET @Intf = @InterfaceID+'('+@Version+')' SET @Mkt = @MarketID + ' - ' + @STMode SET @ParamName = dbo.EAIF_GetCustomParamName_70(@ParamNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Edit Parameter NewProfile DefaultValue', @Intf, @Mkt, @ParamName, @NewProfileDefValue END
CREATE FUNCTION [dbo].[EAIF_HasHighAscii](@ParamValue varchar(max), @Start int) returns int AS BEGIN DECLARE @Input varchar(8000) DECLARE @Pos int DECLARE @AVal int DECLARE @SVal char(1) SET @Pos = 1 SET @Input = substring(@ParamValue,@Start,8000) DECLARE @DataLength int SET @DataLength = datalength(@Input) WHILE @Pos <= @DataLength BEGIN SET @SVal = substring(@Input,@Pos, 1) SET @AVal = ASCII(@SVal) IF @AVal > 127 RETURN 1 SET @Pos = @Pos +1 END RETURN 0 END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerListBrowseByCustName_90] ( @CustName nvarchar(100), @CallerFlgTxt varchar(30) = '' ) as BEGIN if (@CallerFlgTxt = '') SELECT TOP 1000 c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') as ParentID FROM [dbo].[Customer] c WHERE c.CustName like @CustName + '%' AND c.CustID<>'system' ORDER BY c.CustName /*08/25/2008 AW disallow internal users & partners adding subscription to db*/ else if (@CallerFlgTxt = 'util_AddModSub') select top 1000 [dbo].[Customer].[CustName], [dbo].[Customer].[CustID], ISNULL(dbo.EAIF_GetParents_70([dbo].[Customer].[CustID]),'') as ParentID from dbo.Customer where lower([dbo].[Customer].[CustType]) in ('s', 't') and [dbo].[Customer].[CustName] like @CustName + '%' and [dbo].[Customer].[CustID]<>'system' order by [dbo].[Customer].[CustName] END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterface_182](@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID varchar(10)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[Interface] Where [dbo].[Interface].[InterfaceID]=@InterfaceID EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Interfaces', 'DELETE Interface', @InterfaceID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetGlobalInterfaceClusters_102](@InterfaceId VARCHAR(10), @Version VARCHAR(10)) AS BEGIN SELECT gc.ID as ClustId, gci.InterfaceId, gci.Version, gcid.MinDisplay, gcid.MaxDisplay, gcid.MaxPercentageResults, gcid.CaseConversion, gcid.Show FROM [dbo].[GlobalCluster] gc LEFT JOIN [dbo].[GlobalClusterInterface] gci on gc.ID = gci.ClustId AND gci.InterfaceId = @InterfaceId AND gci.Version = @Version LEFT JOIN [dbo].[GlobalClusterInterfaceDetails] gcid ON gci.ClustId = gcid.ClustId AND gci.InterfaceId = gcid.InterfaceId AND gci.Version = gcid.Version WHERE ((gci.InterfaceId = @InterfaceId AND gci.Version = @Version)) --OR (gcid.CaseConversion IS NOT NULL OR gcid.MaxDisplay IS NOT NULL OR gcid.MaxPercentageResults IS NOT NULL OR gcid.MinDisplay IS NOT NULL AND gc.AutoAdd2Interfaces = 1)) END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceDocTypesById_77](@UserID varchar(10), @UserIP varchar(30),@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN DECLARE @IntfDocTypeNos varchar(8000) DECLARE @SeqNos varchar(8000) DECLARE @SeqNo int SET @IntfDocTypeNos='' SET @SeqNos='' SET @SeqNo = 0 SELECT @IntfDocTypeNos=@IntfDocTypeNos+CONVERT(varchar, idt.IntfDocTypeNo)+'+', @SeqNo=@SeqNo+1, @SeqNos=@SeqNos+CONVERT(varchar, @SeqNo)+'+' FROM [dbo].[InterfaceDocType] idt INNER JOIN [dbo].[DocTypeList] dtl ON dtl.DocTypeNo = idt.DocTypeNo WHERE idt.InterfaceID = @InterfaceID AND idt.Version=@Version ORDER By dtl.DocTypeID IF LEN(@IntfDocTypeNos)=0 RETURN IF LEN(@IntfDocTypeNos)>0 SET @IntfDocTypeNos=SUBSTRING(@IntfDocTypeNos,1, LEN(@IntfDocTypeNos)-1) IF LEN(@SeqNos)>0 SET @SeqNos=SUBSTRING(@SeqNos,1,LEN(@SeqNos)-1) exec [dbo].[EAUI_ReorderInterfaceDocTypes_77] @UserID, @UserIP, @IntfDocTypeNos, @SeqNos END
CREATE FUNCTION dbo.EAIF_ConvertToEntity(@ParamValue varchar(max), @Start int) returns varchar(8000) AS BEGIN DECLARE @Input varchar(8000) DECLARE @RetVal varchar(8000) DECLARE @Pos int DECLARE @AVal int DECLARE @SVal char(1) SET @Pos = 1 SET @RetVal ='' SET @Input = substring(@ParamValue,@Start,8000) DECLARE @DataLength int SET @DataLength = datalength(@Input) WHILE @Pos <= @DataLength BEGIN SET @SVal = substring(@Input,@Pos, 1) SET @AVal = ASCII(@SVal) IF @AVal > 127 SELECT @RetVal = @RetVal+ '' +convert(varchar,@AVal)+';' ELSE SET @RetVal = @RetVal + @SVal SET @Pos = @Pos +1 END RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_DeleteFeature_80](@UserID nvarchar(20),@UserIP varchar(15),@FeatureNo int) AS BEGIN DECLARE @Category varchar(20) DECLARE @Name varchar(100) SELECT @Category=[dbo].[FeatureList].[Category], @Name= [dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo BEGIN TRANSACTION DELETE [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Delete Feature', @Category, @Name COMMIT TRANSACTION END
/* Procedure will add rows to the PromoteRequestStatus table for the give Promote Database operation. If processed synchonously then Status will be Complete (C) or Failed (F). If Processed Asynchronously then Status will be Submitted (S) */ Create Procedure [dbo].[EAIP_CreatePromoteRequest_161](@DbName varchar(10), @SourceDbLabel varchar(10), @TargetDbLabel varchar(10), @PromoteDetails xml, @Status char(1), @PromoteErrorMessage varchar(2000)=NULL) As Begin Begin Try Declare @SourceDbVerNo int Declare @PromoteRequestID int Declare @PromoteRequestTime datetime Declare @ProcessedTime datetime set @PromoteRequestTime=GetDate() -- When creating a Promote Request with a Status of Complete (C) or Failed (F) then set the ProcessedTime to be the same as the PromoteRequestTime if (@Status='C' or @Status='F') Set @ProcessedTime=@PromoteRequestTime Select @SourceDbVerNo=[dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName and [dbo].[DbList].[DbLabel]=@SourceDbLabel Insert [dbo].[PromoteRequestStatus] ([dbo].[PromoteRequestStatus].[PromoteRequestTime], [dbo].[PromoteRequestStatus].[SourceDbVerNo], [dbo].[PromoteRequestStatus].[TargetDbLabel], [dbo].[PromoteRequestStatus].[PromoteDetails], [dbo].[PromoteRequestStatus].[Status], [dbo].[PromoteRequestStatus].[ProcessedTime], [dbo].[PromoteRequestStatus].[PromoteErrorMessage]) Values (@PromoteRequestTime, @SourceDbVerNo, @TargetDbLabel, @PromoteDetails, @Status, @ProcessedTime, @PromoteErrorMessage) set @PromoteRequestID=@@Identity -- When creating a Promote Request from Rebuild to Live, then also create a Promote Request from Rebuild to LiveQC if (@TargetDbLabel='live' and @SourceDbLabel<>'liveQC') Begin Insert [dbo].[PromoteRequestStatus] ([dbo].[PromoteRequestStatus].[PromoteRequestTime], [dbo].[PromoteRequestStatus].[SourceDbVerNo], [dbo].[PromoteRequestStatus].[TargetDbLabel], [dbo].[PromoteRequestStatus].[PromoteDetails], [dbo].[PromoteRequestStatus].[Status], [dbo].[PromoteRequestStatus].[ProcessedTime], [dbo].[PromoteRequestStatus].[PromoteErrorMessage]) Values (@PromoteRequestTime, @SourceDbVerNo, 'liveQC', @PromoteDetails, @Status, @ProcessedTime, @PromoteErrorMessage) End select @PromoteRequestID End try BEGIN CATCH DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAUI_GetProfileDbListForProfDbPageFilteredPaged_252] ( @ProfNo INT ,@DbStatus CHAR(1) ,@SourceType CHAR(1) ,@browseField VARCHAR(25) = 'DbName' ,@browseTerm NVARCHAR(255) = '' ,@pageIndex INT = 0 ,@pageSize INT = 10 ) AS BEGIN --Note : This is a copy of EAUI_GetProfileAllDbs_EnabledAndDisabledList_131 with Release 13.2 changes for EHPMEBSCOADMIN-1327 -- on top it. The procedure name is changed to reflect the new functionality of the procedure. The procedure -- no longer returns a complete list of enabled and disabled databases on the profile. -- New input parameters @DbStatus and @SourceType filters the data on the SQL. -- @DbStatus : This parameter can have values '0','1','A' -- Where '0' - Get Disabled profile databases -- '1' - Get Enabled profile databases -- 'A' - Get All databases - both enabled /Disabled. (Applicable to Paying customers only) -- @SourceType : This parameter can have values 'C','D' and 'O' -- Where 'C' - Includes Catalogs and IR's only -- 'D' - Includes Internal databases -- 'O' - All sources types other than 'C' and 'D'. -- @SourceType would be primarly used for internal customer only. -- The Show dropdown on Profile databases tab would have different options based on the customer type. -- For internal customer - Options available are Enabled, Disabled - Internal Databases, Disabled - Catalogs and IR's -- and Disabled - Others. -- There is NO option to get all disabled databases (for internal customer) to avoid performance issues. -- For Paying customer - Options available are Enabled, Disabled and 'All'. -- DECLARE @IndexBrowseParamNo INT DECLARE @RefSearchParamNo INT DECLARE @GroupDbs BIT DECLARE @ParamNo INT DECLARE @InterfaceID VARCHAR(10) DECLARE @Version VARCHAR(10) DECLARE @IsPrimaryDbAllowedOnIntf BIT DECLARE @CustType CHAR(1) DECLARE @ProfID VARCHAR(10) DECLARE @CustNo INT DECLARE @DbLabel VARCHAR(10) DECLARE @EnableFlag int SELECT @CustType = [b].[CustType] , @ProfID = a.ProfID , @CustNo = b.CustNo , @DbLabel = [a].[DbLabel] FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo = @ProfNo IF @DbStatus = 'A' SET @EnableFlag = 3 ELSE SET @EnableFlag = @DbStatus DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) -- Get DBs For Internal Customers. These customers do not have ProfDatabases to begin with. IF (( @CustType = 'I' OR @CustType = 'P') AND @EnableFlag = 0) BEGIN IF (@SourceType = 'D' OR @SourceType='C' ) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType =@SourceType ORDER BY a.DisplayName asc ELSE -- Index connectors. -- Check if the profile interface supports 'M' type databases. IF @SourceType='O' AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN EASUPPORT.dbo.ProductInterface pi ON p.InterfaceID=pi.InterfaceID AND p.Version=pi.Version JOIN EASUPPORT.dbo.Product pr ON pi.ProductID=pr.ProductID and pr.ProductType= 'M' WHERE p.ProfNo=@ProfNo) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType JOIN [dbo].[CustExternalDbList] cedl ON cedl.CustNo=@CustNo AND cedl.DbVerNo=a.DbVerNo LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType NOT IN ('D','C') AND cedl.Status='A' ORDER BY a.DisplayName asc END DECLARE @ProfDB TABLE ( GroupNo INT , GroupHeading VARCHAR(MAX) , SubGroupNo INT , RowNo INT , SeqNo INT , DbVerNo INT PRIMARY KEY , DisplayName NVARCHAR(MAX) , DbName VARCHAR(10) , SelDefault BIT , StartPage VARCHAR(20) , StartPageTemplate VARCHAR(MAX) , Mode VARCHAR(10) , SourceType CHAR(1) , DbFlag VARCHAR(3) , SortField1 CHAR(1) , Enable BIT ) SET @IndexBrowseParamNo = dbo.EAIF_GetDbParamNumber_70('indexBrowseAllowed') SET @RefSearchParamNo = dbo.EAIF_GetDbParamNumber_70('refrenceSearchingAllowed') SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamName] = 'groupProfDatabases' SELECT @GroupDbs = [dbo].[CustomParamScalarValues].[ParamValue] FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo] = @ProfNo AND [dbo].[CustomParamScalarValues].[ParamLevel] = 'P' AND [dbo].[CustomParamScalarValues].[ParamNo] = @paramNo SELECT @InterfaceID = [dbo].[Profile].[InterfaceID] , @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo] = @ProfNo SELECT @IsPrimaryDbAllowedOnIntf = ISNULL([dbo].[InterfaceVersion].[AllowPrimaryDatabases], 0) FROM [dbo].[InterfaceVersion] WITH ( NOLOCK ) WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [cpd].[DefValue] FROM [dbo].[CustomParamDefaults] cpd JOIN [dbo].[Profile] p ON cpd.InterfaceID = p.InterfaceID AND cpd.Version = p.Version AND cpd.MarketID = p.MarketID AND cpd.STMode = p.STMode WHERE p.ProfNo = @ProfNo AND [cpd].[ParamNo] = @ParamNo IF @GroupDbs IS NULL BEGIN SELECT @GroupDbs = [dbo].[CustomParamList].[DefValue] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo] = @ParamNo END END IF @GroupDbs = 1 BEGIN -- For Paying customers - All DbStatus (0 - Disabled,1 - Enabled ,3 --ALL) -- For Internal customers - DbStatus (1 - Enabled only) IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND [b].[SourceType] <> 'M' AND [b].[DbName] <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , a.SelDefault , a.StartPage , -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) '' AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode , b.SourceType AS SourceType , 'R' AS DbFlag , 'Z' AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a -- JOIN dbList b ON a.DbVerNo = b.DbVerNo JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0 LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' WHERE a.ProfNo = @ProfNo AND (@EnableFlag =3 OR a.Enable = @EnableFlag) --@EnableFlag: Get All databases -Enabled and disabled AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND ( a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate, GETDATE()) < 0 ) AND ( cedl.DbVerNo IS NULL ) END -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) BEGIN INSERT @ProfDB ( GroupNo , GroupHeading , SubGroupNo , RowNo , SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , DbFlag , SortField1 , Enable ) SELECT CASE b.SourceType WHEN 'M' THEN 2 ELSE 1 END AS GroupNo , CASE b.SourceType WHEN 'M' THEN 'Remote Content (Integrated Search Connectors)' ELSE 'Discovery Service Sources' END AS GroupHeading , CASE WHEN b.SourceType = 'C' THEN CASE WHEN b.DbName LIKE 'cat%' THEN 2 WHEN b.DbName LIKE 'ir%' THEN 3 END WHEN b.SourceType <> 'C' AND SourceType <> 'M' AND DbName <> 'eda' THEN 4 WHEN b.SourceType = 'M' THEN 5 END AS SubGroupNo , 1 , a.Id , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , -- dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, -- @IndexBrowseParamNo, -- @RefSearchParamNo) '' AS 'StartPageTemplate' , 'Internal' AS Mode , b.SourceType AS SourceType , 'R' AS DbFlag , 'Z' AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a -- INNER JOIN dbList b ON a.DbVerNo = b.DbVerNo INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0 WHERE a.DbVerNo > 0 END -- The following update is common to both internal and paying customer UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, DisplayName ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 1, 2, 3, 4 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo UPDATE @ProfDB SET [pdb1].[RowNo] = RowNumber FROM @ProfDB pdb1 JOIN ( SELECT ROW_NUMBER() OVER ( PARTITION BY GroupNo ORDER BY SubGroupNo, SeqNo ) RowNumber , * FROM @ProfDB WHERE SubGroupNo IN ( 5 ) ) pdb2 ON pdb1.DbVerNo = pdb2.DbVerNo END ELSE BEGIN IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT ISNULL(ISNULL(ip.SeqNo, a.SeqNo), 1) SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , a.SelDefault , a.StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END AS Mode , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , a.Enable FROM [dbo].[ProfDatabase] a -- INNER JOIN dbList b ON ( b.DbVerNo = a.DbVerNo ) INNER JOIN [dbo].[DbList] b ON (a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0) LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) LEFT OUTER JOIN [dbo].[CustExternalDbList] cedl ON cedl.DbVerNo = a.DbVerNo AND cedl.CustNo = @CustNo AND cedl.Status = 'P' WHERE a.ProfNo = @ProfNo AND (@EnableFlag = 3 OR a.Enable = @EnableFlag) AND ( a.Mode IS NULL OR a.Mode <> 'X' ) AND ( a.AccessEndDate IS NULL OR DATEDIFF(hh, a.AccessEndDate, GETDATE()) < 0 ) AND ( cedl.DbVerNo IS NULL )-- DbStatus 3: Get both enabled and disabled -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) INSERT @ProfDB ( SeqNo , DbVerNo , DisplayName , DbName , SelDefault , StartPage , StartPageTemplate , Mode , SourceType , GroupHeading , DbFlag , SortField1 , Enable ) SELECT a.Id AS SeqNo , a.DbVerNo , b.DisplayName + N' (' + b.DbName + N')' AS DisplayName , b.DbName , @GroupDbs AS SelDefault , '' AS StartPage , dbo.EAIF_GetProfDbStartPageOptions_70(a.DbVerNo, @IndexBrowseParamNo, @RefSearchParamNo) AS 'StartPageTemplate' , 'Internal' AS Mode , b.SourceType AS SourceType , '' AS GroupHeading , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'P' -- Primary Db ELSE 'R' -- Regular database END AS DbFlag , CASE WHEN ( ip.DbVerNo > 0 AND @IsPrimaryDbAllowedOnIntf = 1 ) THEN 'A' -- Primary Db ELSE 'Z' -- Regular database END AS SortField1 , 0 AS Enable FROM @ProfDbsForIntCustomer a -- INNER JOIN dbList b ON a.DbVerNo = b.DbVerNo INNER JOIN [dbo].[DbList] b ON a.DbVerNo = b.DbVerNo AND b.NonSearchableDb=0 LEFT OUTER JOIN [dbo].[InterfacePrimaryDatabases] ip ON ( ip.InterfaceID = @InterfaceID AND ip.Version = @Version AND ip.DbVerNo = a.DbVerNo ) IF EXISTS ( SELECT 1 FROM @ProfDB WHERE DbFlag = 'P' ) UPDATE @ProfDB SET [pdb1].[DbFlag] = 'PM' -- Multiple Primary Databases FROM @ProfDB pdb1 WHERE [pdb1].[DbFlag] = 'P' END DECLARE @ProfileDatabases TABLE ( GroupNo INT ,GroupHeading VARCHAR(MAX) ,SubGroupNo INT ,RowNo INT ,SeqNo INT ,DbVerNo INT PRIMARY KEY ,DisplayName NVARCHAR(MAX) ,DbName VARCHAR(10) ,SelDefault BIT ,StartPage VARCHAR(20) ,StartPageTemplate VARCHAR(MAX) ,Mode VARCHAR(10) ,SourceType CHAR(1) ,DbFlag VARCHAR(3) ,SortField CHAR(1) ,[Enable] BIT ); IF (@CustType = 'I' OR @CustType ='P') INSERT INTO @ProfileDatabases SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[SourceType] , [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName] ELSE INSERT INTO @ProfileDatabases SELECT [pdb].[GroupNo] , [pdb].[GroupHeading] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SeqNo] , pdb.DbVerNo , [pdb].[DisplayName] , [pdb].[DbName] , [pdb].[SelDefault] , [pdb].[StartPage] , [pdb].[StartPageTemplate] , [pdb].[Mode] , [pdb].[SourceType] , [pdb].[DbFlag] , [pdb].[SortField1] , [pdb].[Enable] FROM @ProfDB pdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON pdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS null ORDER BY [pdb].[GroupNo] , [pdb].[SubGroupNo] , [pdb].[RowNo] , [pdb].[SortField1] , [pdb].[SeqNo], [pdb].[DisplayName]; WITH CTE AS ( SELECT [pdb].[GroupNo] ,[pdb].[GroupHeading] ,[pdb].[SubGroupNo] ,[pdb].[RowNo] ,[pdb].[SeqNo] ,[pdb].[DbVerNo] ,[pdb].[DisplayName] ,[pdb].[DbName] ,[pdb].[SelDefault] ,[pdb].[StartPage] ,[pdb].[StartPageTemplate] ,[pdb].[Mode] ,[pdb].[SourceType] ,[pdb].[DbFlag] ,[pdb].[SortField] ,[pdb].[Enable] FROM @ProfileDatabases pdb WHERE @browseTerm = '' OR (@browseField = 'DbName' AND DbName LIKE '%' + @browseTerm + '%') OR (@browseField = 'DisplayName' AND DisplayName LIKE '%' + @browseTerm + '%') ), PagedCte AS ( SELECT [GroupNo] ,[GroupHeading] ,[SubGroupNo] ,[RowNo] ,[SeqNo] ,[DbVerNo] ,[DisplayName] ,[DbName] ,[SelDefault] ,[StartPage] ,[StartPageTemplate] ,[Mode] ,[SourceType] ,[DbFlag] ,[SortField] ,[Enable] FROM CTE ORDER BY CASE WHEN @browseField = 'DbName' THEN CTE.DbName WHEN @browseField = 'DisplayName' THEN CTE.DisplayName END ,[GroupNo] ,[SubGroupNo] ,[RowNo] ,[SortField] ,[SeqNo] ,[DisplayName] OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT [GroupNo] ,[GroupHeading] ,[SubGroupNo] ,[RowNo] ,[SeqNo] ,[DbVerNo] ,[DisplayName] ,[DbName] ,[SelDefault] ,[StartPage] ,[StartPageTemplate] ,[Mode] ,[SourceType] ,[DbFlag] ,[SortField] ,[Enable] ,NULL TotalCount FROM PagedCte UNION ALL SELECT NULL [GroupNo] ,NULL [GroupHeading] ,NULL [SubGroupNo] ,NULL [RowNo] ,NULL [SeqNo] ,NULL [DbVerNo] ,NULL [DisplayName] ,NULL [DbName] ,NULL [SelDefault] ,NULL [StartPage] ,NULL [StartPageTemplate] ,NULL [Mode] ,NULL [SourceType] ,NULL [DbFlag] ,NULL [SortField] ,NULL [Enable] ,COUNT(*) TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceKnownSearchItem_103] (@UserID nvarchar(20),@UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @Label nvarchar(255), @SearchString nvarchar(255), @GhostText nvarchar(255))AS BEGIN -- if GhostText is empty string set it to NULL IF (@GhostText = N'') SET @GhostText = NULL -- find the next sequence number for this interface and version DECLARE @NextSeqNo INT SELECT @NextSeqNo=ISNULL(MAX([dbo].[InterfaceKnownSearchItems].[SeqNo])+1,1)FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version]=@Version -- if this is the first known search item for this interface-version, set IsSelected = 1 DECLARE @IsSelected BIT SET @IsSelected = 0 -- not selected IF (@NextSeqNo = 1) BEGIN SET @IsSelected = 1 END BEGIN TRY BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceKnownSearchItems]([dbo].[InterfaceKnownSearchItems].[InterfaceID], [dbo].[InterfaceKnownSearchItems].[Version], [dbo].[InterfaceKnownSearchItems].[SearchString], [dbo].[InterfaceKnownSearchItems].[IsSelected], [dbo].[InterfaceKnownSearchItems].[SeqNo]) VALUES (@InterfaceID, @Version, @SearchString, @IsSelected, @NextSeqNo) -- get the new KnownSearchItemNo to use to update the InterfaceKnownSeachItemCaptions table DECLARE @newKnownSearchItemNo AS INT SET @newKnownSearchItemNo = scope_identity() INSERT INTO [dbo].[InterfaceKnownSearchItemCaption] ([dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo], [dbo].[InterfaceKnownSearchItemCaption].[LangCode], [dbo].[InterfaceKnownSearchItemCaption].[Label], [dbo].[InterfaceKnownSearchItemCaption].[GhostText]) VALUES (@newKnownSearchItemNo, 'en', @Label, @GhostText) -- logging info DECLARE @Param1 nvarchar(1024) SET @Param1=@InterfaceID+'-'+@Version EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceKnownSearchItems','Add Known Search Item', @Param1, @Label COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EPCS_GetProfileInfo] (@CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10), @RequiredProfileParams varchar(MAX)) AS BEGIN DECLARE @STMode CHAR(1) DECLARE @MarketID VARCHAR(20) DECLARE @InterfaceID VARCHAR(10) DECLARE @Version VARCHAR(10) DECLARE @ProfNo INT SELECT @InterfaceID = InterfaceID, @ProfNo = ProfNo, @Version = [Version] FROM dbo.Profile WHERE CustID = @CustID AND GroupID = @GroupID AND ProfID = @ProfID SET @RequiredProfileParams = REPLACE(@RequiredProfileParams, ' ', '') SELECT @STMode = dbo.EAIF_CustTypeToSTMode_70(c.[CustType]), @MarketID = c.MarketID FROM [dbo].[Customer] c INNER JOIN [dbo].[UserGroup] ug ON c.CustID = ug.CustID WHERE c.CustID = @CustID AND GroupID = @GroupID SELECT cpl.ParamName, ISNULL(ISNULL(cpsv.ParamValue,cpd.DefValue),cpl.DefValue) AS ParamValue FROM [dbo].[InterfaceParamList] AS ipl INNER JOIN [dbo].[CustomParamList] AS cpl ON ipl.ParamNo = cpl.ParamNo LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@RequiredProfileParams, ',') AS rpp ON cpl.ParamName = rpp.Item LEFT OUTER JOIN [dbo].[CustomParamScalarValues] AS cpsv ON cpl.ParamNo = cpsv.ParamNo AND cpsv.TargetNo=@ProfNo AND cpl.ParamLevel = 'P' LEFT OUTER JOIN [dbo].[CustomParamDefaults] AS cpd ON cpl.ParamNo = cpd.ParamNo AND cpd.MarketID=@MarketId AND cpd.STMode=@STMode AND cpd.InterfaceID=@InterfaceID AND cpd.Version=@Version WHERE (rpp.Item IS NOT NULL OR ISNULL(NULLIF(@RequiredProfileParams, ''), '') = '') AND ipl.InterfaceID = @InterfaceID AND ipl.Version = @Version END
CREATE PROCEDURE [dbo].[BLL_GetLocalTitleCallNo](@CustId varchar(10), @ColId varchar(50), @ISSN varchar(20)) AS BEGIN SELECT ISNULL([dbo].[LocalTitle].[CallNumber],'') as 'CallNumber' FROM [dbo].[LocalTitle] WHERE [dbo].[LocalTitle].[ColNo] = dbo.EAIF_GetTitleColNo_70( @CustId, @ColId ) AND [dbo].[LocalTitle].[TitleNo] = dbo.EAIF_GetTitleNo_70( @ISSN ) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfacesAmount_203] @InterfaceID varchar(10) = '', @InterfaceName nvarchar(100) = '' AS BEGIN SET @InterfaceID = ISNULL(@InterfaceID, ''); SET @InterfaceName = ISNULL(@InterfaceName, ''); SELECT COUNT(*) AS Amount FROM [dbo].[InterfaceLanguage] WHERE InterfaceID <> 'all' AND LangCode='en' AND InterfaceID >= @InterfaceID AND InterfaceName >= @InterfaceName; END
CREATE PROCEDURE [dbo].[EATL_GetDbFieldGroupLangCaption_70](@DbVerNo int, @FieldGroupNo int, @LangCode varchar(10)) AS BEGIN EXEC [dbo].[EAIP_GetDbFieldGroupLangCaption_70] @DbVerNo, @FieldGroupNo, @LangCode END
CREATE PROCEDURE [dbo].[EPCS_CheckLocalHoldings_70]( @CustID varchar(10), @ColID varchar(50), @ISSNList varchar(8000) ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID,@ColID) SELECT b.ISSN, c.Subscribe, ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage', c.Notes, dbo.EAIF_GetLocalTitleDates_70( c.ColNo, c.TitleNo ) as Dates FROM dbo.EAIF_GetItemTableSingleByte_70(@ISSNList,',') a INNER JOIN [dbo].[MasterTitle] b ON a.Item=b.ISSN INNER JOIN [dbo].[LocalTitle] c ON b.TitleNo=c.TitleNo INNER JOIN [dbo].[NoMessage] nm ON c.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON c.YesMsgNo=ym.YesMsgNo WHERE c.ColNo=@ColNo END
CREATE Function [dbo].[EAIF_ParseTblParamFieldsXML_90] ( @Fields XML) RETURNS @FieldsTable TABLE (FieldName varchar(20), ItemID VARCHAR(10), ParamValue nvarchar(255))AS BEGIN INSERT INTO @FieldsTable SELECT p.field.value('name[1]','varchar(20)') AS FieldName, p.field.value('itemID[1]','varchar(50)') AS ItemID, p.field.value('val[1]','nvarchar(255)') AS FieldValue from @Fields.nodes('/fields/field') AS p(field) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_GetDbsForParam_96.sql CREATE Procedure dbo.EAUI_GetDbsForParam_96 (@ParamNo int) AS BEGIN SELECT e.PromptText + ' ('+ p.ParamName + ')' as ParamName,d.DisplayName+ N'('+ d.DbName +N'-' + [d].[DbLabel] +N')' as Db FROM [dbo].[DbParamList] p INNER JOIN [dbo].[DbParamEditDetail] e ON e.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.ParamNo=@ParamNo AND sv.ParamNo = p.ParamNo LEFT OUTER JOIN [dbo].[DbList] d ON d.DbVerNo=sv.DbVerNo WHERE p.ParamNo=@ParamNo UNION ALL SELECT e.PromptText + ' ('+ p.ParamName + ')' as ParamName,ssdb.DisplayName+ N'('+ ssdb.DbName +N'-' + ssdb.DbLabel +N')' as Db FROM [dbo].[DbParamList] p INNER JOIN [dbo].[DbParamEditDetail] e ON e.ParamNo = p.ParamNo INNER JOIN [dbo].[DbParamScalarValues] sv ON sv.ParamNo = p.ParamNo INNER JOIN [dbo].[DbSubset] ss ON ss.PhysDbVerNo= sv.DbVerNo INNER JOIN [dbo].[DbList] ssdb ON ss.SubsetDbVerNo = ssdb.DbVerNo WHERE p.InheritFromPhysical = 1 AND p.ParamNo=@ParamNo ORDER by db END
CREATE PROCEDURE [dbo].[EAIP_PromoteDbPickupLocations_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS BEGIN Begin Try Begin Transaction Delete dbpl from [dbo].[DbPickupLocation] dbpl join #TempDbListTable t on dbpl.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbPickupLocation] Select t.UpperDbVerNo AS DbVerNo, LocationID, DisplayName, SeqNo From [dbo].[DbPickupLocation] dbpl join #TempDbListTable t on dbpl.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceScreenSequence_76] ( @UserID nvarchar(20), @UserIP varchar(15), @SeqNoList varchar(max), @ScreenNoList varchar(max)) AS BEGIN UPDATE [dbo].[InterfaceScreen] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[InterfaceScreen] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@SeqNoList, @ScreenNoList,'+') b ON a.IntfScreenNo=convert(int,b.Item) IF @@ERROR <> 0 BEGIN RAISERROR('Update failed for Modify Interface Screen Schedule order', 16, -1) RETURN END END
CREATE FUNCTION [dbo].[EAIF_InterfaceDocTypeLangAndCaptions_77](@IntfDocTypeNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(8000) SET @Captions='' SET @Langs='' SELECT @Captions=@Captions+'|'+[dbo].[InterfaceDocTypeCaption].[Caption], @Langs=@Langs+'|'+[dbo].[InterfaceDocTypeCaption].[LangCode] FROM [dbo].[InterfaceDocTypeCaption] WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo] =@IntfDocTypeNo IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerListBrowseByCustName_Paged_203] @CustName NVARCHAR(100), @pageIndex INT = 0, @pagSize INT = 10 AS BEGIN SELECT cust.RowNr, cust.CustID, cust.CustName, cust.ParentID FROM ( SELECT ROW_NUMBER() OVER(ORDER BY [CustName]) AS RowNr, c.CustName, c.CustID, ISNULL(dbo.EAIF_GetParents_70(c.CustID),'') AS ParentID FROM [dbo].[Customer] c WHERE c.CustName LIKE @CustName + '%' AND c.CustID <> 'system' AND c.CustType <> 'U' ) cust WHERE cust.RowNr BETWEEN @pageIndex * @pagSize + 1 AND (@pageIndex + 1) * @pagSize END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceCluster_102](@UserID nvarchar(20),@UserIP varchar(30), @ClustId varchar(20), @InterfaceId varchar(10), @Version varchar(10))AS BEGIN DECLARE @Caption nvarchar(255), @AutoAdd2Interfaces bit SELECT @Caption = [dbo].[GlobalClusterCaption].[Caption] FROM [dbo].[GlobalClusterCaption] WHERE [dbo].[GlobalClusterCaption].[ID] = @ClustId SELECT @AutoAdd2Interfaces = [dbo].[GlobalCluster].[AutoAdd2Interfaces] FROM [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID] = @ClustId IF (@AutoAdd2Interfaces = 1) BEGIN RAISERROR('Cannot delete a cluster that is auto added to interfaces',16,-1,@ClustId) RETURN END BEGIN TRANSACTION -- remove the cluster/interface combination from the GlobalInterfaceCluster table DELETE FROM [dbo].[GlobalClusterInterface] WHERE [dbo].[GlobalClusterInterface].[ClustId] = @ClustId AND [dbo].[GlobalClusterInterface].[InterfaceId] = @InterfaceId AND [dbo].[GlobalClusterInterface].[Version] = @Version -- check if the cluster/interface combination is in the GlobalInterfaceClusterDetails table, if so, remove it IF EXISTS (SELECT 1 FROM [dbo].[GlobalClusterInterfaceDetails] WHERE [dbo].[GlobalClusterInterfaceDetails].[ClustId] = @ClustId AND [dbo].[GlobalClusterInterfaceDetails].[InterfaceId] = @InterfaceId AND [dbo].[GlobalClusterInterfaceDetails].[Version] = @Version) BEGIN DELETE FROM [dbo].[GlobalClusterInterfaceDetails] WHERE [dbo].[GlobalClusterInterfaceDetails].[ClustId] = @ClustId AND [dbo].[GlobalClusterInterfaceDetails].[InterfaceId] = @InterfaceId AND [dbo].[GlobalClusterInterfaceDetails].[Version] = @Version END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters','Delete Cluster from Interface', @InterfaceID ,@Version, @ClustId, @Caption COMMIT TRANSACTION END
Create Procedure [dbo].[EAIP_GetGlobalInterfaceDatabaseTable_161] @ParamName VarChar(100), @ItemName VarChar(10) As Begin If Not Exists (Select 1 From [dbo].[CustomParamList] Where [dbo].[CustomParamList].[ParamName] = @ParamName) Begin RaisError('The Paramater Name ''%s'' does not exist.', 16,-1, @ParamName) Return End If Not Exists (Select 1 From [dbo].[CustomParamList] Where [dbo].[CustomParamList].[ParamName] = @ParamName And [dbo].[CustomParamList].[ParamType] = 'T') Begin RaisError('The Parameter Name: ''%s'' is not a valid Table Parameter type.', 16,-1, @ParamName) Return End If Not Exists (Select 1 From [dbo].[CustomParamXmlFields] CPF Inner Join [dbo].[CustomParamList] CPL On (CPF.ParamNo = CPL.ParamNo And CPL.ParamName = @ParamName And [CPL].[ParamType] = 'T' And CPF.FieldName = 'db')) Begin RaisError('Required Databases is not associated for the Parameter ''%s''', 16,-1, @ParamName) Return End If Not Exists (Select 1 From [dbo].[CustomParamList] CPL Inner Join [dbo].[CustomParamTblItems] CPT On (CPL.ParamNo = CPT.ParamNo And CPL.ParamName = @ParamName And CPT.ItemID = @ItemName)) Begin RaisError('Item: ''%s'' is either invalid or does not exist for Parameter ''%s''.', 16,-1, @ItemName, @ParamName) Return End Select cast(D.DbVerNo as varchar(10)) [DbverNo], D.DisplayName + N'(' + D.DbName + N')' [DisplayName] From [dbo].[DbList] D Left Outer Join [dbo].[CustomParamTblGlobalDefaultSMDValues] P On (D.DbName = P.DbName And P.ItemID = @ItemName) Left Outer Join [dbo].[CustomParamList] CPL On (P.ParamNo = CPL.ParamNo And CPL.ParamName = @ParamName) Where D.DbLabel = 'live' And D.SourceType = 'D' And (D.DbType = 1 Or D.DbType=4) And P.DbName Is Null Order By D.DisplayName Asc END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceMDbSTSListAlpha_90] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10)) AS begin try Declare @temp table (SeqNo int identity(1,1), MultiDbSTSID varchar(10)) Insert @temp select [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID] from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version Order by [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID] begin transaction Update [dbo].[InterfaceMultiDbSTSList] Set [SeqNo]=t.SeqNo From [dbo].[InterfaceMultiDbSTSList] imdbsl Join @temp t on imdbsl.MultiDbSTSID=t.MultiDbSTSID where InterfaceID=@InterfaceID and Version=@Version commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Reorder MDbSTS for Interface by MultiDbSTSID', @InterfaceID, @Version End try begin catch rollback transaction end catch
CREATE FUNCTION [dbo].[EAIF_CustTypeToSTMode_70](@CustType char(1))RETURNS char(1) AS BEGIN DECLARE @STMode char(1) IF @CustType='T' SET @STMode= 'T' ELSE SET @STMode ='S' return @STMode END
CREATE PROCEDURE [dbo].[EAUI_DeleteFeatureItem_80](@UserID nvarchar(20),@UserIP varchar(15), @FeatureNo int, @ItemNo int) AS BEGIN DECLARE @Category varchar(20) DECLARE @Name varchar(100) SELECT @Category=[dbo].[FeatureList].[Category], @Name= [dbo].[FeatureList].[FeatureName] FROM [dbo].[FeatureList] WHERE [dbo].[FeatureList].[FeatureNo]=@FeatureNo BEGIN TRANSACTION DELETE [dbo].[FeatureValues] WHERE [dbo].[FeatureValues].[FeatureNo]=@FeatureNo AND [dbo].[FeatureValues].[ItemNo] = @ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @Category='cust' exec [dbo].[EAIP_ValidateDabatasesWithCustomizer_88] @FeatureNo,@UserID,@UserIP IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Features', 'Delete Feature Item', @Category, @Name, @ItemNo COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAIP_Customer_Select.sql CREATE PROCEDURE [dbo].[EAIP_Customer_Select] @CustNo int = NULL, @CustID varchar(10) = NULL AS IF @CustNo IS NOT NULL BEGIN SELECT [dbo].[Customer].[CustNo], [dbo].[Customer].[CustID], [dbo].[Customer].[CustName], [dbo].[Customer].[CustType], [dbo].[Customer].[MarketID], [dbo].[Customer].[Status], [dbo].[Customer].[Consortium] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustNo] = @CustNo END ELSE IF @CustID IS NOT NULL BEGIN SELECT [dbo].[Customer].[CustNo], [dbo].[Customer].[CustID], [dbo].[Customer].[CustName], [dbo].[Customer].[CustType], [dbo].[Customer].[MarketID], [dbo].[Customer].[Status], [dbo].[Customer].[Consortium] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileDbSugSubjects_80.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileDbSugSubjects_80] (@ProfNo int, @ScreenID varchar(10))AS BEGIN IF NOT EXISTS ( SELECT 1 FROM [dbo].[Profile] pr INNER JOIN [dbo].[InterfaceParamList] ip ON pr.InterfaceID=ip.InterfaceID WHERE pr.ProfNo=@ProfNo AND ip.ParamNo=dbo.EAIF_GetCustomParamNumber_70('suggestSubjectHeadings', 'P') ) BEGIN SET @ProfNo = 0 --Asign Dummy value to @ProfNo END SELECT pd.DbVerNo, dl.DisplayName, ISNULL(sst.SugSubject, 0) as SugSubject FROM [dbo].[ProfDatabase] pd Inner Join [dbo].[DbList] dl ON (dl.DbVerNo=pd.DbVerNo) LEFT OUTER JOIN [dbo].[ProfDbSugSubjTerms] sst On (sst.ProfNo=pd.ProfNo and sst.DbVerNo=pd.DbVerNo and sst.ScreenID=@ScreenID) WHERE dbo.EAIF_GetDbParamScalarValue_70(pd.DbVerNo, 'suggestSubjectHeading')=1 AND pd.ProfNo = @ProfNo AND pd.Enable=1 AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) END
CREATE Procedure [dbo].[EAUI_AddInterfaceMDbLimiters_89] /* @LimiterNoList is a + separated list of LimiterNo's - the list must end with a + as well */ (@UserID nvarchar(10), @UserIP varchar(10), @LimiterNoList varchar(1000), @ScreenNoList varchar(1000)) as Begin Try DECLARE @LimiterDotPos int Declare @ScreenDotPos int DECLARE @LimiterNo varchar(255) Declare @ScreenNo int Declare @InterfaceID varchar(10) Declare @Version varchar(10) Declare @TempLimiterNoList varchar(1000) Declare @ScreenID varchar(10) Declare @LimiterID varchar(10) Declare @AutoAdd bit Declare @NewItemsTable TABLE (ScreenNo int, LimiterNo int) Declare @NewItemsAuditTable TABLE (InterfaceID varchar(10), Version varchar(10), ScreenID varchar(10), LimiterID varchar(10)) set @TempLimiterNoList=@LimiterNoList SELECT @ScreenDotPos=charindex('+',@ScreenNoList) WHILE @ScreenDotPos <> 0 AND @ScreenDotPos IS NOT NULL BEGIN SELECT @ScreenNo=left(@ScreenNoList,@ScreenDotPos-1) Select @ScreenID=[dbo].[InterfaceScreen].[ScreenID] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo SELECT @LimiterDotPos=charindex('+',@TempLimiterNoList) WHILE @LimiterDotPos <> 0 AND @LimiterDotPos IS NOT NULL BEGIN SELECT @LimiterNo=left(@TempLimiterNoList,@LimiterDotPos-1) Select @InterfaceID=[dbo].[InterfaceScreen].[InterfaceID] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo Select @Version=[dbo].[InterfaceScreen].[Version] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo Select @LimiterID=[dbo].[MDbLimiterList].[LimiterID] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo select @AutoAdd=[dbo].[MDbLimiterList].[AutoAdd] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo -- insert items to be added to a temp table Insert @NewItemsTable (ScreenNo, LimiterNo) select @ScreenNo, @LimiterNo from [dbo].[InterfaceScreen] -- where the InterfaceID and Version match where [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID and [dbo].[InterfaceScreen].[Version]=@Version and [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo -- and the LimiterNo has not already been added to the InterfaceMDbLimiterList for the ScreenNo and [dbo].[InterfaceScreen].[IntfScreenNo] not in (Select [dbo].[InterfaceMDbLimiterList].[IntfScreenNo] from [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[LimiterNo]=@LimiterNo) and [dbo].[InterfaceScreen].[IntfScreenNo] not in (Select [dbo].[InterfaceScreen].[IntfScreenNo] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=1 and @AutoAdd=1) SELECT @TempLimiterNoList=substring(@TempLimiterNoList,@LimiterDotPos+1,Len(@TempLimiterNoList)-@LimiterDotPos) SELECT @LimiterDotPos=charindex('+',@TempLimiterNoList) -- insert items to be added to a temp audit table Insert @NewItemsAuditTable (InterfaceID, Version, ScreenID, LimiterID) select @InterfaceID, @Version, @ScreenID, @LimiterID from [dbo].[InterfaceScreen] -- where the InterfaceID and Version match where [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID and [dbo].[InterfaceScreen].[Version]=@Version and [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo -- and the LimiterNo has not already been added to the InterfaceMDbLimiterList for the ScreenNo and [dbo].[InterfaceScreen].[IntfScreenNo] not in (Select [dbo].[InterfaceMDbLimiterList].[IntfScreenNo] from [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[LimiterNo]=@LimiterNo) and [dbo].[InterfaceScreen].[IntfScreenNo] not in (Select [dbo].[InterfaceScreen].[IntfScreenNo] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=1 and @AutoAdd=1) End set @TempLimiterNoList=@LimiterNoList SELECT @ScreenNoList=substring(@ScreenNoList,@ScreenDotPos+1,Len(@ScreenNoList)-@ScreenDotPos) SELECT @ScreenDotPos=charindex('+',@ScreenNoList) End Begin Transaction Insert [dbo].[InterfaceMDbLimiterList] ([dbo].[InterfaceMDbLimiterList].[IntfScreenNo], [dbo].[InterfaceMDbLimiterList].[LimiterNo]) Select ScreenNo, LimiterNo From @NewItemsTable Commit Transaction -- Insert all new Screen/Limiter combimations added to the ActivityLog table INSERT INTO EASUPPORT.dbo.ActivityLog([EASUPPORT].[dbo].[ActivityLog].[UserID], [EASUPPORT].[dbo].[ActivityLog].[IPAddress], [EASUPPORT].[dbo].[ActivityLog].[LogTime], [EASUPPORT].[dbo].[ActivityLog].[Category], [EASUPPORT].[dbo].[ActivityLog].[Activity], [EASUPPORT].[dbo].[ActivityLog].[Param1],[EASUPPORT].[dbo].[ActivityLog].[Param2], [EASUPPORT].[dbo].[ActivityLog].[Param3], [EASUPPORT].[dbo].[ActivityLog].[Param4], [EASUPPORT].[dbo].[ActivityLog].[Param5]) Select @UserID, @UserIP, getdate(), 'MDbLimiters', 'Attach Limiters to Interface screen', InterfaceID, Version, ScreenID, LimiterID, '' from @NewItemsAuditTable End Try Begin Catch Rollback Transaction End catch
CREATE procedure [dbo].[EPCS_GetProfileMultiDBLimiters_99] @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) AS BEGIN DECLARE @WRK_Limiters TABLE ( LimiterNo int , LimiterID varchar(20), DbCount int, DbVerNo int, ScreenNo int ) SET NOCOUNT ON DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @ScreenNo int DECLARE @ScreenID varchar(10) DECLARE @Show bit SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID = [dbo].[Profile].[InterfaceID], @Version = [dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID DECLARE @WRK_Screens TABLE ( ItemIndex int identity(1,1), ScreenNo int, ScreenID varchar(10), Show bit ) INSERT INTO @WRK_Screens(ScreenNo , ScreenID, Show) SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[ScreenID], [dbo].[InterfaceScreen].[LimiterShow] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID and [dbo].[InterfaceScreen].[Version] = @Version DECLARE @ItemCount int, @ItemIndex int SELECT @ItemCount = count(*) FROM @WRK_Screens SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 BEGIN SELECT @ScreenNo=ScreenNo, @ScreenID=ScreenID, @Show=Show FROM @WRK_Screens WHERE ItemIndex=@ItemIndex INSERT INTO @WRK_Limiters(LimiterNo, LimiterID, DbCount, DbVerNo) SELECT * FROM dbo.EAIF_GetProfileMultiDBLimiters_99(@ProfNo,@ScreenNo) UPDATE @WRK_Limiters SET ScreenNo=@ScreenNo WHERE ScreenNo is null END END SELECT ISNULL(pdl2.SeqNo,(ISNULL(dil.SeqNo,dl.SeqNo))) AS SeqNo, ll.LimiterId, ws.ScreenID, IsNull(dil.ControlType,ll.ControlType) as ControlType, dbo.EAIF_GetProfDbLimiterCaptions_76(@ProfNo,wl.ScreenNo,wl.DbVerNo,wl.LimiterNo) as Captions, CASE WHEN ll.BitFlag1=1 THEN ISNULL(pdl2.Show, (ISNULL(dil.Show,0))) ELSE ISNULL(pdl2.Show, (ISNULL(dil.Show,ws.Show))) END AS Show, IsNull(pdl2.DefValue,dil.DefValue) as DefValue, dil.DefPosn, dil.ColNum, d.DbName FROM @WRK_Limiters wl JOIN [dbo].[DbLimiter] dl ON wl.LimiterNo = dl.LimiterNo AND wl.DbVerNo = dl.DbVerNo JOIN [dbo].[DbList] d on wl.DbVerNo = d.DbVerNo LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON wl.DbVerNo = dil.DbVerNo AND wl.LimiterNo = dil.LimiterNo AND dil.IntfScreenNo=wl.ScreenNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdl2 ON wl.DbVerNo = pdl2.DbVerNo AND wl.LimiterNo= pdl2.LimiterNo AND pdl2.IntfScreenNo = wl.ScreenNo AND pdl2.ProfNo=@ProfNo JOIN [dbo].[LimiterList] ll ON wl.LimiterNo=ll.LimiterNo JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType JOIN @WRK_Screens ws ON wl.ScreenNo=ws.ScreenNo Order By ws.ScreenID, ISNULL(pdl2.SeqNo,(ISNULL(dil.SeqNo,dl.SeqNo))) END
CREATE PROCEDURE [dbo].[BLL_GetLocalTitleInfo]( @CustID varchar(10), @CollID varchar(50), @ISSNlist varchar(255) ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustID AND [dbo].[Collection].[ColID]=@CollID AND [dbo].[Collection].[IsDeleted] = 0 SELECT [m].[ISSN], Subscribe=ISNULL([l].[Subscribe],0), FromDate=ISNULL([d].[FromDate],'00000000'), ToDate=ISNULL([d].[ToDate],'99999999') FROM dbo.EAIF_GetItemTableSingleByte_70( @ISSNlist, ',' ) ws INNER JOIN [dbo].[MasterTitle] m ON m.ISSN = ws.Item LEFT OUTER JOIN [dbo].[LocalTitle] l ON m.TitleNo = l.TitleNo AND l.ColNo = @ColNo LEFT OUTER JOIN [dbo].[LocalDate] d ON m.TitleNo = d.TitleNo AND d.ColNo = @ColNo ORDER BY m.ISSN END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceScreenDetails_76](@intfScreenNo int) AS BEGIN SELECT * FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo] = @intfScreenNo END
CREATE PROCEDURE [dbo].[EATL_GetDbFieldGroupList_70](@DbVerNo int) AS BEGIN SELECT a.FieldGroupNo, b.FieldGroupId FROM [dbo].[DbFieldGroup] a INNER JOIN [dbo].[FieldGroupList] b ON a.FieldGroupNo=b.FieldGroupNo AND a.DbVerNo=@DbVerNo WHERE [a].[DbVerNo]=@DbVerNo ORDER BY b.FieldGroupId END
CREATE PROCEDURE [dbo].[EPCS_CheckLocalHoldings_70_2](@CustID varchar(10),@ColID varchar(50), @ISSNList varchar(8000) )AS BEGIN DECLARE @ColNo int SELECT @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID,@ColID) SELECT b.ISSN, c.Subscribe, ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage', c.Notes, dbo.EAIF_GetLocalTitleDates_70( c.ColNo, c.TitleNo ) as Dates FROM dbo.EAIF_GetItemTable_70_2(@ISSNList,',') a INNER JOIN dbo.MasterTitle b ON a.Item=b.ISSN INNER JOIN dbo.LocalTitle c ON b.TitleNo=c.TitleNo INNER JOIN dbo.NoMessage nm ON c.NoMsgNo=nm.NoMsgNo INNER JOIN dbo.YesMessage ym ON c.YesMsgNo=ym.YesMsgNo WHERE c.ColNo=@ColNo END
CREATE FUNCTION [dbo].[EPCS_GetColNoFromList_99](@CustID VARCHAR(10), @ColIDList NVARCHAR(max), @Sep CHAR(1)) RETURNS @Collection TABLE (ColID nvarchar(50), ColNo int, SharedFrom int) AS BEGIN INSERT INTO @Collection([dbo].[EPCS_GetColNoFromList_99].[ColID]) SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ColIDList, @Sep); UPDATE @Collection SET [ColNo] = c.ColNo, [SharedFrom] = c.SharedFrom FROM @Collection t INNER JOIN [dbo].[Collection] c ON t.ColID = c.ColID WHERE c.CustID = @CustID and c.IsDeleted = 0; UPDATE @Collection SET [SharedFrom] = NULL WHERE [SharedFrom] = 0; RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbVerNo_132](@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SELECT ISNULL(dbo.EAIF_GetDbVerNo_70 (@DbName, @DbLabel), -1) END
CREATE Procedure [dbo].[EAIP_PromoteDbSubsets_161] (@NewDbLabel varchar(10), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) as Begin Begin Try Begin Transaction DELETE dbs FROM [dbo].[DbSubset] dbs JOIN #TempDbListTable t on dbs.PhysDbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Insert [dbo].[DbSubset] select dbl2.DbVerNo, t.UpperDbVerNo, MergeSearches, DBDefSearchExprType, DBDefSearchExpression from [dbo].[DbSubset] dbs Join #TempDbListTable t on dbs.PhysDbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) join [dbo].[DbList] dbl1 on dbs.SubsetDbVerNo=dbl1.DbVerNo join [dbo].[DbList] dbl2 on dbl1.DbName=dbl2.DbName and dbl2.DbLabel=@NewDbLabel Commit Transaction End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceSearchTheme_83](@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10),@Version varchar(10), @SearchThemeID varchar(20), @LangCode varchar(10), @Caption nvarchar(255), @AltText nvarchar(255), @SearchString varchar(1500), @image varchar(255), @FeatureName varchar(10), @Show bit, @Description nvarchar(1500), @CustomAttributes xml)AS BEGIN BEGIN TRANSACTION DECLARE @InterfaceThemeNo int SET @InterfaceThemeNo = (SELECT [dbo].[InterfaceSearchTheme].[InterfaceThemeNo] FROM [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTheme].[Version]=@Version AND [dbo].[InterfaceSearchTheme].[ThemeID]=@SearchThemeID) SET @FeatureName = Convert(int,@FeatureName) IF EXISTS (SELECT 1 FROM [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceThemeNo]=@InterfaceThemeNo) UPDATE [dbo].[InterfaceSearchTheme] SET [dbo].[InterfaceSearchTheme].[Image]=@image, [dbo].[InterfaceSearchTheme].[SearchString]=@SearchString, [dbo].[InterfaceSearchTheme].[Show]=@Show, [dbo].[InterfaceSearchTheme].[InterfaceFeatureNo] = @FeatureName, [dbo].[InterfaceSearchTheme].[CustomAttributes]=@CustomAttributes WHERE [dbo].[InterfaceSearchTheme].[InterfaceThemeNo]=@InterfaceThemeNo ELSE INSERT INTO [dbo].[InterfaceSearchTheme] ([dbo].[InterfaceSearchTheme].[InterfaceID], [dbo].[InterfaceSearchTheme].[Version], [dbo].[InterfaceSearchTheme].[ThemeID],[dbo].[InterfaceSearchTheme].[SearchString],[dbo].[InterfaceSearchTheme].[Image],[dbo].[InterfaceSearchTheme].[Show],[dbo].[InterfaceSearchTheme].[InterfaceFeatureNo], [dbo].[InterfaceSearchTheme].[CustomAttributes]) VALUES (@InterfaceID, @Version, @SearchThemeID,@SearchString,@image,@Show,@InterfaceThemeNo, @CustomAttributes) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END SELECT @InterfaceThemeNo=[dbo].[InterfaceSearchTheme].[InterfaceThemeNo] FROM [dbo].[InterfaceSearchTheme] WHERE [dbo].[InterfaceSearchTheme].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTheme].[Version]=@Version AND [dbo].[InterfaceSearchTheme].[ThemeID]=@SearchThemeID IF EXISTS (SELECT 1 FROM [dbo].[InterfaceSearchThemeCaption] WHERE [dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo]=@InterfaceThemeNo AND [dbo].[InterfaceSearchThemeCaption].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceSearchThemeCaption] SET [dbo].[InterfaceSearchThemeCaption].[Caption]=@Caption,[dbo].[InterfaceSearchThemeCaption].[ImageAltText]=@AltText,[dbo].[InterfaceSearchThemeCaption].[Description]=@Description WHERE [dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo]=@InterfaceThemeNo AND [dbo].[InterfaceSearchThemeCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceSearchThemeCaption] ([dbo].[InterfaceSearchThemeCaption].[InterfaceThemeNo],[dbo].[InterfaceSearchThemeCaption].[LangCode],[dbo].[InterfaceSearchThemeCaption].[Caption],[dbo].[InterfaceSearchThemeCaption].[ImageAltText],[dbo].[InterfaceSearchThemeCaption].[Description]) VALUES(@InterfaceThemeNo,@LangCode,@Caption,@AltText,@Description) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceSearchTheme','Update Interface Search Theme', @SearchThemeID, @Caption, @InterfaceID, @Version COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_InterfaceDocTypeLangAndMouseOverTexts_77](@IntfDocTypeNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @MouseOverTexts nvarchar(max) DECLARE @Langs varchar(8000) SET @MouseOverTexts='' SET @Langs='' SELECT @MouseOverTexts=@MouseOverTexts+'|'+[dbo].[InterfaceDocTypeCaption].[MouseOverText], @Langs=@Langs+'|'+[dbo].[InterfaceDocTypeCaption].[LangCode] FROM [dbo].[InterfaceDocTypeCaption] WHERE [dbo].[InterfaceDocTypeCaption].[IntfDocTypeNo] =@IntfDocTypeNo AND [dbo].[InterfaceDocTypeCaption].[MouseOverText] <>'' IF LEN(@MouseOverTexts)>1 SET @MouseOverTexts=SUBSTRING(@MouseOverTexts, 2, LEN(@MouseOverTexts)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @MouseOverTexts+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerLiveDatabaseList_70](@CustID varchar(10)) AS BEGIN CREATE TABLE #GetDbVendorConnectorDisplayName (DbVerNo int, DbName varchar(10), DisplayName nvarchar(225), DbType smallint, SortOrder nvarchar(225)) INSERT #GetDbVendorConnectorDisplayName (#GetDbVendorConnectorDisplayName.[DbVerNo], #GetDbVendorConnectorDisplayName.[DbName], #GetDbVendorConnectorDisplayName.[DisplayName], #GetDbVendorConnectorDisplayName.[DbType], #GetDbVendorConnectorDisplayName.[SortOrder]) SELECT [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DbVerNo], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DbName], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DisplayName], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[DbType], [dbo].[EAIF_GetDbVendorConnectorDisplayName].[SortOrder] FROM dbo.EAIF_GetDbVendorConnectorDisplayName() SELECT dbl.DbName, v.DisplayName, COALESCE(pdb.Mode, 'N/A') AS Mode FROM [dbo].[Profile] p join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo and dbl.DbType=1 join #GetDbVendorConnectorDisplayName v ON dbl.DbVerNo=v.DbVerNo WHERE p.CustID=@CustID GROUP BY dbl.DbName, v.DisplayName, pdb.Mode, v.SortOrder ORDER BY v.SortOrder DROP TABLE #GetDbVendorConnectorDisplayName END
Create Procedure [dbo].[EAIP_DeleteInterfaceGlobalLanguage_161] @UserID NVarChar(20), @UserIP VarChar(15), @LangCode VarChar(10) As Begin IF Not EXISTS (Select 1 From [dbo].[LangList] where [dbo].[LangList].[LangCode] = @LangCode) BEGIN RAISERROR('Language Code: ''%s'' does not exist.',16, -1, @LangCode) RETURN END IF EXISTS (Select 1 From [dbo].[InterfaceVersion] where [dbo].[InterfaceVersion].[DefLangCode] = @LangCode) BEGIN RAISERROR('Language Code: ''%s'' is used as default interface language and can not be deleted',16, -1, @LangCode) RETURN END Begin Try Begin Transaction Delete [dbo].[LangList] Where [dbo].[LangList].[LangCode] = @LangCode; Exec [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Languages','Delete Language Code', @LangCode Commit Transaction End Try Begin Catch Rollback Transaction Declare @ErrorMessage NVarchar(4000), @ErrorSeverity Int, @ErrorState Int; Select @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); Raiserror (@ErrorMessage,@ErrorSeverity,@ErrorState); End Catch End
CREATE PROCEDURE [dbo].[EAIP_GetGlobalInterfaceLanguage_161] ( @LangCode VARCHAR(10) ) AS BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode) BEGIN RAISERROR('Language Code: %s, does not exist.',16, -1, @LangCode) RETURN END SELECT [dbo].[LangList].[SeqNo], [dbo].[LangList].[LangCode], [dbo].[LangList].[Description] FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode] = @LangCode END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceMDbSTSListNumerically_90] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MultiDbSTSIDList varchar(max), @SeqNoList varchar(max)) AS begin try begin transaction Update [dbo].[InterfaceMultiDbSTSList] set [SeqNo]=Convert(int, b.Value) from [dbo].[InterfaceMultiDbSTSList] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@MultiDbSTSIDList, @SeqNoList,'+') b on a.MultiDbSTSID=b.Item where [a].[InterfaceID]=@InterfaceID and [a].[Version]=@Version commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Reorder MDbSTS for Interface Numerically', @InterfaceID, @Version End try begin catch rollback transaction end catch
CREATE FUNCTION [dbo].[EAIF_DbDocTypeCaptions_77](@IntfDocTypeNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @DocTypeNo int DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @DocTypeNo = [dbo].[InterfaceDocType].[DocTypeNo] FROM [dbo].[InterfaceDocType] WHERE [dbo].[InterfaceDocType].[IntfDocTypeNo]=@IntfDocTypeNo SELECT @Captions = @Captions + N''+ dtc.Caption +N' ' FROM [dbo].[DocTypeCaption] dtc LEFT OUTER JOIN [dbo].[InterfaceDocTypeCaption] idtc ON idtc.IntfDocTypeNo=@IntfDocTypeNo AND dtc.LangCode=idtc.LangCode WHERE dtc.DocTypeNo = @DocTypeNo AND idtc.Caption IS NULL SELECT @Captions = @Captions + N''+idtc.Caption +N' ' FROM [dbo].[InterfaceDocTypeCaption] idtc LEFT OUTER JOIN [dbo].[DocTypeCaption] dtc ON dtc.DocTypeNo = @DocTypeNo AND dtc.LangCode=idtc.LangCode WHERE idtc.IntfDocTypeNo=@IntfDocTypeNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_DeleteFieldElement_70](@UserID nvarchar(20), @UserIP varchar(15), @FieldElementNo int, @FieldElementName varchar(100)) AS BEGIN SET NOCOUNT ON IF EXISTS(SELECT 1 FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[FieldElementNo]=@FieldElementNo) BEGIN DECLARE @DbInUse varchar(255) SELECT @DbInUse = COALESCE(@DbInUse+',','') + [dbo].[DbList].[DbName]+'('+[dbo].[DbList].[DbLabel]+')' FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo] IN (SELECT DISTINCT [dbo].[DbFieldElement].[DbVerNo] FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[FieldElementNo]=@FieldElementNo) SELECT @DbInUse DECLARE @GroupInUse varchar(255) SELECT @GroupInUse = COALESCE(@GroupInUse+',','') + [dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo] IN (SELECT DISTINCT [dbo].[DbFieldElement].[FieldGroupNo] FROM [dbo].[DbFieldElement] WHERE [dbo].[DbFieldElement].[FieldElementNo]=@FieldElementNo) SELECT @GroupInUse RAISERROR('Field Name:%s is in use by database(s):%s and group(s):%s. Cannot delete it.',16, -1, @FieldElementName, @DbInUse, @GroupInUse) RETURN END DELETE [dbo].[FieldElementList] WHERE [dbo].[FieldElementList].[FieldElementNo]=@FieldElementNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Field Customization', 'Delete Field Element', @FieldElementName END
CREATE PROCEDURE [dbo].[EAIP_CustomerSubscriptionOrProfileExists_210] ( @CustID varchar(10) ) AS BEGIN -- Wrapping procedure to avoid MSDTC issue EXEC EASUPPORT.[dbo].[EAIP_CustomerSubscriptionOrProfileExists_101] @CustID END
-- EHPMEBSCOADMIN-911 CREATE PROCEDURE [dbo].[EAUI_GetProfileDisciplineList_131] (@ProfNo INT)AS BEGIN SELECT @profNo AS ProfNo, dl.DisciplineNo, [dl].[DisciplineCode], [dc].[Caption], ISNULL(pd.SelDefault, dl.SelDefault) AS SelDefault, ISNULL(pd.Show, dl.Show) AS Show FROM [dbo].[DisciplineList] dl JOIN dbo.DisciplineCaption dc ON dl.DisciplineNo = dc.DisciplineNo AND [dc].[LangCode] = 'en' LEFT OUTER JOIN [dbo].[ProfDiscipline] pd ON dl.DisciplineNo = pd.DisciplineNo AND pd.ProfNo = @ProfNo ORDER BY [dc].[Caption] END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceMDbSTS_90] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MultiDbSTSIDList varchar(8000)) AS begin try Declare @MultiDbSTSIDDotPos int Declare @MultiDbSTSID varchar(10) Declare @Max int Select @max=Max([dbo].[InterfaceMultiDbSTSList].[SeqNo]) from [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version if @max is null set @max=0 SELECT @MultiDbSTSIDDotPos=charindex('+',@MultiDbSTSIDList) begin transaction WHILE @MultiDbSTSIDDotPos <> 0 AND @MultiDbSTSIDDotPos IS NOT NULL BEGIN SELECT @MultiDbSTSID=left(@MultiDbSTSIDList,@MultiDbSTSIDDotPos-1) Insert [dbo].[InterfaceMultiDbSTSList] ([dbo].[InterfaceMultiDbSTSList].[InterfaceID], [dbo].[InterfaceMultiDbSTSList].[Version], [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID], [dbo].[InterfaceMultiDbSTSList].[SeqNo]) Values (@InterfaceID, @Version, @MultiDbSTSID, @Max+1) Set @Max=@Max+1 EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Attach MDbSTS to Interface', @InterfaceID, @Version, @MultiDbSTSID SELECT @MultiDbSTSIDList=substring(@MultiDbSTSIDList,@MultiDbSTSIDDotPos+1,Len(@MultiDbSTSIDList)-@MultiDbSTSIDDotPos) SELECT @MultiDbSTSIDDotPos=charindex('+',@MultiDbSTSIDList) end commit transaction end try begin catch rollback transaction end catch
CREATE PROCEDURE [dbo].[EPCS_GetProfInfo_70](@CustID varchar(10),@GroupID varchar(10),@ProfID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ProfPwd varchar(10) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) DECLARE @DbLabel varchar(10) DECLARE @ParentID varchar(10) SELECT @ParentID=ISNULL([dbo].[CustomerGroup].[ParentID],'') FROM [dbo].[CustomerGroup] where [dbo].[CustomerGroup].[ChildID]=@CustID SELECT @ProfPwd=[p].[ProfPwd], @InterfaceID=[p].[InterfaceID],@Version=[p].[Version], @MarketID=p.MarketID, @DbLabel=p.DbLabel FROM [dbo].[Profile] p WITH (ROWLOCK) WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.ProfID = @ProfID IF @InterfaceID is null return DECLARE @ExistInterfaceBrowseOptions bit IF EXISTS( select 1 from [dbo].[CustomParamList] cp WITH (NOLOCK) INNER JOIN [dbo].[InterfaceParamList] ip WITH (NOLOCK) ON cp.ParamNo=ip.ParamNo where cp.ParamName ='browseOptions' AND ip.InterfaceID=@InterfaceID and ip.Version=@Version) BEGIN IF EXISTS( SELECT 1 FROM [dbo].[InterfaceScreen] s WITH (NOLOCK) INNER JOIN [dbo].[DbInterfaceBrowseOption] b WITH (NOLOCK) ON s.IntfScreenNo=b.IntfScreenNo WHERE s.InterfaceID=@InterfaceID and s.Version=@Version) select @ExistInterfaceBrowseOptions =1 ELSE select @ExistInterfaceBrowseOptions =0 END ELSE select @ExistInterfaceBrowseOptions =0 DECLARE @ExistInterfaceSearchOptions bit IF EXISTS( select 1 from [dbo].[CustomParamList] cp WITH (NOLOCK) INNER JOIN [dbo].[InterfaceParamList] ip WITH (NOLOCK) ON cp.ParamNo=ip.ParamNo where cp.ParamName ='searchOptions' AND ip.InterfaceID=@InterfaceID AND ip.Version=@Version) BEGIN IF EXISTS( SELECT 1 FROM [dbo].[InterfaceScreen] s WITH (NOLOCK) INNER JOIN [dbo].[DbInterfaceSearchOption] b WITH (NOLOCK) ON s.IntfScreenNo=b.IntfScreenNo WHERE s.InterfaceID=@InterfaceID AND s.Version=@Version) select @ExistInterfaceSearchOptions =1 ELSE select @ExistInterfaceSearchOptions =0 END ELSE select @ExistInterfaceSearchOptions =0 SELECT @CustID AS CustID, @GroupID AS GroupID, @ProfID AS ProfID, @ProfPwd AS ProfPwd, @InterfaceID AS InterfaceID, @Version AS Version, [c].[CustName], @MarketID AS MarketID, @DbLabel AS DbLabel, @ParentID AS ParentID, @ExistInterfaceBrowseOptions AS ExistInterfaceBrowseOptions, @ExistInterfaceSearchOptions AS ExistInterfaceSearchOptions FROM [dbo].[Customer] c WITH (ROWLOCK) WHERE c.CustID = @CustID END
CREATE PROCEDURE [dbo].[BLL_GetLocalTitleInfoEps]( @TitleID int, @ColNo int ) AS BEGIN SELECT mt.ISSN, mt.Title, ld.FromDate, ld.ToDate, lt.Subscribe, lt.Notes, lt.SummaryHoldings, lt.CallNumber, ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage' FROM [dbo].[LocalTitle] lt LEFT OUTER JOIN [dbo].[LocalDate] ld ON lt.ColNo=ld.ColNo AND lt.TitleNo=ld.TitleNo INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo WHERE lt.ColNo=@ColNo AND lt.TitleNo=@TitleID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceScreenLimiterGroupDetails_76](@IntfScreenNo int, @GroupNo smallint) AS BEGIN SELECT * FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo] = @GroupNo END
CREATE PROCEDURE [dbo].[EATL_GetDbGroups_80] (@LangCode varchar(10))AS BEGIN SELECT gl.GroupID, gc.Caption, gc.MouseOverText FROM [dbo].[GroupList] gl INNER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo = gc.GroupNo WHERE gc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_CheckLocalTitles_70]( @CustID varchar(10), @ColID varchar(50), @ISSNList varchar(8000) ) AS BEGIN DECLARE @ColNo int SET @ColNo=dbo.EAIF_GetTitleColNo_70(@CustID,@ColID) SELECT b.ISSN, c.Subscribe, dbo.EAIF_GetLocalTitleDates_70( c.ColNo, c.TitleNo ) as Dates FROM dbo.EAIF_GetItemTableSingleByte_70(@ISSNList,',') a INNER JOIN [dbo].[MasterTitle] b ON a.Item=b.ISSN INNER JOIN [dbo].[LocalTitle] c ON b.TitleNo=c.TitleNo WHERE c.ColNo=@ColNo END
--sql content merged from file: \Functions\Split.sql --Creates an 'InLine' Table Valued Function (TVF) CREATE FUNCTION dbo.Split ( @Delimiter varchar(5), @List varchar(8000) ) RETURNS @TableOfValues table ( RowID smallint IDENTITY(1,1), [Value] varchar(50) ) AS BEGIN DECLARE @LenString int WHILE len( @List ) > 0 BEGIN SELECT @LenString = (CASE charindex( @Delimiter, @List ) WHEN 0 THEN len( @List ) ELSE ( charindex( @Delimiter, @List ) -1 ) END ) INSERT INTO @TableOfValues SELECT substring( @List, 1, @LenString ) SELECT @List = (CASE ( len( @List ) - @LenString ) WHEN 0 THEN '' ELSE right( @List, len( @List ) - @LenString - 1 ) END ) END RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDbXMLParamList_70] AS BEGIN SELECT a.ParamNo, b.PromptText FROM [dbo].[DbParamList] a LEFT JOIN [dbo].[DbParamEditDetail] b ON a.ParamNo=b.ParamNo WHERE a.ParamType = 'X' OR a.ParamType='T' END
Create Procedure [dbo].[EAIP_PromoteDSParameters_141] (@OldDbVerNo int, @NewDbVerNo int) as Begin Delete [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo]=@NewDbVerNo Insert [dbo].[DbServerParams] ([dbo].[DbServerParams].[DbVerNo], [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords]) Select @NewDbVerNo, [dbo].[DbServerParams].[Threads], [dbo].[DbServerParams].[WaitForRequest], [dbo].[DbServerParams].[DefSearchInstances], [dbo].[DbServerParams].[MaxSearchInstances], [dbo].[DbServerParams].[DefRetrieveInstances], [dbo].[DbServerParams].[MaxRetrieveInstances], [dbo].[DbServerParams].[DefFormatInstances], [dbo].[DbServerParams].[MaxFormatInstances], [dbo].[DbServerParams].[DefFullTextInstances], [dbo].[DbServerParams].[MaxFullTextInstances], [dbo].[DbServerParams].[DefThesaurusInstances], [dbo].[DbServerParams].[MaxThesaurusInstances], [dbo].[DbServerParams].[MaxFuzzyTerms], [dbo].[DbServerParams].[MaxBooleanTerms], [dbo].[DbServerParams].[MaxFuzzyRecordNumbers], [dbo].[DbServerParams].[MaxBooleanRecordNumbers], [dbo].[DbServerParams].[MaxRecords] From [dbo].[DbServerParams] where [dbo].[DbServerParams].[DbVerNo]=@OldDbVerNo End
CREATE PROCEDURE [dbo].[EAUI_UpdateInterfaceToolbarItem_77] (@UserID nvarchar(20),@UserIP varchar(30), @IntfToolbarItem int, @Category varchar(255), @Align varchar(10), @Image varchar(255),@Caption nvarchar(255), @LangCode varchar(10))AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[InterfaceToolbar] SET [dbo].[InterfaceToolbar].[Category]=@Category,[dbo].[InterfaceToolbar].[Alignment]=@Align,[dbo].[InterfaceToolbar].[Image]=@Image WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbarCaption] WHERE [dbo].[InterfaceToolbarCaption].[IntfToolbarItem]=@IntfToolbarItem AND [dbo].[InterfaceToolbarCaption].[LangCode]=@LangCode) UPDATE [dbo].[InterfaceToolbarCaption] SET [dbo].[InterfaceToolbarCaption].[Caption]=@Caption WHERE [dbo].[InterfaceToolbarCaption].[IntfToolbarItem]=@IntfToolbarItem AND [dbo].[InterfaceToolbarCaption].[LangCode]=@LangCode ELSE INSERT INTO [dbo].[InterfaceToolbarCaption] ([dbo].[InterfaceToolbarCaption].[IntfToolbarItem],[dbo].[InterfaceToolbarCaption].[LangCode],[dbo].[InterfaceToolbarCaption].[Caption]) VALUES (@IntfToolbarItem, @LangCode,@Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ItemName varchar(10) DECLARE @Param1 varchar(1024) SELECT @Param1=[dbo].[InterfaceToolbar].[InterfaceID]+','+[dbo].[InterfaceToolbar].[Version], @ItemName=[dbo].[InterfaceToolbar].[ItemName] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem DECLARE @Param2 nvarchar(1024) SET @Param2=@Category+','+@Align+','+@Image+','+@Caption EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Add ToolbarItem', @Param1 ,@ItemName,@Param2 COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_InterfaceKnownSearchItemGhostText_103](@KnownSearchItemNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @GhostText nvarchar(max) SET @GhostText=N'' -- only return rows that have GhostText set (i.e. not NULL) -- GhostText could be NULL if Label was set for the LangCode but GhostText wasn't SELECT @GhostText = @GhostText + N''+ ikic.GhostText +N' ' FROM [dbo].[InterfaceKnownSearchItemCaption] ikic WHERE ikic.KnownSearchItemNo = @KnownSearchItemNo and ikic.GhostText IS NOT NULL RETURN @GhostText END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerMarcDbTitlesInterfaceList_79](@CustID varchar(10)) AS BEGIN DECLARE @CustType CHAR(1) SELECT @CustType=[dbo].[Customer].[CustType] FROM dbo.Customer WHERE [dbo].[Customer].[CustID]=@CustID IF( @CustType='I' OR @CustType='P' ) BEGIN SELECT il.InterfaceID + '-' + iv.Version InterfaceID, il.InterfaceName FROM dbo.InterfaceLanguage il INNER JOIN dbo.InterfaceVersion iv ON il.InterfaceID = iv.InterfaceID AND il.Version = iv.Version WHERE il.LangCode = 'en' AND iv.SupportDbTitleLists = 1 ORDER BY il.InterfaceName END ELSE BEGIN SELECT il.InterfaceID + '-' + iv.Version InterfaceID, il.InterfaceName FROM ( SELECT distinct [pi].[InterfaceID] FROM EASUPPORT.dbo.CustSubscription cs INNER JOIN EASUPPORT.dbo.ProductPackage pp ON cs.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface pi ON pp.ProductID = pi.ProductID WHERE cs.CustID = @CustID )a INNER JOIN dbo.InterfaceLanguage il ON a.InterfaceID=il.InterfaceID INNER JOIN dbo.InterfaceVersion iv ON il.InterfaceID = iv.InterfaceID AND il.Version=iv.Version WHERE iv.SupportDbTitleLists = 1 and il.LangCode='en' ORDER BY il.InterfaceName END END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceKnownSearchItem_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @InterfaceKnownSearchItemNo INT) AS BEGIN DECLARE @Label NVARCHAR(255) DECLARE @Interface VARCHAR(30) DECLARE @IsSelected BIT BEGIN TRY BEGIN TRANSACTION IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo] = @InterfaceKnownSearchItemNo AND [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version) BEGIN RAISERROR('KnownSearchItemNo: %i, does not exist for Interface-Version %s-%s.',16, -1, @InterfaceKnownSearchItemNo, @InterfaceID, @Version) RETURN END SET @Interface = @InterfaceID + ',' + @Version SELECT @IsSelected = [dbo].[InterfaceKnownSearchItems].[IsSelected] FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo] = @InterfaceKnownSearchItemNo AND [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version DELETE [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo] = @InterfaceKnownSearchItemNo AND [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version -- if the item being deleted was selected, get the "first" item for this interface-version and make it the selected one -- this is needed here even though there is a check in the UI because it is possible, with the different ways that the -- grid click and delete button click events are handled, for an item to be deleted if it is the "currently" selected item IF @IsSelected = 1 BEGIN UPDATE [dbo].[InterfaceKnownSearchItems] SET [dbo].[InterfaceKnownSearchItems].[IsSelected] = 1 WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceId AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version AND [dbo].[InterfaceKnownSearchItems].[SeqNo] = (SELECT MIN([dbo].[InterfaceKnownSearchItems].[SeqNo]) FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version) END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceKnownSearchItem', 'Delete Interface Known Search Item', @Interface, @InterfaceKnownSearchItemNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetGlobalInterfaceLanguages_161] AS BEGIN SELECT [dbo].[LangList].[SeqNo], [dbo].[LangList].[LangCode], [dbo].[LangList].[Description], dbo.EAIF_GetInterfaceListForDefaultLang_81([dbo].[LangList].[LangCode]) As InterfaceList FROM [dbo].[LangList] ORDER BY [dbo].[LangList].[SeqNo] END
Create Procedure [dbo].[EAUI_ReorderInterfaceMultiDbAuthorities_90] (@UserID varchar(10), @UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @MultiDbAuthIdList varchar(max), @OrderList varchar(max)) As Begin Transaction Update [dbo].[InterfaceMultiDbAuthList] Set [SeqNo]=CONVERT(int,givt.Value) From [dbo].[InterfaceMultiDbAuthList] imdbal INNER JOIN dbo.EAIF_GetItemValueTable_70(@MultiDbAuthIdList, @OrderList,'+') givt on imdbal.MultiDbAuthID=givt.Item Where [imdbal].[InterfaceID]=@InterfaceID and [imdbal].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END Commit Transaction
CREATE FUNCTION [dbo].[EAIF_Decrypt_70](@StrPass varchar(100))RETURNS varchar(50) AS BEGIN DECLARE @RevStrPass varchar(100) DECLARE @RetVal varchar(50) DECLARE @sBuf varchar(2) DECLARE @iBuf int DECLARE @StrLength int DECLARE @StrPos int SET @RetVal='' SET @StrPass = LTrim(RTrim(@StrPass)) IF @StrPass <> '' BEGIN SET @RevStrPass = '' SET @StrPos = 1 SET @StrLength =DATALENGTH(@StrPass) WHILE(@StrPos < @StrLength) BEGIN SET @RevStrPass = @RevStrPass+SUBSTRING(@StrPass,@StrPos,1) SET @StrPos =@StrPos+2 END SET @StrPos = @StrLength WHILE(@StrPos > 1) BEGIN SET @RevStrPass = @RevStrPass + SUBSTRING(@StrPass,@StrPos,1) SET @StrPos =@StrPos-2 END SET @StrPos = 1 WHILE(@StrPos < @StrLength) BEGIN SET @sBuf =SUBSTRING(@RevStrPass,@StrPos,2) SET @iBuf = dbo.EAIF_BinToInt_70(@sBuf) SET @RetVal =@RetVal+CHAR(@iBuf) SET @StrPos =@StrPos+2 END END RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_DeleteFieldGroup_70](@UserID nvarchar(20), @UserIP varchar(15), @FieldGroupNo int, @FieldGroupId varchar(100)) AS BEGIN IF EXISTS(SELECT 1 FROM dbo.DbFieldGroup WHERE [dbo].[DbFieldGroup].[FieldGroupNo]=@FieldGroupNo) BEGIN DECLARE @DbInUse varchar(255) SELECT @DbInUse = COALESCE(@DbInUse + ',','') + b.DbName + '(' + b.DbLabel + ')' FROM dbo.DbFieldGroup a INNER JOIN dbo.DbList b ON a.DbVerNo = b.DbVerNo WHERE a.FieldGroupNo = @FieldGroupNo RAISERROR('GroupId:%s is in use by database(s):%s. Cannot delete it.',16, -1, @FieldGroupId, @DbInUse) RETURN END DELETE dbo.FieldGroupList WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo EXEC dbo.EAIP_LogActivity_70 @UserID, @UserIP, 'Field Customization', 'Delete Field Group', @FieldGroupId END
Create Procedure [dbo].[EAIP_CustomLinkHasDerivedCustomLinks_172](@ParentLinkID varchar(20)) as Begin DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') if exists (Select 1 from [dbo].[CustomParamXmlValues] cpxv WHERE [cpxv].[ParamNo]=@ParamNo AND [cpxv].[ParamLevel]='C' AND [cpxv].[ItemName] LIKE @ParentLinkID+':%') Select 'true' else Select 'false' End
/*Automated Subscription Deletion - Close access to db*/ CREATE PROCEDURE [dbo].[EAUI_GetProfileDocTypes_80]( @ProfNo varchar(20))AS BEGIN SELECT Distinct dl.DocTypeID, ISNULL(dc.Caption, '') AS Caption FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] pd ON p.ProfNo = pd.ProfNo INNER JOIN [dbo].[DbDocType] dd ON pd.DbVerNo = dd.DbVerNo INNER JOIN [dbo].[InterfaceDocType] idt ON dd.DocTypeNo = idt.DocTypeNo AND p.InterfaceID= idt.InterfaceID AND p.Version = idt.Version INNER JOIN [dbo].[DocTypeList] dl ON dd.DocTypeNo = dl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeCaption] dc ON dl.DocTypeNo=dc.DocTypeNo AND dc.LangCode='en' WHERE p.ProfNo = CONVERT(int,@ProfNo) AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) ORDER BY dl.DocTypeID END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceParameters_70](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10), @Version varchar(10), @ParamList varchar(2000)) AS BEGIN BEGIN TRY DECLARE @AddedParamNo TABLE (ParamNo smallint, EditLevel tinyint) INSERT INTO @AddedParamNo (ParamNo, EditLevel) SELECT [cpl].[Item], [cplp].[EditLevel] FROM dbo.EAIF_GetItemTable_70(@ParamList,'+') cpl INNER JOIN [dbo].[CustomParamEditDetail] cplp ON cpl.Item = cplp.ParamNo INSERT INTO @AddedParamNo (ParamNo, EditLevel) SELECT cpl.ParamNo, cped.EditLevel FROM [dbo].[CustomParamList] cpl inner join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo = cped.ParamNo WHERE cpl.ParentParamNo IN (SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ParamList,'+')) INSERT INTO @AddedParamNo (ParamNo, EditLevel) SELECT cpl.ParamNo, cped.EditLevel FROM [dbo].[CustomParamList] cpl inner join [dbo].[CustomParamEditDetail] cped on cpl.ParamNo = cped.ParamNo INNER JOIN [dbo].[CustomParamList] cplp ON cpl.ParentParamNo = cplp.ParamNo WHERE cplp.ParentParamNo IN (SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ParamList,'+')) BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceParamList]([dbo].[InterfaceParamList].[InterfaceID],[dbo].[InterfaceParamList].[Version],[dbo].[InterfaceParamList].[ParamNo],[dbo].[InterfaceParamList].[EditLevel]) SELECT @InterfaceID,@Version, apn.ParamNo, isNull(apn.EditLevel, 2) from @AddedParamNo apn INSERT INTO [dbo].[CustomParamDefaults] ([dbo].[CustomParamDefaults].[ParamNo],[dbo].[CustomParamDefaults].[InterfaceID],[dbo].[CustomParamDefaults].[Version],[dbo].[CustomParamDefaults].[MarketID],[dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue]) SELECT a.ParamNo, @InterfaceID, @Version, ml.MarketID, 'S', pl.DefValue FROM [dbo].[CustomParamList] pl INNER JOIN @AddedParamNo a ON pl.ParamNo=a.ParamNo CROSS JOIN EASUPPORT.dbo.MarketList ml WHERE pl.ParamType in ('S','B','N') INSERT INTO [dbo].[CustomParamDefaults] ([dbo].[CustomParamDefaults].[ParamNo],[dbo].[CustomParamDefaults].[InterfaceID],[dbo].[CustomParamDefaults].[Version],[dbo].[CustomParamDefaults].[MarketID],[dbo].[CustomParamDefaults].[STMode],[dbo].[CustomParamDefaults].[DefValue]) SELECT a.ParamNo, @InterfaceID, @Version, ml.MarketID, 'T', pl.DefValue FROM [dbo].[CustomParamList] pl INNER JOIN @AddedParamNo a ON pl.ParamNo=a.ParamNo CROSS JOIN EASUPPORT.dbo.MarketList ml WHERE pl.ParamType in ('S','B','N') DECLARE @Plist1 varchar(1024), @Plist2 varchar(1024) SET @Plist1='' SET @Plist2='' SET @Plist1 = REPLACE(SUBSTRING(@ParamList,1,1024),'+',',') IF DATALENGTH(@ParamList)>1025 SET @Plist2 = REPLACE(SUBSTRING(@ParamList,1025,2000),'+',',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces','Add Parameters', @InterfaceID,@Version,@Plist1,@Plist2 COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION END CATCH END
CREATE PROCEDURE [dbo].[EPCS_GetProfLanguages_70]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN SELECT b.LangCode, c.Description FROM [dbo].[Profile] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version=b.Version INNER JOIN [dbo].[LangList] c ON b.LangCode = c.LangCode WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND a.ProfID=@ProfID ORDER BY c.SeqNo END
CREATE PROCEDURE [dbo].[BLL_GetLocalTitleList](@CustomerID varchar(10), @CollectionID varchar(50), @Term varchar(255), @NumOfElements int ) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID SET ROWCOUNT @NumOfElements SELECT lt.TitleNo as 'TitleID', lt.ColNo FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo WHERE lt.ColNo=@ColNo AND UPPER(mt.Title) >= UPPER(@Term) ORDER BY UPPER(mt.Title), mt.ISSN END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceScreenList_76](@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[ScreenID], [dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[AutoAddLimiter], [dbo].[InterfaceScreen].[SeqNo], [dbo].[InterfaceScreen].[AutoAddMDbLimiter] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
CREATE PROCEDURE [dbo].[EATL_GetDbVerNo_70] (@DbName varchar(10), @DbLabel varchar(10)) AS BEGIN SELECT ISNULL(dbo.EAIF_GetDbVerNo_70(@DbName,@DbLabel), -1) END
CREATE PROCEDURE [dbo].[EPCS_CheckLocalTitlesMult_99](@CustID VARCHAR(10), @ColIDList NVARCHAR(max), @ISSNList VARCHAR(max)) AS BEGIN SELECT Item INTO #T FROM dbo.EAIF_GetItemTableSingleByte_70(@ISSNList, ',') CREATE CLUSTERED INDEX IDX_T_T_Item ON #T(Item ASC); SELECT b.ISSN, d.ColID AS ColId, c.Subscribe, dbo.EAIF_GetLocalTitleDates_70(ISNULL(d.SharedFrom, d.ColNo), c.TitleNo) AS Dates FROM #T AS T INNER JOIN dbo.MasterTitle b ON T.Item = b.ISSN INNER JOIN dbo.LocalTitle c ON b.TitleNo = c.TitleNo INNER JOIN dbo.EPCS_GetColNoFromList_99(@CustID, @ColIDList, ',') d ON c.ColNo = ISNULL(d.SharedFrom, d.ColNo) DROP TABLE #T END
CREATE FUNCTION [dbo].[Util_SplitToTable] (@theDelimiter varchar(1) , @theTextToSplit varchar(8000)) RETURNS @SplitTable TABLE (Idx BIGINT IDENTITY(1,1), SplitData VARCHAR(250), Size INT) AS BEGIN DECLARE @Text VARCHAR(8000) DECLARE @StrLine VARCHAR(8000) DECLARE @Size BIGINT DECLARE @Start BIGINT SET @Text =@theTextToSplit SET @Size = 1 SET @Start = 1 WHILE (@Start < DATALENGTH(@Text) + 1) BEGIN SET @Size = CHARINDEX(@theDelimiter, SUBSTRING(@Text, @Start, DATALENGTH(@Text)), 1) IF @Size = 0 SET @Size = DATALENGTH(@Text) - @Start + 1 SET @StrLine = SUBSTRING(SUBSTRING(@Text, @Start, DATALENGTH(@Text)), 1, @Size) SET @StrLine = REPLACE(@StrLine,@theDelimiter,'') INSERT INTO @SplitTable([dbo].[Util_SplitToTable].[SplitData], [dbo].[Util_SplitToTable].[Size]) VALUES(@StrLine, LEN(@StrLine)) SET @Start = @Start + @Size END --while RETURN END --fn end
CREATE PROCEDURE [dbo].[EAUI_GetDerivedCustomLinks_70](@ParentLinkID varchar(20) ) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT a. ItemName, a.ParamValue, b.CustID FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Customer] b ON a.TargetNo= b.CustNo WHERE [a].[ParamNo]=@ParamNo AND [a].[ParamLevel]='C' AND [a].[ItemName] LIKE @ParentLinkID+':%' END
Create Procedure [dbo].[EAIP_PromoteDSParameters_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) as Begin Begin Try Begin Transaction DELETE dbsp FROM [dbo].[DbServerParams] dbsp JOIN #TempDbListTable t on dbsp.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) INSERT [dbo].[DbServerParams] SELECT t.UpperDbVerNo, Threads, WaitForRequest, DefSearchInstances, MaxSearchInstances, DefRetrieveInstances, MaxRetrieveInstances, DefFormatInstances, MaxFormatInstances, DefFullTextInstances, MaxFullTextInstances, DefThesaurusInstances, MaxThesaurusInstances, MaxFuzzyTerms, MaxBooleanTerms, MaxFuzzyRecordNumbers, MaxBooleanRecordNumbers, MaxRecords FROM [dbo].[DbServerParams] dbsp JOIN #TempDbListTable t ON dbsp.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Commit Transaction End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAUI_UpdateLangListOrder_70]( @UserID nvarchar(20), @UserIP varchar(15), @LangCodeList varchar(8000), @LangOrderList varchar(8000)) AS BEGIN BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Languages','Update Language Order' UPDATE [dbo].[LangList] SET [SeqNo] = convert(int, tbl.Value) FROM [dbo].[LangList] lng INNER JOIN dbo.EAIF_GetItemValueTable_70(@LangCodeList, @LangOrderList, '+') tbl ON lng.LangCode = tbl.Item COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_InterfaceKnownSearchItemLabels_103](@KnownSearchItemNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Labels nvarchar(max) SET @Labels=N'' SELECT @Labels = @Labels + N''+ ikic.Label +N' ' FROM [dbo].[InterfaceKnownSearchItemCaption] ikic WHERE ikic.KnownSearchItemNo = @KnownSearchItemNo and LEN(ikic.Label) > 0 -- don't return empty label RETURN @Labels END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerName_70] (@CustID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetCustName_70( @CustID ) AS CustName END
CREATE PROCEDURE dbo.EAIP_DeleteInterfacePrimaryDatabase_161 (@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @DbVerNo int) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF NOT EXISTS ( SELECT 1 FROM [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID]=@InterfaceID and [dbo].[InterfacePrimaryDatabases].[Version]=@Version and [dbo].[InterfacePrimaryDatabases].[DbVerNo]= @DbVerNo ) BEGIN RAISERROR('The DbVersionNo %d cannot be deleted as it is either invalid or not attached to this interface and version.', 16,-1, @DbVerNo) RETURN END BEGIN TRANSACTION DELETE [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID]=@InterfaceID and [dbo].[InterfacePrimaryDatabases].[Version]=@Version and [dbo].[InterfacePrimaryDatabases].[DbVerNo]= @DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface','Delete Interface Primary database', @InterfaceID, @Version, @DbVerNo COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetGlobalInterfaceLanguagesByPages_161] ( @startRow INT, @endRow INT ) AS BEGIN SELECT [ll].[SeqNo], ll.LangCode, [ll].[Description],splstr.Interfacelist,splstr.TotalCount FROM [dbo].[LangList] ll CROSS APPLY dbo.EAIF_GetInterfaceListForDefaultLang_161(ll.LangCode,@startRow,@endRow) as splstr ORDER BY [ll].[SeqNo] END
Create Procedure [dbo].[EAUI_ReorderInterfaceMultiDbAuthoritiesAlpha_90] (@UserID varchar(10), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10)) AS begin try Declare @temp table (SeqNo int identity(1,1), MultiDbAuthID varchar(10)) Insert @temp select [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID] from [dbo].[InterfaceMultiDbAuthList] where [dbo].[InterfaceMultiDbAuthList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbAuthList].[Version]=@Version Order by [dbo].[InterfaceMultiDbAuthList].[MultiDbAuthID] Begin Transaction Update [dbo].[InterfaceMultiDbAuthList] set [SeqNo]=t.SeqNo From [dbo].[InterfaceMultiDbAuthList] imdbal Join @temp t on imdbal.MultiDbAuthID=t.MultiDbAuthID where InterfaceID=@InterfaceID and Version=@Version Commit Transaction end try begin catch rollback transaction end catch
CREATE FUNCTION [dbo].[EAIF_DocTypeLangAndCaptions_77](@DocTypeNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(8000) SET @Captions='' SET @Langs='' SELECT @Captions=@Captions+'|'+[dbo].[DocTypeCaption].[Caption], @Langs=@Langs+'|'+[dbo].[DocTypeCaption].[LangCode] FROM [dbo].[DocTypeCaption] WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_DeleteFunFact_70](@UserID nvarchar(20), @UserIP varchar(15),@FactNo int) AS BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Fun Facts', 'Delete Fun Fact', @FactNo DELETE From [dbo].[FunFacts] WHERE [dbo].[FunFacts].[FactNo] = @FactNo END
CREATE Procedure [dbo].[EAIP_DbHasSubsetDbs_103](@DbVerNo int) as Begin if exists (select 1 from [dbo].[DbSubset] where [dbo].[DbSubset].[PhysDbVerNo]=@DbVerNo) select 'true' else select 'false' End
CREATE PROCEDURE [dbo].[EAUI_GetProfileDynamedDatabaseList_132](@ProfNo int,@UserEditLevel int,@DbStatus CHAR(1),@SourceType CHAR(1)) AS BEGIN --Note : A new version of the procedure (_132) created, as we are adding new input parameters -- @DbStatus : This parameter can have values '0','1','A' -- Where '0' - Get Disabled profile databases -- '1' - Get Enabled profile databases -- 'A' - Get All databases - both enabled /Disabled. (Applicable to Paying customers only) -- @SourceType : This parameter can have values 'C','D' and 'O' -- Where 'C' - Includes Catalogs and IR's only -- 'D' - Includes Internal databases -- 'O' - All sources types other than 'C' and 'D'. -- @SourceType would be primarly used for internal customer only. -- The Show dropdown on Profile databases tab would have different options based on the customer type. -- For internal customer - Options available are Enabled, Disabled - Internal Databases, Disabled - Catalogs and IR's -- and Disabled - Others. -- There is NO option to get all disabled databases (for internal customer) to avoid performance issues. -- For Paying customer - Options available are Enabled, Disabled and 'All'. -- Declare @InterfaceID varchar(10) Declare @Version varchar(10) DECLARE @CustType CHAR(1) DECLARE @DbLabel VARCHAR(10) DECLARE @CustNo INT DECLARE @EnableFlag int SELECT @CustType = [b].[CustType], @DbLabel = [a].[DbLabel], @CustNo = b.CustNo FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo IF @DbStatus = 'A' SET @EnableFlag = 3 ELSE SET @EnableFlag = @DbStatus DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) IF ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =0) BEGIN IF @SourceType = 'D' OR @SourceType='C' -- Get DBs For Internal Customers. These customers do not have ProfDatabases to begin with. INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType =@SourceType ORDER BY a.DisplayName asc -- Index connectors. -- Check if the profile interface supports 'M' type databases. ELSE IF @SourceType='O' AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN EASUPPORT.dbo.ProductInterface pi ON p.InterfaceID=pi.InterfaceID AND p.Version=pi.Version JOIN EASUPPORT.dbo.Product pr ON pi.ProductID=pr.ProductID and pr.ProductType= 'M' WHERE p.ProfNo=@ProfNo) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType JOIN [dbo].[CustExternalDbList] cedl ON cedl.CustNo=@CustNo AND cedl.DbVerNo=a.DbVerNo LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType NOT IN ('D','C') AND cedl.Status='A' ORDER BY a.DisplayName asc END -- The non Related Medical Info databases should always appear at the top, followed by -- RMI dbs in specific order. select @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo Declare @ProfDB TABLE (DbVerNo int, DisplayName nvarchar(255), SortField1 char(1) , SeqNo int, Mode varchar(10), AccessEndDate datetime, Enable bit) IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) Insert @ProfDB (DbVerNo, DisplayName, SortField1,SeqNo, Mode, AccessEndDate,Enable) SELECT a.DbVerNo, CASE WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'**' WHEN s.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' WHEN s.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' END AS DisplayName, CASE WHEN s.DbVerNo is null THEN 'A' WHEN s.DbVerNo > 0 THEN 'Z' END AS SortField1, ISNULL(s.SeqNo,ISNULL(a.SeqNo, 1)) SeqNo, CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END As Mode, isnull(a.AccessEndDate, null) AccessEndDate, a.Enable FROM [dbo].[ProfDatabase] a Inner Join [dbo].[DbList] b on (b.DbVerNo = a.DbVerNo) Left outer join [dbo].[InterfaceNonSearchDbs] s on (s.InterfaceID=@InterfaceID AND s.Version=@Version AND s.DbVerNo=a.DbVerNo) Left Outer Join [dbo].[DbList] db on (a.DbVerNo = db.DbVerNo AND db.NonSearchableDb=1) WHERE a.ProfNo = @ProfNo AND (@EnableFlag = 3 OR a.Enable = @EnableFlag) -- @EnableFlag 3: Get both enabled and disabled AND (@UserEditLevel =1 OR ((a.Mode is null OR a.Mode<>'X') AND (@UserEditLevel =1 OR (@UserEditLevel =2 AND db.DbVerNo is null)) -- Exclude nonsearchable database for LibAdmin AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ))) -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) Insert @ProfDB (DbVerNo, DisplayName, SortField1,SeqNo, Mode, AccessEndDate,Enable) SELECT a.DbVerNo, CASE WHEN s.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN s.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'**' END AS DisplayName, CASE WHEN s.DbVerNo is null THEN 'A' WHEN s.DbVerNo > 0 THEN 'Z' END AS SortField1, ISNULL(s.SeqNo,ISNULL(a.Id, 1)) SeqNo, 'Internal' AS Mode, NULL AS AccessEndDate, 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo=b.DbVerNo Left outer join [dbo].[InterfaceNonSearchDbs] s on (s.InterfaceID=@InterfaceID AND s.Version=@Version AND s.DbVerNo=a.DbVerNo) Left Outer Join [dbo].[DbList] db on (a.DbVerNo = db.DbVerNo AND db.NonSearchableDb=1) -- ORDER BY SeqNo IF (@CustType = 'I' OR @CustType ='P') SELECT pdb.DbVerNo, [pdb].[DisplayName], [pdb].[SortField1], [pdb].[SeqNo], [pdb].[Mode], [pdb].[AccessEndDate], [pdb].[Enable] FROM @ProfDB pdb order by [pdb].[SortField1], [pdb].[SeqNo], [pdb].[DisplayName] ELSE SELECT pdb.DbVerNo, [pdb].[DisplayName], [pdb].[SortField1], [pdb].[SeqNo], [pdb].[Mode], [pdb].[AccessEndDate], [pdb].[Enable] FROM @ProfDB pdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON pdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS null order by [pdb].[SortField1], [pdb].[SeqNo], [pdb].[DisplayName] END
CREATE PROCEDURE [dbo].[EAUI_AddInterfacePrimaryDatabase_103] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @DbVerNo int) AS BEGIN Declare @LogInterface varchar (30) Declare @DbName varchar(10) Declare @DbLabel varchar(10) Declare @i int Declare @Count int Declare @CurrentDbVerNo int Select @LogInterface = @InterfaceID + '(' + @Version + ')' Select @DbName=[dbo].[DbList].[DbName] from [dbo].[DbList] with (nolock) Where [dbo].[DbList].[DbVerNo]=@DbVerNo Create Table #DbTable (Num int Identity(1,1), DbVerNo int, DbLabel varchar(10)) Begin Try Begin Transaction Insert #DbTable (#DbTable.[DbVerNo], #DbTable.[DbLabel]) Select [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DbLabel] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName set @i=1 select @Count=Count(*) from #DbTable while (@i <= @Count) Begin select @CurrentDbVerNo=#DbTable.[DbVerNo], @DbLabel=#DbTable.[DbLabel] from #DbTable where #DbTable.[Num]=@i Insert into [dbo].[InterfacePrimaryDatabases] ([dbo].[InterfacePrimaryDatabases].[InterfaceID],[dbo].[InterfacePrimaryDatabases].[Version],[dbo].[InterfacePrimaryDatabases].[DbVerNo],[dbo].[InterfacePrimaryDatabases].[SeqNo]) Select @InterfaceID,@version,@CurrentDbVerNo, (Select ISNULL (MAX(p.SeqNo) ,0) + 1 from [dbo].[InterfacePrimaryDatabases] p Where p.InterfaceID=@InterfaceID and p.Version=@Version) EXEC [dbo].[EAIP_AddPrimaryDbToUserProfiles_103] @InterfaceID,@Version,@DbName,@DbLabel set @i=@i+1 End INSERT INTO EASUPPORT.dbo.ActivityLog VALUES (@UserID, @UserIP, GetDate(), 'Interface', 'Add interface Primary database', @LogInterface, @dbName, NULL, NULL, NULL) Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch END
CREATE PROCEDURE [dbo].[EPCS_GetProfLinkSourceMenu_70](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @ProfNo int DECLARE @ProfParamNo int SET @ProfNo=dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) SET @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('linkSourceMenu','P') SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ProfParamNo END
CREATE PROCEDURE [dbo].[BLL_GetNewScanTerm](@CustomerID varchar(10), @CollectionID varchar(50), @PrevTerm varchar(255), @PrefferedPostion int) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID AND [dbo].[Collection].[IsDeleted] = 0 SET ROWCOUNT @PrefferedPostion SELECT mt.Title FROM [dbo].[LocalTitle] lt INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo WHERE lt.ColNo=@ColNo AND UPPER(mt.Title) <= UPPER(@PrevTerm) ORDER BY UPPER(mt.Title) DESC, mt.ISSN END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceScreenListNoAutoAdd_76](@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT [dbo].[InterfaceScreen].[IntfScreenNo], [dbo].[InterfaceScreen].[Description], [dbo].[InterfaceScreen].[AutoAddLimiter], [dbo].[InterfaceScreen].[SeqNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[AutoAddLimiter]=0 ORDER BY [dbo].[InterfaceScreen].[SeqNo] END
CREATE PROCEDURE [dbo].[EATL_GetDbVerNo_Batch] ( @Objects XML, @DbLabels VARCHAR(50) ) AS BEGIN SELECT o.DbName, l.DbLabel, db.DbVerNo FROM ( SELECT m.c.value('(./DbName)[1]', 'varchar(10)') AS DbName FROM @Objects.nodes('/ArrayOfObject/object') AS m(c) ) o CROSS JOIN ( SELECT value AS DbLabel FROM STRING_SPLIT(@DbLabels, ',') ) l INNER JOIN dbo.DbList db ON o.DbName = db.DbName AND l.DbLabel = db.DbLabel END
--sql content merged from file: \StoredProcedures\EPCS_GetApplicationParamValue_912.sql CREATE PROCEDURE [dbo].[EPCS_GetApplicationParamValue_912](@ApplicationID varchar(20), @ParamName varchar(100)) AS BEGIN SELECT cpv.ParamValue FROM [dbo].[ConfigParamScalarValues] cpv INNER JOIN [dbo].[ConfigApplication] a ON cpv.TargetNo = a.ApplicationNo INNER JOIN [dbo].[ConfigParamList] p ON a.ApplicationNo = p.ApplicationNo AND p.ParamNo = cpv.ParamNo WHERE cpv.ParamLevel='A' AND p.ParamName = @ParamName AND a.ApplicationID = @ApplicationID END
-- this function is used to check if a dbName is part of a customer's subscription -- it is used by the UIConfigurationsService CREATE FUNCTION [dbo].[EAIF_CheckCustomerDbSubscription_143](@CustID VARCHAR(10), @DbList VARCHAR(4000)) RETURNS BIT AS BEGIN DECLARE @Count INT DECLARE @rc BIT SELECT @Count = COUNT(DISTINCT [dbl].[DbName]) FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] pdb ON p.ProfNo=pdb.ProfNo and (pdb.AccessEndDate>GetDate() OR pdb.AccessEndDate IS NULL) INNER JOIN [dbo].[DbList] dbl ON pdb.DbVerNo=dbl.DbVerNo INNER JOIN dbo.EAIF_GetItemTable_70(@DbList, ',') d ON dbl.DbName=d.Item WHERE p.CustID=@CustID IF (@Count > 0) SET @rc = 1 ELSE SET @rc = 0 RETURN @rc END
CREATE PROCEDURE [dbo].[EAUI_GetDisciplinesAssociatedWithDatabase_131] ( @DbName VARCHAR(10) ) AS BEGIN SELECT [dbo].[DbDiscipline].[DbName], [dbo].[DbDiscipline].[DisciplineNo] FROM dbo.DbDiscipline WHERE [dbo].[DbDiscipline].[DbName] = @DbName END
CREATE Procedure [dbo].[EAIP_PromoteMultiDbAuthoritiesForAuthority_161](@PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS Begin Begin Try BEGIN TRANSACTION DELETE dbmdbal FROM [dbo].[DbList] dbl Join [dbo].[DBMultiDbAuthList] dbmdbal on dbl.DbVerNo=dbmdbal.DbVerNo JOIN #TempDbListTable t on dbmdbal.DbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Where dbl.DbType!=1 INSERT [dbo].[DBMultiDbAuthList] SELECT MultiDbAuthID, t.UpperDbVerNo FROM [dbo].[DbList] dbl Join [dbo].[DBMultiDbAuthList] dbmdbal on dbl.DbVerNo=dbmdbal.DbVerNo JOIN #TempDbListTable t ON dbmdbal.DbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Where dbl.DbType!=1 COMMIT TRANSACTION End try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAUI_UpdateLimiter_76] ( @UserId nvarchar(20), @UserIp varchar(15), @DbLabel varchar(10), @LimiterType char(1), @ControlType smallint, @ControlSize smallint, @LogicalOpCode varchar(3), @Description nvarchar(100), @Notes nvarchar(255), @Hidden bit, @LimiterNo int ) AS BEGIN DECLARE @LimiterId varchar(20) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId] FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Limiter', 'Update Limiter', @LimiterId, @DbLabel UPDATE [dbo].[LimiterList] SET [dbo].[LimiterList].[LimiterType] = @LimiterType, [dbo].[LimiterList].[ControlType] = @ControlType, [dbo].[LimiterList].[ControlSize] = @ControlSize, [dbo].[LimiterList].[LogicalOpCode] = @LogicalOpCode, [dbo].[LimiterList].[Description] = @Description, [dbo].[LimiterList].[Notes] = @Notes, [dbo].[LimiterList].[BitFlag1] = @Hidden WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo AND [dbo].[LimiterList].[DbLabel] = @DbLabel END
CREATE FUNCTION [dbo].[EAIF_InterfaceKnownSearchItemLangAndGhostText_103](@KnownSearchItemNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @GhostText nvarchar(max) DECLARE @Langs varchar(max) SET @GhostText=N'' SET @Langs='' SELECT @GhostText=@GhostText+N'|'+ ISNULL([dbo].[InterfaceKnownSearchItemCaption].[GhostText], N''), @Langs=@Langs+'|'+[dbo].[InterfaceKnownSearchItemCaption].[LangCode] FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo] =@KnownSearchItemNo IF LEN(@GhostText)>1 SET @GhostText=SUBSTRING(@GhostText, 2, LEN(@GhostText)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) -- note: use different delimiter character than used above, in case one of the values is empty -- convert @Langs to NVARCHAR before concatenating RETURN @GhostText+'^^^'+CONVERT(NVARCHAR(MAX), @Langs) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerNotes_70](@CustID varchar(10)) AS BEGIN SELECT dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,'CustomerNotes') as 'Notes' END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceScreen_161] ( @UserID varchar(10), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @ScreenID varchar(10) ) AS BEGIN IF NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID] =@ScreenID) BEGIN RAISERROR('The Interface Version Screen %s-%s-%s does not exist.',16,-1, @InterfaceID,@Version,@ScreenID) RETURN END BEGIN TRANSACTION DELETE FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceScreen].[Version]=@Version AND [dbo].[InterfaceScreen].[ScreenID] =@ScreenID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface Screen', 'Delete a Screen', @InterfaceID, @Version,@ScreenID COMMIT TRANSACTION END
CREATE Procedure [dbo].[EAIP_GetGoogleScholarCustList_134](@MarketList varchar(max), @DbList varchar(max), @pageIndex INT = 1, @pageSize INT = 100) as BEGIN DECLARE @OffsetRows INT DECLARE @OffsetMaxRows INT SET @OffsetRows = ( ( @pageIndex - 1 ) * @pageSize ) + 1 SET @OffsetMaxRows = ( @pageIndex ) * @pageSize DECLARE @ParamNo INT DECLARE @DefValue BIT --Table to hold selected database list CREATE TABLE #SelectedDbList ( DbName VARCHAR(10) ); CREATE TABLE #MarketList ( MarketID VARCHAR(10) ); CREATE TABLE #ProfDb ( CustID VARCHAR(10), DbName VARCHAR(10) ); CREATE TABLE #Cust ( CustNo INT, CustID VARCHAR(10), CustName NVARCHAR(100), RowNumber INT ); INSERT INTO #SelectedDbList (#SelectedDbList.[DbName]) SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@DbList, ','); INSERT INTO #MarketList (#MarketList.[MarketID]) SELECT [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@MarketList, ','); --Get ParamNo and DefValue for googleScholarOptOut SELECT @ParamNo = [dbo].[CustomParamList].[ParamNo] , @DefValue = [dbo].[CustomParamList].[DefValue] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName] = 'googleScholarOptOut'; -- Get customers based on MarketID and googleScholarOptOut. Result set will be paged based on ROW_NUMBER() INSERT INTO #Cust (#Cust.[CustNo], #Cust.[CustID], #Cust.[CustName], #Cust.[RowNumber]) SELECT TOP (@OffsetMaxRows+1) --Get 1 more than needed. If max(RowNumber) > @OffsetMaxRows than there is at least one more page c.CustNo, c.CustID , c.CustName, ROW_NUMBER() OVER (ORDER BY c.CustNo) AS RowNumber FROM dbo.Customer c INNER JOIN #MarketList m ON c.MarketID = m.MarketID LEFT JOIN dbo.CustomParamScalarValues cpsv ON c.CustNo = cpsv.TargetNo AND cpsv.ParamNo = @ParamNo AND cpsv.ParamLevel = 'C' LEFT JOIN dbo.CustomParamDefaults cpd ON c.MarketID = cpd.MarketID AND cpd.ParamNo = @ParamNo AND cpd.STMode = 'S' WHERE ISNULL(ISNULL(cpsv.ParamValue, cpd.DefValue), @DefValue) = 0; -- get/filter CustID and DbName based on Enabled profiles and limited to databases passed in @DbList INSERT INTO #ProfDb (#ProfDb.[CustID], #ProfDb.[DbName]) SELECT p.CustID, d.DbName FROM dbo.[Profile] p INNER JOIN dbo.ProfDatabase pdb ON p.ProfNo = pdb.ProfNo AND (pdb.AccessEndDate > GETDATE() OR pdb.AccessEndDate IS NULL) AND pdb.Enable = 1 INNER JOIN dbo.DbList d ON pdb.DbVerNo = d.DbVerNo INNER JOIN #SelectedDbList sd ON d.DbName = sd.DbName GROUP BY p.CustID, d.DbName; -- Join #Cust and #ProfDb to restrict to only customer who have access to the specified databases. Also select those database names. -- Limit to records of the requested page based on RowNumber WITH CustDb_Cte AS ( SELECT c.CustID, c.CustName, d.DbName, c.RowNumber FROM #Cust c INNER JOIN #ProfDb d ON c.CustID = d.CustID WHERE RowNumber >= @OffsetRows AND RowNumber <= @OffsetMaxRows ) -- Select the distinct Customer/Db combinations and format as Xml. This and CustDb_CTE needed to be seperate to allow -- the last page inidication to be returned even if the page is empty or we are beyond the last page. SELECT [page].LastPage, c.CustId id, c.CustName cn, c.DbName dn FROM -- It is the last page if the Max(RowNumber) <= @OffsetMaxRows (SELECT CASE WHEN MAX(#Cust.[RowNumber]) <= @OffsetMaxRows THEN 1 ELSE 0 END [LastPage] FROM #Cust) [page] -- Using left join because we need the Last Page column even if there is nothing returned by CustDb_CTE. LEFT JOIN CustDb_CTE c ON 1=1 ORDER BY c.CustID, c.DbName FOR XML AUTO END;
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfacePrimaryDatabases_103] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @DbVerNoList varchar(2000), @SeqNoList varchar(2000)) AS BEGIN Declare @LogInterface varchar (30) Select @LogInterface = @InterfaceID + '(' + @Version + ')' Begin Try Begin Transaction UPDATE [dbo].[InterfacePrimaryDatabases] SET [SeqNo] = convert(int,b.Value) FROM [dbo].[InterfacePrimaryDatabases] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@DbVerNoList, @SeqNoList,'+') b ON a.DbVerNo=convert(int,b.Item) WHERE a.InterfaceID = @InterfaceID and a.Version = @Version EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface','Re-Order Primary Databases', @LogInterface, @DbVerNoList, @SeqNoList Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch END
CREATE FUNCTION [dbo].[EAIF_DocTypeLangAndMouseOverTexts_77](@DocTypeNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @MouseOverTexts nvarchar(max) DECLARE @Langs varchar(max) SET @MouseOverTexts=N'' SET @Langs='' SELECT @MouseOverTexts=@MouseOverTexts+N'|'+[dbo].[DocTypeCaption].[MouseOverText], @Langs=@Langs+'|'+[dbo].[DocTypeCaption].[LangCode] FROM [dbo].[DocTypeCaption] WHERE [dbo].[DocTypeCaption].[DocTypeNo]=@DocTypeNo AND [dbo].[DocTypeCaption].[MouseOverText] <>'' IF LEN(@MouseOverTexts)>1 SET @MouseOverTexts=SUBSTRING(@MouseOverTexts, 2, LEN(@MouseOverTexts)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @MouseOverTexts+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_DeleteGlobalClusters_80] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(20))AS BEGIN BEGIN TRANSACTION DELETE [dbo].[GlobalCluster] WHERE [dbo].[GlobalCluster].[ID]=@ID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Clusters', 'Delete Cluster', @ID COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAIP_DbParam_Resort_96.sql CREATE PROCEDURE dbo.EAIP_DbParam_Resort_96 ( @paramNameToSort VARCHAR(100), @sortType VARCHAR(10), @paramNameToCompare VARCHAR(100) = '' ) AS BEGIN --@sortType are: First, Last, Before, After --ex: exec EAIP_InterfaceParam_Resort_91 'srck5', 'live', 'before', 'durableLinkingPermitted', 'alertfeedPermitted' --would place param 'durableLinkingPermitted' before param 'alertfeedPermitted' for live version of interface 'srck5' DECLARE @TempParamTable TABLE ( paramNo INT, paramName Varchar(100), seqNo INT ) INSERT INTO @TempParamTable SELECT c.ParamNo, l.ParamName, c.SeqNo FROM [dbo].[DbParamList] l INNER JOIN [dbo].[DbParamEditDetail] c ON l.ParamNo = c.ParamNo DECLARE @seqNoToCompare INT SELECT @seqNoToCompare = seqNo FROM @TempParamTable WHERE paramName = @paramNameToCompare IF @sortType = 'First' BEGIN UPDATE @TempParamTable SET seqNo = (SELECT MIN(seqNo) FROM @TempParamTable) - 1 WHERE paramName = @paramNameToSort END ELSE IF @sortType = 'Last' BEGIN UPDATE @TempParamTable SET seqNo = (SELECT MAX(seqNo) FROM @TempParamTable) + 1 WHERE paramName = @paramNameToSort END ELSE IF @sortType = 'Before' AND EXISTS (SELECT 1 FROM @TempParamTable WHERE paramName = @paramNameToCompare) BEGIN UPDATE @TempParamTable SET seqNo = seqNo - 1 WHERE seqNo < @seqNoToCompare UPDATE @TempParamTable SET seqNo = @seqNoToCompare - 1 WHERE paramName = @paramNameToSort END ELSE IF @sortType = 'After' AND EXISTS (SELECT 1 FROM @TempParamTable WHERE paramName = @paramNameToCompare) BEGIN UPDATE @TempParamTable SET seqNo = seqNo + 1 WHERE seqNo > @seqNoToCompare UPDATE @TempParamTable SET seqNo = @seqNoToCompare + 1 WHERE paramName = @paramNameToSort END ELSE BEGIN RAISERROR ('Could not resort params', 0,1) RETURN END UPDATE [dbo].[DbParamEditDetail] SET [SeqNo] = tt.NewSeqNo FROM ( SELECT paramNo, RANK() OVER (ORDER BY seqNo) AS NewSeqNo FROM @TempParamTable ) tt INNER JOIN [dbo].[DbParamEditDetail] c ON tt.paramNo = c.ParamNo END
CREATE PROCEDURE [dbo].[EAUI_GetProfileDynamedDatabaseListFilteredPaged_252] ( @ProfNo INT ,@UserEditLevel INT ,@DbStatus CHAR(1) ,@SourceType CHAR(1) ,@browseField VARCHAR(25) = 'DbName' ,@browseTerm NVARCHAR(255) = '' ,@pageIndex INT = 0 ,@pageSize INT = 10 ) AS BEGIN --Note : A new version of the procedure (_132) created, as we are adding new input parameters -- @DbStatus : This parameter can have values '0','1','A' -- Where '0' - Get Disabled profile databases -- '1' - Get Enabled profile databases -- 'A' - Get All databases - both enabled /Disabled. (Applicable to Paying customers only) -- @SourceType : This parameter can have values 'C','D' and 'O' -- Where 'C' - Includes Catalogs and IR's only -- 'D' - Includes Internal databases -- 'O' - All sources types other than 'C' and 'D'. -- @SourceType would be primarly used for internal customer only. -- The Show dropdown on Profile databases tab would have different options based on the customer type. -- For internal customer - Options available are Enabled, Disabled - Internal Databases, Disabled - Catalogs and IR's -- and Disabled - Others. -- There is NO option to get all disabled databases (for internal customer) to avoid performance issues. -- For Paying customer - Options available are Enabled, Disabled and 'All'. -- Declare @InterfaceID varchar(10) Declare @Version varchar(10) DECLARE @CustType CHAR(1) DECLARE @DbLabel VARCHAR(10) DECLARE @CustNo INT DECLARE @EnableFlag int SELECT @CustType = [b].[CustType], @DbLabel = [a].[DbLabel], @CustNo = b.CustNo FROM [dbo].[Profile] a JOIN [dbo].[Customer] b ON a.CustID = b.CustID WHERE a.ProfNo=@ProfNo IF @DbStatus = 'A' SET @EnableFlag = 3 ELSE SET @EnableFlag = @DbStatus DECLARE @ProfDbsForIntCustomer TABLE ( Id INT IDENTITY(1, 1) , DbVerNo INT ) IF ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =0) BEGIN IF @SourceType = 'D' OR @SourceType='C' -- Get DBs For Internal Customers. These customers do not have ProfDatabases to begin with. INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType =@SourceType ORDER BY a.DisplayName asc -- Index connectors. -- Check if the profile interface supports 'M' type databases. ELSE IF @SourceType='O' AND EXISTS (SELECT 1 FROM [dbo].[Profile] p JOIN EASUPPORT.dbo.ProductInterface pi ON p.InterfaceID=pi.InterfaceID AND p.Version=pi.Version JOIN EASUPPORT.dbo.Product pr ON pi.ProductID=pr.ProductID and pr.ProductType= 'M' WHERE p.ProfNo=@ProfNo) INSERT INTO @ProfDbsForIntCustomer ( DbVerNo ) SELECT a.DbVerNo FROM [dbo].[DbTypeList] b JOIN [dbo].[DbList] a ON a.DbType = b.DbType JOIN [dbo].[CustExternalDbList] cedl ON cedl.CustNo=@CustNo AND cedl.DbVerNo=a.DbVerNo LEFT OUTER JOIN [dbo].[ProfDatabase] pd ON pd.DbVerNo = a.DbVerNo AND pd.ProfNo = @ProfNo WHERE a.DbLabel = @DbLabel AND b.Category = 'R' AND pd.DbVerNo IS NULL AND a.SourceType NOT IN ('D','C') AND cedl.Status='A' ORDER BY a.DisplayName asc END -- The non Related Medical Info databases should always appear at the top, followed by -- RMI dbs in specific order. select @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] from [dbo].[Profile] where [dbo].[Profile].[ProfNo]=@ProfNo Declare @ProfDB TABLE (DbVerNo int, DisplayName nvarchar(255), SortField1 char(1) , SeqNo int, Mode varchar(10), AccessEndDate datetime, Enable bit) IF (@CustType = 'S' OR @CustType ='T' OR @CustType = 'U' OR ((@CustType = 'I' OR @CustType ='P') AND @EnableFlag =1 )) Insert @ProfDB (DbVerNo, DisplayName, SortField1,SeqNo, Mode, AccessEndDate,Enable) SELECT a.DbVerNo, CASE WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'**' WHEN s.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' WHEN s.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' END AS DisplayName, CASE WHEN s.DbVerNo is null THEN 'A' WHEN s.DbVerNo > 0 THEN 'Z' END AS SortField1, ISNULL(s.SeqNo,ISNULL(a.SeqNo, 1)) SeqNo, CASE a.Mode WHEN 'I' THEN 'Internal' WHEN 'S' THEN 'Sale' WHEN 'T' THEN 'Trial' ELSE 'N/A' END As Mode, isnull(a.AccessEndDate, null) AccessEndDate, a.Enable FROM [dbo].[ProfDatabase] a Inner Join [dbo].[DbList] b on (b.DbVerNo = a.DbVerNo) Left outer join [dbo].[InterfaceNonSearchDbs] s on (s.InterfaceID=@InterfaceID AND s.Version=@Version AND s.DbVerNo=a.DbVerNo) Left Outer Join [dbo].[DbList] db on (a.DbVerNo = db.DbVerNo AND db.NonSearchableDb=1) WHERE a.ProfNo = @ProfNo AND (@EnableFlag = 3 OR a.Enable = @EnableFlag) -- @EnableFlag 3: Get both enabled and disabled AND (@UserEditLevel =1 OR ((a.Mode is null OR a.Mode<>'X') AND (@UserEditLevel =1 OR (@UserEditLevel =2 AND db.DbVerNo is null)) -- Exclude nonsearchable database for LibAdmin AND (a.AccessEndDate is null or datediff(hh, a.AccessEndDate, getdate())<0 ))) -- Include the databases for Internal customers. @ProfDbsForIntCustomer table would be empty for paying customer's profile. IF EXISTS (SELECT 1 FROM @ProfDbsForIntCustomer) Insert @ProfDB (DbVerNo, DisplayName, SortField1,SeqNo, Mode, AccessEndDate,Enable) SELECT a.DbVerNo, CASE WHEN s.DbVerNo is null THEN b.DisplayName+ N' ('+b.DbName+N')' WHEN s.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'*' WHEN db.DbVerNo > 0 THEN b.DisplayName+ N' ('+b.DbName+N')' + N'**' END AS DisplayName, CASE WHEN s.DbVerNo is null THEN 'A' WHEN s.DbVerNo > 0 THEN 'Z' END AS SortField1, ISNULL(s.SeqNo,ISNULL(a.Id, 1)) SeqNo, 'Internal' AS Mode, NULL AS AccessEndDate, 0 AS Enable FROM @ProfDbsForIntCustomer a INNER JOIN [dbo].[DbList] b ON a.DbVerNo=b.DbVerNo Left outer join [dbo].[InterfaceNonSearchDbs] s on (s.InterfaceID=@InterfaceID AND s.Version=@Version AND s.DbVerNo=a.DbVerNo) Left Outer Join [dbo].[DbList] db on (a.DbVerNo = db.DbVerNo AND db.NonSearchableDb=1) -- ORDER BY SeqNo DECLARE @ProfileDatabases TABLE ( DbVerNo INT ,DisplayName NVARCHAR(255) ,SortField CHAR(1) ,SeqNo INT ,Mode VARCHAR(10) ,AccessEndDate DATETIME ,[Enable] BIT ); IF (@CustType = 'I' OR @CustType ='P') INSERT INTO @ProfileDatabases SELECT pdb.DbVerNo, [pdb].[DisplayName], [pdb].[SortField1], [pdb].[SeqNo], [pdb].[Mode], [pdb].[AccessEndDate], [pdb].[Enable] FROM @ProfDB pdb order by [pdb].[SortField1], [pdb].[SeqNo], [pdb].[DisplayName] ELSE INSERT INTO @ProfileDatabases SELECT pdb.DbVerNo, [pdb].[DisplayName], [pdb].[SortField1], [pdb].[SeqNo], [pdb].[Mode], [pdb].[AccessEndDate], [pdb].[Enable] FROM @ProfDB pdb LEFT OUTER JOIN dbo.EAIF_GetHiddenProfDbList_133() hdbl ON pdb.DbVerNo=hdbl.DbVerNo WHERE hdbl.DbVerNo IS null order by [pdb].[SortField1], [pdb].[SeqNo], [pdb].[DisplayName]; WITH CTE AS ( SELECT [pdb].[DbVerNo] ,[pdb].[DisplayName] ,[pdb].[SortField] ,[pdb].[SeqNo] ,[pdb].[Mode] ,[pdb].[AccessEndDate] ,[pdb].[Enable] FROM @ProfileDatabases pdb WHERE @browseTerm = '' OR (@browseField = 'DbName' AND DisplayName LIKE '%(%' + @browseTerm + '%)%') OR (@browseField = 'DisplayName' AND DisplayName LIKE '%' + @browseTerm + '%(%)%') ), PagedCte AS ( SELECT [DbVerNo] ,[DisplayName] ,[SortField] ,[SeqNo] ,[Mode] ,[AccessEndDate] ,[Enable] FROM CTE ORDER BY [SortField] ,[SeqNo] ,[DisplayName] OFFSET @pageIndex * @pageSize ROWS FETCH NEXT @pageSize ROWS ONLY ) SELECT [DbVerNo] ,[DisplayName] ,[SortField] ,[SeqNo] ,[Mode] ,[AccessEndDate] ,[Enable] ,NULL TotalCount FROM PagedCte UNION ALL SELECT NULL [DbVerNo] ,NULL [DisplayName] ,NULL [SortField] ,NULL [SeqNo] ,NULL [Mode] ,NULL [AccessEndDate] ,NULL [Enable] ,COUNT(*) TotalCount FROM CTE END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceToolbarItem_77] (@UserID nvarchar(20),@UserIP varchar(30), @InterfaceID varchar(10), @Version varchar(10), @ItemName varchar(50), @Category varchar(255), @Align varchar(10), @Image varchar(255),@Caption nvarchar(255))AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version AND [dbo].[InterfaceToolbar].[ItemName]=@ItemName) BEGIN RAISERROR ('Interface %s-%s already has toolbar item %s.',16,1,@InterfaceID,@Version,@ItemName) RETURN END DECLARE @NextSeqNo int SELECT @NextSeqNo=ISNULL(MAX([dbo].[InterfaceToolbar].[SeqNo])+1,1)FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version BEGIN TRANSACTION INSERT INTO [dbo].[InterfaceToolbar]([dbo].[InterfaceToolbar].[InterfaceID],[dbo].[InterfaceToolbar].[Version],[dbo].[InterfaceToolbar].[ItemName],[dbo].[InterfaceToolbar].[Category],[dbo].[InterfaceToolbar].[Alignment],[dbo].[InterfaceToolbar].[Image],[dbo].[InterfaceToolbar].[SeqNo]) VALUES (@InterfaceID,@Version,@ItemName,@Category,@Align,@Image, @NextSeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @IntfToolbarItem int SELECT @IntfToolbarItem=[dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceToolbar].[Version]=@Version AND [dbo].[InterfaceToolbar].[ItemName]=@ItemName INSERT INTO [dbo].[InterfaceToolbarCaption] ([dbo].[InterfaceToolbarCaption].[IntfToolbarItem],[dbo].[InterfaceToolbarCaption].[LangCode],[dbo].[InterfaceToolbarCaption].[Caption]) VALUES (@IntfToolbarItem, 'en',@Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @Param1 nvarchar(1024) SET @Param1=@InterfaceID+','+@Version DECLARE @Param2 nvarchar(1024) SET @Param2=@Category+','+@Align+','+@Image+','+@Caption EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Add ToolbarItem', @Param1 ,@ItemName,@Param2 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetProfLocalLimiters_76]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo INT SET @ProfNo = dbo.EAIF_GetProfNo_70( @CustID, @GroupID, @ProfID ) DECLARE @exist bit SET @exist=0 IF EXISTS (SELECT 1 FROM [dbo].[ProfLocalLimiterCaption2] where [dbo].[ProfLocalLimiterCaption2].[ProfNo]=@ProfNo) SET @exist=1 DECLARE @MaxSeqNo INT CREATE TABLE #ProfLocalLimiters (ScreenID VARCHAR(10), LimiterID VARCHAR(30), ControlType VARCHAR(10), DefValue VARCHAR(3), Show BIT, SearchString NVARCHAR(70), OpCode VARCHAR(3), Captions NVARCHAR(MAX), SeqNo INT) INSERT #ProfLocalLimiters (#ProfLocalLimiters.[ScreenID], #ProfLocalLimiters.[LimiterID], #ProfLocalLimiters.[ControlType], #ProfLocalLimiters.[DefValue], #ProfLocalLimiters.[Show], #ProfLocalLimiters.[SearchString], #ProfLocalLimiters.[OpCode], #ProfLocalLimiters.[Captions], #ProfLocalLimiters.[SeqNo]) SELECT ifs.ScreenID, 'LO' + convert(varchar,a.ColNo) as LimiterID, 'CHECK_BOX' as ControlType, a.DefValue, a.Show, (CASE b.Exclude WHEN 1 THEN N'EX ' ELSE N'LO ' END) + convert(nvarchar(10),b.CustID) + N'.' + b.ColID as SearchString, CASE b.Exclude WHEN 1 THEN 'AND' ELSE 'OR' END as OpCode, CASE @exist WHEN 1 THEN dbo.EAIF_GetLocalLimiterCaptions_76( @ProfNo, a.IntfScreenNo, a.ColNo ) ELSE N'' + b.ColName + N' ' END as Captions, a.SeqNo FROM [dbo].[ProfLocalLimiter2] a INNER JOIN [dbo].[Collection] b ON a.ColNo=b.ColNo INNER JOIN [dbo].[InterfaceScreen] ifs WITH (NOLOCK) ON a.IntfScreenNo=ifs.IntfScreenNo WHERE a.ProfNo = @ProfNo AND b.IsDeleted = 0 --ORDER BY ifs.ScreenID,a.SeqNo SELECT @MaxSeqNo=MAX(#ProfLocalLimiters.[SeqNo]) FROM #ProfLocalLimiters INSERT #ProfLocalLimiters (#ProfLocalLimiters.[ScreenID], #ProfLocalLimiters.[LimiterID], #ProfLocalLimiters.[ControlType], #ProfLocalLimiters.[DefValue], #ProfLocalLimiters.[Show], #ProfLocalLimiters.[SearchString], #ProfLocalLimiters.[OpCode], #ProfLocalLimiters.[Captions], #ProfLocalLimiters.[SeqNo]) Select ifs.ScreenID, 'FLT'+ [cfl].[ContentFilterListID] as LimiterID, 'CHECK_BOX' as ControlType, pcf.DefValue, 0 as Show, N'LO system.flt-' + convert(nvarchar(25), [cfl].[ContentFilterListID]) as SearchString, 'AND' as OpCode, N'' + convert(nvarchar(25), cfl.ContentFilterListID) + N' ' as Captions, @MaxSeqNo+1 AS SeqNo From [dbo].[ProfContentFilters] pcf Join [dbo].[CustContentFilters] ccf ON pcf.CustContentFilterNo=ccf.CustContentFilterNo Join [dbo].[ContentFilterList] cfl ON ccf.ContentFilterNo=cfl.ContentFilterNo Join [dbo].[InterfaceScreen] ifs ON pcf.IntfScreenNo=ifs.IntfScreenNo Where pcf.ProfNo=@ProfNo SELECT * FROM #ProfLocalLimiters ORDER BY #ProfLocalLimiters.[ScreenID], #ProfLocalLimiters.[SeqNo] DROP TABLE #ProfLocalLimiters END
CREATE PROCEDURE [dbo].[BLL_GetPermanentLimiters](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN DECLARE @ProfNo int, @LangCode varchar(10) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @LangCode=[dbo].[Profile].[DefLangCode] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID SELECT distinct Tag=CASE WHEN col.Exclude=1 THEN 'EX' ELSE 'LO' END, IsNull(cap.Caption,col.ColName) as 'Caption', ISNULL([col].[ColID], 'Y') as 'Value' FROM [dbo].[ProfLocalLimiter2] plo LEFT OUTER JOIN [dbo].[ProfLocalLimiterCaption2] cap ON plo.ProfNo=cap.ProfNo AND plo.ColNo=cap.ColNo and cap.LangCode=@LangCode INNER JOIN [dbo].[Collection] col ON plo.ColNo=col.ColNo WHERE plo.ProfNo=@ProfNo AND plo.DefValue='On' and plo.Show=0 and col.IsDeleted = 0 END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceScreenName_76](@IntfScreenNo AS int)AS BEGIN SELECT [dbo].[InterfaceScreen].[Description] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@IntfScreenNo END
CREATE PROCEDURE [dbo].[EATL_GetDbVersionsByLabel_70] ( @DbLabel varchar(10) ) AS BEGIN IF @DbLabel != 'all' BEGIN SELECT [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbType] =1 AND [dbo].[DbList].[DbLabel] = @DbLabel UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbLimiter] dl ON db.DbVerNo = dl.DbVerNo WHERE db.DbType = 4 AND db.DbLabel = @DbLabel UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbParamXmlValues] dx ON db.DbVerNo = dx.DbVerNo INNER JOIN [dbo].[DbParamList] dp ON dp.ParamNo = dx.ParamNo WHERE db.DbType = 4 AND db.DbLabel = @DbLabel AND dp.ParamName = 'dbDocType' UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbParamXmlValues] dx ON db.DbVerNo = dx.DbVerNo INNER JOIN [dbo].[DbParamList] dp ON dp.ParamNo = dx.ParamNo WHERE db.DbType = 7 AND db.DbLabel = @DbLabel AND dp.ParamName = 'authorityFilters' UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbParamScalarValues] dx ON db.DbVerNo = dx.DbVerNo INNER JOIN [dbo].[DbParamList] dp ON dp.ParamNo = dx.ParamNo WHERE (db.DbType = 4 or db.DbType = 2 or db.DbType = 7) AND db.DbLabel = @DbLabel AND dp.ParamName = 'toolbarLinkText' END ELSE BEGIN SELECT [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DbName], [dbo].[DbList].[DbLabel] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbType] = 1 AND [dbo].[DbList].[DbLabel] IN ('live','rebuild','rebuildqc','liveqc') UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbLimiter] dl ON db.DbVerNo = dl.DbVerNo WHERE db.DbType = 4 AND db.DbLabel IN('live', 'rebuild', 'rebuildqc', 'liveqc') UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbParamXmlValues] dx ON db.DbVerNo = dx.DbVerNo INNER JOIN [dbo].[DbParamList] dp ON dp.ParamNo = dx.ParamNo WHERE db.DbType = 4 AND db.DbLabel IN('live', 'rebuild', 'rebuildqc', 'liveqc') AND dp.ParamName = 'dbDocType' UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbParamXmlValues] dx ON db.DbVerNo = dx.DbVerNo INNER JOIN [dbo].[DbParamList] dp ON dp.ParamNo = dx.ParamNo WHERE db.DbType = 7 AND db.DbLabel IN('live', 'rebuild', 'rebuildqc', 'liveqc') AND dp.ParamName = 'authorityFilters' UNION SELECT db.DbVerNo, db.DbName, db.DbLabel FROM [dbo].[DbList] db INNER JOIN [dbo].[DbParamScalarValues] dx ON db.DbVerNo = dx.DbVerNo INNER JOIN [dbo].[DbParamList] dp ON dp.ParamNo = dx.ParamNo WHERE (db.DbType = 4 or db.DbType = 2 or db.DbType = 7) AND db.DbLabel IN ('live','rebuild','rebuildqc','liveqc') AND dp.ParamName = 'toolbarLinkText' END END
CREATE PROCEDURE [dbo].[EPCS_GetApplicationServers_70](@AppID varchar(20), @ServerType char(1)='A') AS BEGIN DECLARE @AppNo int SELECT @AppNo = [dbo].[ConfigApplication].[ApplicationNo] from [dbo].[ConfigApplication] Where [dbo].[ConfigApplication].[ApplicationID]=@AppID SELECT [dbo].[ConfigServer].[ServerURI] FROM [dbo].[ConfigServer] WHERE [dbo].[ConfigServer].[ApplicationNo] = @AppNo AND [dbo].[ConfigServer].[ServerStatus]='A' AND (@ServerType ='A' OR [dbo].[ConfigServer].[ServerType] = @ServerType) -- All Servers or specified type END
--sql content merged from file: \Functions\EAIF_GetSourceNameList_97.sql Create Function dbo.EAIF_GetSourceNameList_97 (@SourceTypeList varchar(10)) returns varchar(max) as Begin Declare @SourceNameList varchar(max) Declare @SourceName varchar(50) set @SourceNameList='' Select @SourceNameList=@SourceNameList + [pos].[SourceName] + '
' from [dbo].[EAIF_GetItemTable_70](@SourceTypeList,';') i join EASUPPORT.dbo.ProductOfferingSource pos on i.Item=pos.SourceType set @SourceNameList=Substring(@SourceNameList, 1, len(@SourceNameList)-5) return @SourceNameList End
CREATE PROCEDURE [dbo].[EAUI_GetDisciplinesList_131](@LangCode VARCHAR(10)) AS BEGIN SELECT dl.DisciplineNo, [dl].[DisciplineCode], ISNULL(dc.Caption, '') AS Caption, [dl].[SelDefault], [dl].[Show] FROM [dbo].[DisciplineList] dl LEFT OUTER JOIN [dbo].[DisciplineCaption] dc on dl.DisciplineNo = dc.DisciplineNo AND dc.LangCode = @LangCode ORDER BY ISNULL(dc.Caption, dl.DisciplineCode) END
CREATE Procedure [dbo].[EAIP_PromoteMultiDbAuthoritiesForAuthority_90](@OldDbVerNo int, @NewDbVerNo int) AS BEGIN TRANSACTION DELETE FROM [dbo].[DBMultiDbAuthList] WHERE [dbo].[DBMultiDbAuthList].[DbVerNo] = @NewDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END Insert [dbo].[DBMultiDbAuthList] select [dbo].[DBMultiDbAuthList].[MultiDbAuthID], @NewDbVerNo from [dbo].[DBMultiDbAuthList] where [dbo].[DBMultiDbAuthList].[DbVerNo]=@OldDbVerNo IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION
CREATE PROCEDURE [dbo].[EAUI_UpdateLimiterDefaults_70](@UserID varchar(20), @UserIP nvarchar(15), @LimiterNo int, @ControlDefault int, @BitFlag1 int, @BitFlag2 int, @BitFlag3 int, @BitFlag4 int, @InterfaceId varchar(10), @Version varchar(10), @MarketId varchar(20) ) AS BEGIN DECLARE @LimiterId varchar(50) SELECT @LimiterId=[dbo].[LimiterList].[LimiterId]+'/'+CONVERT(varchar,@LimiterNo) FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterNo] = @LimiterNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Limiter', 'Update Limiter Defaults', @LimiterId, @InterfaceId, @Version, @MarketId IF EXISTS (SELECT 1 FROM [dbo].[LimiterDefaults] WHERE [dbo].[LimiterDefaults].[LimiterNo]=@LimiterNo AND [dbo].[LimiterDefaults].[InterfaceID]=@InterfaceId AND [dbo].[LimiterDefaults].[Version]=@Version AND [dbo].[LimiterDefaults].[MarketID]=@MarketId ) BEGIN UPDATE [dbo].[LimiterDefaults] SET [dbo].[LimiterDefaults].[ControlDefault] = @ControlDefault, [dbo].[LimiterDefaults].[BitFlag1] = @BitFlag1, [dbo].[LimiterDefaults].[BitFlag2] = @BitFlag2, [dbo].[LimiterDefaults].[BitFlag3] = @BitFlag3, [dbo].[LimiterDefaults].[BitFlag4] = @BitFlag4 WHERE [dbo].[LimiterDefaults].[LimiterNo] = @LimiterNo AND [dbo].[LimiterDefaults].[InterfaceID] = @InterfaceId AND [dbo].[LimiterDefaults].[Version] = @Version AND [dbo].[LimiterDefaults].[MarketID] = @MarketId IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN INSERT INTO [dbo].[LimiterDefaults] ([dbo].[LimiterDefaults].[LimiterNo],[dbo].[LimiterDefaults].[InterfaceID],[dbo].[LimiterDefaults].[Version],[dbo].[LimiterDefaults].[MarketID],[dbo].[LimiterDefaults].[ForceCommon],[dbo].[LimiterDefaults].[ControlDefault],[dbo].[LimiterDefaults].[BitFlag1],[dbo].[LimiterDefaults].[BitFlag2],[dbo].[LimiterDefaults].[BitFlag3],[dbo].[LimiterDefaults].[BitFlag4],[dbo].[LimiterDefaults].[BitFlag5],[dbo].[LimiterDefaults].[BitFlag6]) VALUES (@LimiterNo,@InterfaceId,@Version,@MarketId,0,@ControlDefault,@BitFlag1,@BitFlag2,@BitFlag3,@BitFlag4,0,0) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END END
CREATE FUNCTION [dbo].[EAIF_InterfaceKnownSearchItemLangAndLabels_103](@KnownSearchItemNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Labels nvarchar(max) DECLARE @Langs varchar(max) SET @Labels=N'' SET @Langs='' SELECT @Labels=@Labels+N'|'+[dbo].[InterfaceKnownSearchItemCaption].[Label], @Langs=@Langs+'|'+[dbo].[InterfaceKnownSearchItemCaption].[LangCode] FROM [dbo].[InterfaceKnownSearchItemCaption] WHERE [dbo].[InterfaceKnownSearchItemCaption].[KnownSearchItemNo] =@KnownSearchItemNo IF LEN(@Labels)>1 SET @Labels=SUBSTRING(@Labels, 2, LEN(@Labels)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) -- note: use different delimiter character than used above, in case one of the values is empty -- convert @Langs to NVARCHAR before concatenating RETURN @Labels+'^^^'+CONVERT(NVARCHAR(MAX), @Langs) END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerOwnedCollectionList_70](@CustID varchar(10))AS BEGIN SELECT cl.ColNo, cl.ColName FROM [dbo].[Collection] cl WHERE cl.CustID = @CustID AND cl.Hidden = 0 AND ISNULL(cl.SharedFrom,0) = 0 AND cl.IsDeleted = 0 ORDER BY [cl].[ColName] END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceScreenLimiterGroup_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ScreenID VARCHAR(10), @GroupNo INT ) AS BEGIN DECLARE @IntfScreenNo INT, @GroupCount INT IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16, -1, @InterfaceID, @Version) RETURN END IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID AND [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version] = @Version) BEGIN RAISERROR('The ScreenID:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16, -1, @ScreenID, @InterfaceID, @Version) RETURN END SELECT @IntfScreenNo = [dbo].[InterfaceScreen].[IntfScreenNo] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[ScreenID] = @ScreenID AND [dbo].[InterfaceScreen].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceScreen].[Version] = @Version IF NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo] = @GroupNo) BEGIN RAISERROR('The Limiter Group "%i" does not exist.', 16, -1, @GroupNo) RETURN END SELECT @GroupCount = COUNT([dbo].[InterfaceLimiterGroup].[GroupNo]) FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @intfScreenNo IF (@GroupCount = 1) BEGIN UPDATE [dbo].[DbInterfaceLimiter] SET [dbo].[DbInterfaceLimiter].[GroupNo] = NULL WHERE [dbo].[DbInterfaceLimiter].[IntfScreenNo] = @IntfScreenNo END ELSE BEGIN DELETE FROM [dbo].[DbInterfaceLimiter] WHERE [dbo].[DbInterfaceLimiter].[IntfScreenNo] = @IntfScreenNo AND [dbo].[DbInterfaceLimiter].[GroupNo] = @GroupNo END DELETE FROM [dbo].[InterfaceLimiterGroup] WHERE [dbo].[InterfaceLimiterGroup].[IntfScreenNo] = @IntfScreenNo AND [dbo].[InterfaceLimiterGroup].[GroupNo] = @GroupNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Limiter Group', 'Delete Limiter Group', @IntfScreenNo, @GroupNo END
CREATE PROCEDURE [dbo].[EAIP_GetGroupList_80] AS /** procedure is used by EACopy **/ BEGIN SELECT gl.GroupID, gl.GroupNotes, dbo.EAIF_GroupLangAndCaptions_80(gl.GroupNo)as Captions, ISNULL(dbo.EAIF_GroupLangAndMouseOverTexts_80(gl.GroupNo),'') as MouseOverTexts FROM [dbo].[GroupList] gl INNER JOIN [dbo].[GroupCaption] gc ON gl.GroupNo=gc.GroupNo WHERE gc.LangCode='en' END
CREATE PROCEDURE [dbo].[EAUI_ReorderInterfaceSearchThemes_83](@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10),@Version varchar(10), @SearchThemeList varchar(8000), @SeqNoList varchar(8000))AS BEGIN IF LEN(@SearchThemeList)=0 OR LEN(@SeqNoList)=0 RETURN BEGIN TRANSACTION UPDATE [dbo].[InterfaceSearchTheme] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[InterfaceSearchTheme] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@SearchThemeList, @SeqNoList,'+') b ON a.ThemeID= b.Item WHERE a.InterfaceID = @InterfaceID AND a.Version = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceSearchTheme','Reorder Interface Search Themes', @InterfaceID,@Version,@SearchThemeList COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_DocTypeUsageAsBrowseOption_77](@DocTypeID varchar(10),@DbVerNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Usage nvarchar(max) SET @Usage=N'' DECLARE @Table TABLE (Item nvarchar(255)) INSERT INTO @Table SELECT distinct il.InterfaceName +N'('+il.InterfaceID+N'-'+il.Version+N')' FROM [dbo].[DbInterfaceBrowseOption] ibo INNER JOIN [dbo].[DbBrowseOption] dbo ON dbo.BrowseOptionNo = ibo.BrowseOptionNo INNER JOIN [dbo].[InterfaceScreen] ins ON ibo.IntfScreenNo = ins.IntfScreenNo INNER JOIN [dbo].[InterfaceLanguage] il ON ins.InterfaceID = il.InterfaceID AND ins.Version = il.Version WHERE dbo.DbVerNo = @DbVerNo AND dbo.SourceType =@DocTypeID AND il.LangCode = 'en' SELECT @Usage=@Usage+Item+N'
' FROM @Table IF LEN(@Usage)>4 SET @Usage=SUBSTRING(@Usage,1,LEN(@Usage)-4) RETURN @Usage END
CREATE PROCEDURE [dbo].[EAUI_DeleteGlobalDbSearchTags_82](@UserID nvarchar(20), @UserIP varchar(15),@Tag varchar(10)) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[GlobalSearchTags] WHERE [dbo].[GlobalSearchTags].[Tag]=@Tag IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'GlobalDbSearchTags','Delete Tag', @Tag COMMIT TRANSACTION END
/* ================================================================================================ Developer: Anne Wan Create date: 4/22/2008 Description: Spring 2008 Subscription Deletion Auto-detect->Delete Archived subscriptions in EASUPPORT.dbo.Archive_SubCustProfInfo & EASUPPORT.dbo.Archive_SubPrdInfo Update history: 9/23/2008 AW Issue 6289 Grace Period should be a whole number ranging from 0-90 in deletion log table 9/24/2008 AW Issue 6321 table constraints need distinct sys obj name exec EAIP_DeleteArchiveProfDatabase_90 ===================================================================================================*/ CREATE PROCEDURE [dbo].[EAIP_DeleteArchiveProfDatabase_90] AS BEGIN set nocount on /*Get wait days set up by DBA for ProfDatabase delete*/ declare @dysBeforeDeleteSub int set @dysBeforeDeleteSub = (select top 1 cast([dbo].[AdminState].[ParamValue] as int) from dbo.AdminState where [dbo].[AdminState].[ParamName] = 'dysBeforeDeleteSub') declare @sql varchar(8000) /*Check if destination deletion log tables exist*/ set @sql = ' USE [EASUPPORT] IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''[dbo].[SubPrdDeletionLog_' + cast(year(getdate()) as varchar) + ']'') AND type in (N''U'')) CREATE TABLE [dbo].[SubPrdDeletionLog_' + cast(year(getdate()) as varchar) + ']( [ProductID] [varchar](10) NOT NULL, [PrdOffNo] [int] NOT NULL, [PrdOffName] [varchar](100) NOT NULL, [ProductType] [char](1) NOT NULL, [GracePeriod] [varchar](5) NULL, CONSTRAINT [PK_SubPrdDeletionLog_' + cast(year(getdate()) as varchar) + '] PRIMARY KEY CLUSTERED ( [ProductID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''[dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'') AND type in (N''U'')) CREATE TABLE [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']( [DeleteSubID] [int] IDENTITY(1,1) NOT NULL, [ProductID] [varchar](10) NOT NULL, [SubscriberID] [varchar](10) NOT NULL, [CustID] [varchar](10) NOT NULL, [GroupID] [varchar](10) NOT NULL, [ProfID] [varchar](10) NOT NULL, [Mode] [char](1) NOT NULL, [SubStartDate] [datetime] NULL, [SubEndDate] [datetime] NOT NULL, [RefNumber] [varchar](20) NULL, [DeleteDate] [datetime] NOT NULL, CONSTRAINT [PK_SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] PRIMARY KEY CLUSTERED ( [DeleteSubID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] IF NOT EXISTS (SELECT * FROM sys.check_constraints WHERE object_id = OBJECT_ID(N''[dbo].[CK_SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'') AND parent_object_id = OBJECT_ID(N''[dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'')) ALTER TABLE [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] WITH CHECK ADD CONSTRAINT [CK_SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] CHECK (([DeleteDate]>=''1/1/' + cast(year(getdate()) as varchar) + ''' AND [DeleteDate]<=''12/31/' + cast(year(getdate()) as varchar) + ''')) ALTER TABLE [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] CHECK CONSTRAINT [CK_SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N''[dbo].[FK_Deletion_ProductID_' + cast(year(getdate()) as varchar) + ']'') AND parent_object_id = OBJECT_ID(N''[dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'')) ALTER TABLE [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] WITH NOCHECK ADD CONSTRAINT [FK_Deletion_ProductID_' + cast(year(getdate()) as varchar) + '] FOREIGN KEY([DeleteSubID]) REFERENCES [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] ([DeleteSubID]) NOT FOR REPLICATION IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N''[dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'') AND name = N''IDX_CustID_' + cast(year(getdate()) as varchar) + ''') CREATE NONCLUSTERED INDEX [IDX_CustID_' + cast(year(getdate()) as varchar) + '] ON [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] ( [CustID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N''[dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'') AND name = N''IDX_ProductID_' + cast(year(getdate()) as varchar) + ''') CREATE NONCLUSTERED INDEX [IDX_ProductID_' + cast(year(getdate()) as varchar) + '] ON [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] ( [ProductID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N''[dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ']'') AND name = N''IDX_SubEndDate_' + cast(year(getdate()) as varchar) + ''') CREATE NONCLUSTERED INDEX [IDX_SubEndDate_' + cast(year(getdate()) as varchar) + '] ON [dbo].[SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + '] ( [SubEndDate] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] grant select on object :: SubPrdDeletionLog_' + cast(year(getdate()) as varchar) + ' to eadmin grant select on object :: SubCustProfDeletionLog_' + cast(year(getdate()) as varchar) + ' to eadmin' exec (@sql) IF @@ERROR = 0 BEGIN /*Get all Subscriptions to be deleted on system date*/ create table #tmp_ArchiveSubCustProfPrd ( ArchiveSubID int, ProductID varchar(10), SubscriberID varchar(10), CustID varchar(10), GroupID varchar(10), ProfID varchar(10), Mode char(1), SubStartDate datetime, SubEndDate datetime, RefNumber varchar(20), PrdOffNo int, PrdOffName varchar(100), ProductType char(1), GracePeriod varchar(5) ) INSERT INTO #tmp_ArchiveSubCustProfPrd SELECT TOP 1000 CUST.ArchiveSubID, PRD.ProductID, CUST.SubscriberID, CUST.CustID, CUST.GroupID, CUST.ProfID, CUST.Mode, CUST.SubStartDate, CUST.SubEndDate, CUST.RefNumber, PRD.PrdOffNo, PRD.PrdOffName, PRD.ProductType, CASE WHEN PRD.GracePeriod IS NULL THEN 90 ELSE PRD.GracePeriod END FROM EASUPPORT.dbo.Archive_SubCustProfInfo CUST JOIN EASUPPORT.dbo.Archive_SubPrdInfo PRD ON CUST.ProductID = PRD.ProductID WHERE DATEDIFF(dd, DATEADD(dd, @dysBeforeDeleteSub, CUST.ArchiveDate), GETDATE()) >= 0 DECLARE @RowsToProcess INT SET @RowsToProcess = (SELECT COUNT(#tmp_ArchiveSubCustProfPrd.[ArchiveSubID]) FROM #tmp_ArchiveSubCustProfPrd) PRINT 'There are ' + CAST(@RowsToProcess AS VARCHAR) + ' profile db rows to delete at this running.' IF @RowsToProcess > 0 BEGIN /*Insert ProductID ONLY when it doesn't exist in dbo.SubPrdDeletionLog*/ SET @sql = 'insert into EASUPPORT.dbo.SubPrdDeletionLog_' + CAST(YEAR(GETDATE()) AS VARCHAR) + '(ProductID, PrdOffNo, PrdOffName, ProductType, GracePeriod) select distinct ProductID, PrdOffNo, PrdOffName, ProductType, GracePeriod from #tmp_ArchiveSubCustProfPrd where ProductID not in (select distinct ProductID from EASUPPORT.dbo.SubPrdDeletionLog_' + CAST(YEAR(GETDATE()) AS VARCHAR) + ')' EXEC (@sql) SET @sql = 'insert into EASUPPORT.dbo.SubCustProfDeletionLog_' + CAST(YEAR(GETDATE()) AS VARCHAR) + '(ProductID, SubscriberID, CustID, GroupID, ProfID, Mode, SubStartDate, SubEndDate, RefNumber, DeleteDate) select distinct ProductID, SubscriberID, CustID, GroupID, ProfID, Mode, SubStartDate, SubEndDate, RefNumber, getdate() from #tmp_ArchiveSubCustProfPrd' EXEC (@sql) /*clean out archived subscriptions from dbo.Archive_SubCustProfInfo*/ DELETE EASUPPORT.dbo.Archive_SubCustProfInfo FROM EASUPPORT.dbo.Archive_SubCustProfInfo AS ARCC INNER JOIN #tmp_ArchiveSubCustProfPrd AS TMP ON ARCC.ArchiveSubID = TMP.ArchiveSubID /*delete ArchivePrdID from dbo.Archive_SubPrdInfo ONLY when ArchivePrdID NOT found in parent table dbo.Archive_SubCustProfInfo*/ delete EASUPPORT.dbo.Archive_SubPrdInfo from EASUPPORT.dbo.Archive_SubPrdInfo AS ARCP INNER JOIN #tmp_ArchiveSubCustProfPrd AS TMP ON ARCP.ProductID = TMP.ProductID WHERE ARCP.ProductID not in (select distinct [EASUPPORT].[dbo].[Archive_SubCustProfInfo].[ProductID] from EASUPPORT.dbo.Archive_SubCustProfInfo) end drop table #tmp_ArchiveSubCustProfPrd end set nocount off end
CREATE PROCEDURE [dbo].[EAUI_GetProfileEditParamCount_70](@ProfNo int) AS BEGIN SELECT e.EditGroup, CASE WHEN g.EditGroup IS NULL THEN 0 ELSE 1 END As ParamCount FROM ( Select distinct [dbo].[CustomParamEditDetail].[EditGroup] FROM [dbo].[CustomParamEditDetail] WHERE [dbo].[CustomParamEditDetail].[EditGroup] IN ('Searching','Results','Delivery','Linking','Languages','Branding','Display','PubBrowse', 'ILSIntegration')) e LEFT OUTER JOIN (SELECT distinct [c].[EditGroup] FROM dbo.Profile AS a INNER JOIN dbo.InterfaceParamList AS b ON a.InterfaceID=b.InterfaceID AND a.Version=b.Version INNER JOIN dbo.CustomParamEditDetail AS c ON b.ParamNo=c.ParamNo Where a.ProfNo = @ProfNo ) g ON e.EditGroup=g.EditGroup END
CREATE PROCEDURE [dbo].[EAUI_AddInterfaceVersion_70](@UserID nvarchar(20), @UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @SiteID varchar(10), @SiteURL varchar(255), @PassingMode varchar(10), @InterfaceName nvarchar(100), @DefProfID varchar(10), @NewWin bit =0) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[DefProfID]=@DefProfID) BEGIN RAISERROR('The default profile ID %s already exists',16,-1,@DefProfID) RETURN END EXEC [dbo].[EAIP_AddInterfaceVersion_70] @InterfaceID, @Version , @SiteID, @SiteURL, @PassingMode, @InterfaceName,@DefProfID, @NewWin EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces','Add New Version', @InterfaceID,@Version,@SiteID, @SiteURL,@PassingMode END
CREATE PROCEDURE [dbo].[EPCS_GetProfOtherServiceLinks_86]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN DECLARE @profNumIn int SELECT @profNumIn = dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) SELECT [dbo].[ProfOtherServiceLinks].[LinkNo], ISNULL([dbo].[ProfOtherServiceLinks].[LinkURL],N'') LinkURL, ISNULL([dbo].[ProfOtherServiceLinks].[LinkIcon],N'') LinkIcon, ISNULL([dbo].[ProfOtherServiceLinks].[LinkCaption], N'') LinkText, ISNULL([dbo].[ProfOtherServiceLinks].[SeqNo], 0) SeqNo, Replace(dbo.EAIF_GetProfDottedName_70(ISNULL([dbo].[ProfOtherServiceLinks].[TargetProfNo], 0)), 'Uknown', '') EhostProfile, ISNULL(dbo.EAIF_GetInterfaceIDbyProfile_86([dbo].[ProfOtherServiceLinks].[TargetProfNo]), '') as InterfaceID, ISNULL([dbo].[ProfOtherServiceLinks].[ContextSearchURL],N'') ContextSearchURL FROM [dbo].[ProfOtherServiceLinks] WHERE [dbo].[ProfOtherServiceLinks].[ProfNo] = @profNumIn --dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) Order By SeqNo END
CREATE PROCEDURE [dbo].[BLL_GetPrfILSlinks](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ProfNo int SELECT @ProfNo=[dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID DECLARE @profCustomLinksNo int, @customerCustomLinkNo int SET @profCustomLinksNo=dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') DECLARE @ItemNameTable table(ItemIndex int identity(1,1) PRIMARY KEY, ItemName varchar(255)) INSERT INTO @ItemNameTable (ItemName) SELECT [b].[ItemName] FROM [dbo].[CustomParamXmlValues] b WHERE [b].[ParamNo]=@profCustomLinksNo AND [b].[TargetNo]=@ProfNo AND [b].[ParamLevel]='P' ORDER BY [b].[SeqNo] DECLARE @ItemCount int, @ItemIndex int SELECT @ItemCount=Max(ItemIndex) FROM @ItemNameTable IF @ItemCount=0 RETURN SET @customerCustomLinkNo=dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int DECLARE @PrfIlsLinkTable table(URLMask varchar(4096), ReqFields varchar(255), URLParams varchar(2048), LinkText varchar(max), LinkIcon varchar(255), MouseOverText varchar(max), WindowName varchar(100), NewWindow bit, ShowOnResultList bit, HideIfFullText bit, ShowIfLocal int, FilterColID varchar(50), ShowOnPublList bit, showOnDetailDisp bit, showOnLinkSource bit) SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @xmlText=ParamValue FROM [dbo].[CustomParamXmlValues] a INNER JOIN @ItemNameTable b ON a.ItemName=b.ItemName WHERE a.ParamLevel='C' AND a.ParamNo=@customerCustomLinkNo AND b.ItemIndex=@ItemIndex --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText -- Execute a SELECT statement that uses the OPENXML rowset provider. INSERT INTO @PrfIlsLinkTable SELECT b.baseURL + CASE ISNULL(b.queryString,'') WHEN '' THEN '' ELSE '?'+b.queryString END as 'URLMask', b.reqFields, b.windowParams as 'URLParams', b.linkText, b.linkIcon as 'LinkIcon', b.mouseOverText, b.windowName as 'WindowName', NewWindow=CASE b.newWindow WHEN 'y' THEN 1 ELSE 0 END, ShowOnResultList=CASE b.showOnResultList WHEN 'y' THEN 1 ELSE 0 END, HideIfFullText=CASE b.hideIfFullText WHEN 'y' THEN 1 ELSE 0 END, ShowIfLocal=CASE b.showIfLocal WHEN 'in' THEN 0 WHEN 'not' THEN 1 ELSE 2 END, b.colCustID + '.' + b.colID as 'FilterColID', ShowOnPublList=CASE b.showOnPublicationList WHEN 'y' THEN 1 ELSE 0 END, showOnDetailDisp=CASE b.showOnDetailDisplay WHEN 'y' THEN 1 ELSE 0 END, showOnLinkSource=CASE b.showOnLinkSource WHEN 'y' THEN 1 ELSE 0 END FROM OPENXML (@xmlDocHandle, '/customerCustomLink',2) WITH (baseURL varchar(2048) '@baseURL', reqFields varchar(max) '@reqFields', queryString varchar(2048) '@queryString', windowParams varchar(2048) '@windowParams', linkText varchar(max) 'linkText[@lang="en"]', linkIcon varchar(255) '@linkIcon', mouseOverText varchar(max) 'mouseOverText[@lang="en"]', windowName varchar(100) '@windowName', newWindow char(1) '@newWindow', showOnResultList char(1) '@showOnResultList', hideIfFullText char(1) '@hideIfFullText', showIfLocal varchar(10) '@showIfLocal', colID varchar(50) 'filterCollection/@colID', colCustID varchar(10) 'filterCollection/@custID', showOnPublicationList char(1) '@showOnPublicationList', showOnDetailDisplay char(1) '@showOnDetailDisplay', showOnLinkSource char(1) '@showOnLinkSource' ) b EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END SELECT * FROM @PrfIlsLinkTable END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceSearchThemeDetails_83](@InterfaceID varchar(10),@Version varchar(10), @SearchThemeID varchar(20), @Langcode varchar(10))AS BEGIN SET NOCOUNT ON SELECT st.ThemeID, i.InterfaceFeatureNo, ISNULL(ISNULL(ic.Caption,sc.Caption),N'') AS Caption, ISNULL(ic.ImageAltText,sc.ImageAltText) AS ImageAltText, ISNULL(ISNULL(ic.Description,sc.Description),N'') AS Description, SearchString = CASE WHEN Len(ISNULL(i.SearchString, '')) > 0 THEN i.SearchString WHEN Len(ISNULL(i.SearchString, '')) = 0 THEN ISNULL(st.SearchString, '') ELSE '' END, Image = CASE WHEN Len(ISNULL(i.Image, '')) > 0 THEN i.Image WHEN Len(ISNULL(i.Image, '')) = 0 THEN ISNULL(st.Image, '') ELSE '' END, CustomAttributes = CASE WHEN i.CustomAttributes IS NOT NULL THEN i.CustomAttributes WHEN i.CustomAttributes IS NULL THEN ISNULL(st.CustomAttributes, '') ELSE '' END, st.ThemeID AS ChildThemeID, ISNULL(st.ParentThemeID,'') ParentThemeID, ISNULL(ifl.FeatureName, '') FeatureName, ISNULL(i.Show, '1') Show FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.ThemeID=sc.ThemeID AND sc.LangCode=@Langcode LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) ON st.ThemeID=i.ThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic WITH (NOLOCK) ON i.InterfaceThemeNo=ic.InterfaceThemeNo AND ic.LangCode=@Langcode LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl WITH (NOLOCK) ON i.InterfaceFeatureNo=ifl.InterfaceFeatureNo WHERE ISNULL(st.ThemeID, '')=@SearchThemeID END
CREATE PROCEDURE [dbo].[EATL_GetDocTypes_77] (@LangCode varchar(10))AS BEGIN SELECT dtl.DocTypeID, dtc.Caption, dtc.MouseOverText FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo WHERE dtc.LangCode = @LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetAZCollectionInfo_2020] ( @RootEPAZCustomerID varchar(10), @ColID varchar(50), @ColNo int output, @OldColName varchar(100) output, @OldAutoRecreate bit output, @YesMsgNo int output, @NoMsgNo int output ) AS BEGIN DECLARE @MsgTemp varchar(100) SET @ColNo=null SET @OldColName=null SET @OldAutoRecreate=null SELECT @ColNo=ColNo, @OldColName=ColName, @OldAutoRecreate=AutoRecreate FROM Collection WITH(NOLOCK) WHERE CustID=@RootEPAZCustomerID AND ColID=@ColID SET @YesMsgNo=null SET @MsgTemp='This title is available through AtoZ' -- FYI: this hardcoded string also appears within EAIPO_PrepareAZCollection_97 SELECT @YesMsgNo=YesMsgNo FROM YesMessage WITH(NOLOCK) WHERE CustID=@RootEPAZCustomerID AND MsgTextChecksum=CHECKSUM(@MsgTemp) AND MsgText=@MsgTemp SET @NoMsgNo=null SET @MsgTemp='' -- FYI: this hardcoded string also appears within EAIPO_PrepareAZCollection_97 SELECT @NoMsgNo=NoMsgNo FROM NoMessage WITH(NOLOCK) WHERE CustID=@RootEPAZCustomerID AND MsgTextChecksum=CHECKSUM(@MsgTemp) AND MsgText=@MsgTemp RETURN END
CREATE FUNCTION [dbo].[EAIF_IsAnyAuthorityDatabase_86](@ShortDbsList varchar(8000), @Version varchar(10)='live') RETURNS Bit AS BEGIN IF EXISTS(SELECT 1 FROM dbo.EAIF_GetItemTable_70(@ShortDbsList, ',') t INNER JOIN [dbo].[DbList] l ON t.Item = l.DbName INNER JOIN [dbo].[DbAuthority] a ON l.DbVerNo = a.AuthDbVerNo WHERE l.DbLabel = @Version) RETURN 1 RETURN 0 END
CREATE PROCEDURE [dbo].[EAUI_GetDisciplinesWithSingleDisciplineDatabaseList_131] AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN SELECT dl.DisciplineNo , [dl].[DisciplineCode] , [dc].[Caption] , dbo.EAIF_GetSingleDatabasesForDiscipline_131(dl.DisciplineNo) AS SingleDisciplineDatabases FROM [dbo].[DisciplineList] dl JOIN [dbo].[DisciplineCaption] dc ON dl.DisciplineNo = dc.DisciplineNo AND dc.LangCode = 'en' ORDER BY [dc].[Caption] END END
CREATE Procedure [dbo].[EAIP_PromoteMultiDbAuthoritiesForRegularDb_161](@NewDbLabel varchar(10), @PromoteForMainDb bit, @PromoteForAuthorities bit, @PromoteForSubsetDbs bit) AS Begin Begin Try BEGIN TRANSACTION DELETE dbmdbal FROM [dbo].[DbList] dbl Join [dbo].[DBMultiDbAuthList] dbmdbal on dbl.DbVerNo=dbmdbal.DbVerNo join [dbo].[DbAuthority] dba on dbmdbal.DbVerNo=dba.AuthDbVerNo join #TempDbListTable t on dba.MainDbVerNo=t.UpperDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) Where dbl.DbType=1 INSERT [dbo].[DBMultiDbAuthList] SELECT dbmdbal.MultiDbAuthID, dbl2.DbVerNo FROM [dbo].[DbList] dbl Join [dbo].[DBMultiDbAuthList] dbmdbal on dbl.DbVerNo=dbmdbal.DbVerNo Join [dbo].[DbAuthority] dba on dbmdbal.DbVerNo=dba.AuthDbVerNo JOIN #TempDbListTable t ON dba.MainDbVerNo=t.LowerDbVerNo and ((t.MainDb=1 and @PromoteForMainDb=1) or (t.Authority=1 and @PromoteForAuthorities=1) or (t.Subset=1 and @PromoteForSubsetDbs=1)) join [dbo].[DbList] dbl1 on dba.AuthDbVerNo=dbl1.DbVerNo join [dbo].[DbList] dbl2 on dbl1.DbName = dbl2.DbName AND dbl2.DbLabel = @NewDbLabel Where dbl.DbType=1 COMMIT TRANSACTION End Try BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH End
CREATE PROCEDURE [dbo].[EAUI_UpdateLocalTitle_70] ( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ColNo int, @TitleNo int, @Subscribe bit, @YesMsgText nvarchar(MAX), @YesMsgAll bit, @NoMsgText nvarchar(MAX), @NoMsgAll bit, @Notes nvarchar(2000), @Summary varchar (255), @CallNumber varchar(2000), @DeleteDates bit=0 ) AS BEGIN DECLARE @YesMessage int DECLARE @NoMessage int IF EXISTS (SELECT 1 from dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 1) RETURN BEGIN TRANSACTION IF @YesMsgAll = 1 BEGIN SELECT @YesMessage = [dbo].[LocalTitle].[YesMsgNo] FROM dbo.LocalTitle WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[TitleNo]=@TitleNo UPDATE dbo.YesMessage SET [dbo].[YesMessage].[MsgText]=@YesMsgText, [dbo].[YesMessage].[MsgTextChecksum]=CHECKSUM(SUBSTRING(@YesMsgText,1,7000)) WHERE [dbo].[YesMessage].[YesMsgNo]=@YesMessage END ELSE BEGIN EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID,@YesMsgText, @YesMsgNo=@YesMessage OUTPUT END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF @NoMsgAll = 1 BEGIN SELECT @NoMessage = [dbo].[LocalTitle].[NoMsgNo] FROM dbo.LocalTitle WHERE [dbo].[LocalTitle].[ColNo]=@ColNo AND [dbo].[LocalTitle].[TitleNo]=@TitleNo UPDATE dbo.NoMessage SET [dbo].[NoMessage].[MsgText]=@NoMsgText, [dbo].[NoMessage].[MsgTextChecksum]=CHECKSUM(SUBSTRING(@NoMsgText,1,7000)) WHERE [dbo].[NoMessage].[NoMsgNo]=@NoMessage END ELSE BEGIN EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID,@NoMsgText, @NoMsgNo=@NoMessage OUTPUT END IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_AddModLocalTitle_70] @ColNo, @TitleNo, @Subscribe, @YesMessage, @NoMessage, @Notes, @Summary, @CallNumber IF @DeleteDates=1 EXEC [dbo].[EAIP_DeleteLocalDates_70] @ColNo, @TitleNo DECLARE @LogColName varchar(30) DECLARE @LogTitleName nvarchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo), @LogTitleName = dbo.EAIF_GetLogTitleName_70(@TitleNo) --Update main/parent collection first then, Update all 'Shared' collections, so --that all the shared collections gets processed. UPDATE dbo.Collection SET [dbo].[Collection].[LastUpdateDate]=GETDATE() --, AutoRecreate=1 WHERE ([dbo].[Collection].[ColNo]=@ColNo OR [dbo].[Collection].[SharedFrom] = @ColNo) AND [dbo].[Collection].[IsDeleted] = 0 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Edit Local Title', @CustID, @LogColName, @LogTitleName, @YesMsgText, @NoMsgText COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_InterfaceToolbarItemCaptions_77](@IntfToolbarItem int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions=N'' SELECT @Captions = @Captions + N''+ itc.Caption +N' ' FROM [dbo].[InterfaceToolbarCaption] itc WHERE itc.IntfToolbarItem = @IntfToolbarItem RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerParamScalarValue_70] ( @CustID varchar(10), @ParamName varchar(100) ) AS BEGIN SELECT dbo.EAIF_GetCustomerParamScalarValue_70(@CustID,@ParamName) END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceToolbarItem_161] ( @UserID nvarchar(20), @UserIP varchar(30), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @ToolbarName VARCHAR(50) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @IntfToolbarItem INT=(SELECT [dbo].[InterfaceToolbar].[IntfToolbarItem] FROM [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[ItemName] = @ToolbarName AND [dbo].[InterfaceToolbar].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceToolbar].[Version] = @Version) IF @IntfToolbarItem IS NULL BEGIN RAISERROR('The ToolbarItem:''%s'' does not exist for InterfaceID: ''%s'' and Version: ''%s''.', 16,-1, @ToolbarName, @InterfaceID, @Version) RETURN END BEGIN TRANSACTION DELETE [dbo].[InterfaceToolbar] WHERE [dbo].[InterfaceToolbar].[IntfToolbarItem]=@IntfToolbarItem IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ToolbarItems','Delete ToolbarItem', @InterfaceID,@Version ,@ToolbarName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetGroupProfiles_153](@CustID VARCHAR(10), @GroupID VARCHAR(10)) AS BEGIN /* Start of Validations */ /* Validate: Customer does not exist */ IF NOT EXISTS(SELECT * FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID] = @CustID) BEGIN RAISERROR('The %s Customer does not exist.', 16,-1, @CustID) RETURN END /* Validate: Group does not exist */ IF NOT EXISTS(SELECT * FROM [dbo].[UserGroup] WHERE [dbo].[UserGroup].[CustID] = @CustID and [dbo].[UserGroup].[GroupID] = @GroupID) BEGIN RAISERROR('The %s Group does not exist.', 16,-1, @GroupID) RETURN END /* End of Validations */ SELECT a.ProfNo ,a.ProfID ,a.ProfName ,a.ProfPwd ,b.InterfaceID ,b.InterfaceName ,b.Version As InterfaceVersion ,a.DbLabel ,d.MarketID ,d.Description AS MarketDesc ,c.LangCode ,c.LangDisplayName AS LangDesc ,ISNULL(a.URL, iv.SiteURL) As URL FROM [dbo].[Profile] a INNER JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version INNER JOIN [dbo].[InterfaceVersion] iv ON a.InterfaceID = iv.InterfaceID AND a.Version = iv.Version LEFT OUTER JOIN EASUPPORT.dbo.MarketList d ON a.MarketID = d.MarketID LEFT OUTER JOIN [dbo].[InterfaceUserLangList] c ON a.InterfaceID = c.InterfaceID AND a.Version = c.Version AND a.DefLangCode = c.LangCode WHERE a.CustID = @CustID AND a.GroupID = @GroupID AND b.LangCode = 'en' ORDER BY a.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_ReorderSubTopicInterfaceAlphabetically_77](@UserID nvarchar(20), @UserIP varchar(30),@InterfaceID varchar(10), @Version varchar(10), @IntfMainTopicNo int) AS BEGIN DECLARE @ParentTopicNo int DECLARE @ParentCaption nvarchar(255) SELECT @ParentTopicNo=it.TopicNo ,@ParentCaption=tc.Caption FROM [dbo].[TopicList] tl INNER JOIN [dbo].[InterfaceTopic] it ON tl.TopicNo = it.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.IntfTopicNo = @IntfMainTopicNo AND tc.LangCode = 'en' DECLARE @TopicSeqNoTable TABLE (IntfTopicNo int, SeqNo int identity) INSERT INTO @TopicSeqNoTable(IntfTopicNo) SELECT it.IntfTopicNo FROM [dbo].[InterfaceTopic] it LEFT OUTER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo=itc.IntfTopicNo AND itc.LangCode = 'en' INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version AND tl.ParentTopicNo = @ParentTopicNo AND tc.LangCode = 'en' ORDER BY ISNULL(itc.Caption, tc.Caption)ASC BEGIN TRANSACTION UPDATE [dbo].[InterfaceTopic] SET [SeqNo] = b.SeqNo FROM [dbo].[InterfaceTopic] a INNER JOIN @TopicSeqNoTable b ON a.IntfTopicNo=b.IntfTopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Reorder Interface Sub Topic Alphabetically', @InterfaceID,@Version, @ParentCaption COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_DocTypeUsageAsSearchOption_77](@DocTypeID varchar(10),@DbVerNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Usage nvarchar(max) SET @Usage=N'' DECLARE @Table TABLE (Item nvarchar(255)) INSERT INTO @Table SELECT distinct il.InterfaceName +N'('+il.InterfaceID+N'-'+il.Version+N')' FROM [dbo].[DbInterfaceSearchOption] iso INNER JOIN [dbo].[DbSearchOption] dso ON dso.SearchOptionNo = iso.SearchOptionNo INNER JOIN [dbo].[InterfaceScreen] ins ON iso.IntfScreenNo = ins.IntfScreenNo INNER JOIN [dbo].[InterfaceLanguage] il ON ins.InterfaceID = il.InterfaceID AND ins.Version = il.Version WHERE dso.DbVerNo = @DbVerNo AND dso.SourceType =@DocTypeID AND il.LangCode = 'en' SELECT @Usage=@Usage+Item+N'
' FROM @Table IF LEN(@Usage)>4 SET @Usage=SUBSTRING(@Usage,1,LEN(@Usage)-4) RETURN @Usage END
CREATE PROCEDURE [dbo].[EAUI_DeleteGroup_80] (@UserID nvarchar(20), @UserIP varchar(30),@GroupNo int)AS BEGIN DECLARE @GroupID varchar(12) DECLARE @GroupCaption nvarchar(255) SELECT @GroupID = gl.GroupID, @GroupCaption = gc.Caption FROM dbo.GroupList gl INNER JOIN dbo.GroupCaption gc ON gl.GroupNo = gc.GroupNo WHERE gl.GroupNo = @GroupNo AND gc.LangCode = 'en' BEGIN TRANSACTION DELETE dbo.GroupList WHERE [dbo].[GroupList].[GroupNo]=@GroupNO IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID ,@UserIP,'Groups','Delete Group',@GroupID,@GroupCaption COMMIT TRANSACTION END
create procedure [dbo].[EAIP_DeleteAutoAddMDbLAutoAddScreenByLimiterNo_89] @LimiterNo int as Delete [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[LimiterNo] = @LimiterNo and [dbo].[InterfaceMDbLimiterList].[IntfScreenNo] in (Select [dbo].[InterfaceScreen].[IntfScreenNo] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[AutoAddMDbLimiter]=1)
CREATE PROCEDURE [dbo].[EAUI_GetProfileExpanders_70] ( @ProfNo int, @LangCode varchar(10) ) AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @AutoAdd bit SELECT @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @AutoAdd=[dbo].[InterfaceVersion].[AutoAddExpanders] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @AutoAdd=1 SELECT ISNULL(a.ControlShow,ISNULL(ie.ControlShow,g.ControlShow)) as ControlShow ,g.ControlName ,ISNULL(ISNULL(c.Caption,b.DefCaption),'') as Caption ,ISNULL(a.ControlDefault,ISNULL(ie.ControlDefault, g.ControlDefault)) as ControlDefault ,g.Description FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[InterfaceExpander] ie ON g.ControlName = ie.ControlName AND ie.InterfaceID=@InterfaceID AND ie.Version=@Version LEFT JOIN [dbo].[ProfExpander] a ON g.ControlName = a.ControlName AND a.ProfNo=@ProfNo LEFT JOIN [dbo].[ProfExpanderCaption] c ON a.ProfNo = c.ProfNo AND a.ControlName = c.ControlName AND c.LangCode = @LangCode LEFT JOIN [dbo].[GlobalExpanderCaption] b ON g.ControlName = b.ControlName AND b.LangCode=@LangCode ELSE SELECT ISNULL(a.ControlShow,ISNULL(ie.ControlShow,g.ControlShow)) as ControlShow ,g.ControlName ,ISNULL(ISNULL(c.Caption,b.DefCaption),'') as Caption ,ISNULL(a.ControlDefault,ISNULL(ie.ControlDefault, g.ControlDefault)) as ControlDefault ,g.Description FROM [dbo].[GlobalExpander] g LEFT JOIN [dbo].[ProfExpander] a ON g.ControlName = a.ControlName AND a.ProfNo=@ProfNo LEFT JOIN [dbo].[ProfExpanderCaption] c ON a.ProfNo = c.ProfNo AND a.ControlName = c.ControlName AND c.LangCode = @LangCode LEFT JOIN [dbo].[GlobalExpanderCaption] b ON g.ControlName = b.ControlName AND b.LangCode=@LangCode INNER JOIN [dbo].[InterfaceExpander] ie ON g.ControlName = ie.ControlName WHERE ie.InterfaceID=@InterfaceID AND ie.Version=@Version END
CREATE PROCEDURE [dbo].[EAUI_AddLimiter_76] (@UserId nvarchar(20), @UserIp varchar(15), @LimiterId varchar(20), @DbLabel varchar(10), @LimiterType char(1), @ControlType smallint, @ControlSize smallint, @LogicalOpCode varchar(3), @Description nvarchar(100), @Notes nvarchar(255), @BitFlag1 bit ) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[LimiterList] WHERE [dbo].[LimiterList].[LimiterId]=@LimiterId AND [dbo].[LimiterList].[DbLabel]=@DbLabel) BEGIN RAISERROR('The Limiter ID (%s) already exists for this DbLabel (%s) in LimiterList', 16,-1, @LimiterId,@DbLabel) RETURN END INSERT INTO [dbo].[LimiterList] ( [dbo].[LimiterList].[LimiterId], [dbo].[LimiterList].[DbLabel], [dbo].[LimiterList].[LimiterType], [dbo].[LimiterList].[ControlType], [dbo].[LimiterList].[ControlSize], [dbo].[LimiterList].[LogicalOpCode], [dbo].[LimiterList].[SearchString], [dbo].[LimiterList].[Description], [dbo].[LimiterList].[Notes], [dbo].[LimiterList].[BitFlag1], [dbo].[LimiterList].[BitFlag2], [dbo].[LimiterList].[BitFlag3], [dbo].[LimiterList].[BitFlag4], [dbo].[LimiterList].[BitFlag5], [dbo].[LimiterList].[BitFlag6], [dbo].[LimiterList].[BitFlag7], [dbo].[LimiterList].[BitFlag8]) VALUES (@LimiterId, @DbLabel, @LimiterType, @ControlType, @ControlSize, @LogicalOpCode, '', @Description, @Notes, @BitFlag1, 0, 0, 0, 0, 0, 0, 0) EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Limiter', 'Add Limiter', @LimiterId, @DbLabel END
CREATE PROCEDURE [dbo].[EPCS_GetProfSubscribedSourcesForTargetType_99](@CustID varchar(10), @GroupID varchar(10), @ProfID Varchar(10)) AS BEGIN DECLARE @ProfNo int SET @ProfNo=dbo.EAIF_GetProfNo_70(@CustID, @GroupID, @ProfID) DECLARE @DateNow DateTime SET @DateNow=GETDATE() select stl.TargetType, stl.CollectionIDMask AS IdMask, stl.SearchTag, ( select d.DbName +',' from [dbo].[ProfDatabase] pd join [dbo].[DbList] d on pd.ProfNo=@ProfNo and pd.DbVerNo=d.DbVerNo join [dbo].[DbSourceTarget] st on d.DbVerNo = st.SourceDbNo and st.TargetType = stl.TargetType where pd.Enable=1 and pd.SelDefault=1 and (pd.AccessEndDate is null or pd.AccessEndDate>@DateNow) Order by d.DbName for xml path ('') ) As DbList FROM [dbo].[DbSourceTargetTypeList] stl WHERE stl.Category='proxy' and ( select d.DbName +',' from [dbo].[ProfDatabase] pd join [dbo].[DbList] d on pd.ProfNo=@ProfNo and pd.DbVerNo=d.DbVerNo join [dbo].[DbSourceTarget] st on d.DbVerNo = st.SourceDbNo and st.TargetType = stl.TargetType where pd.Enable=1 and pd.SelDefault=1 and (pd.AccessEndDate is null or pd.AccessEndDate>@DateNow) Order by d.DbName for xml path ('') ) is not null END
CREATE PROCEDURE [dbo].[BLL_GetProfDbDescr](@CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10), @dbType int) AS BEGIN SELECT m.DbName, m.DisplayName, '' as 'Description', pd.SelDefault, m.EnforceSimUsage, pd.CtrlCustID FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] pd ON pd.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] m ON pd.DbVerNo = m.DbVerNo WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND p.ProfID = @ProfID AND pd.Enable <> 0 AND m.DbType = @dbType AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) ORDER BY pd.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceSearchThemesForAttach_83](@InterfaceID varchar(10), @Version varchar(10))AS BEGIN SELECT st.ThemeID, st.ThemeID+N'('+sc.Caption+N')' AS Caption FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] it WITH (NOLOCK) ON st.ThemeID=it.ThemeID AND it.InterfaceID=@InterfaceID AND it.Version=@Version INNER JOIN [dbo].[SearchThemeCaption] sc ON st.ThemeID=sc.ThemeID WHERE ISNULL(st.ParentThemeID,'') = '' AND sc.LangCode='en' AND ISNULL(it.ThemeID,'') = '' ORDER BY st.ThemeID END
CREATE PROCEDURE [dbo].[EATL_GetDumpDBs] ( @DbNames NVARCHAR(MAX), @DbLabel VARCHAR(10), @Items NVARCHAR(MAX), @LangCode VARCHAR(10) ) AS BEGIN SELECT d.DbName, d.DbLabel, d.DbVerNo INTO #DbNames FROM [dbo].[EAIF_GetItemTable_70](@DbNames, ',') t1 JOIN dbo.DbList d ON t1.Item = d.DbName WHERE d.DbLabel = @DbLabel OR @DbLabel = 'All'; SELECT dbp.[DbVerNo], dbp.[ParamNo], dbp.[ItemName], dbp.[ParamValue], dbp.[SeqNo], CAST(dbp.[ParamValue] AS XML) [ParamValueXml] INTO #tDbParamXmlValues FROM [dbo].[DbParamXmlValues] dbp JOIN #DbNames dbl ON dbl.DbVerNo = dbp.DbVerNo; DECLARE @result XML SET @result = ( SELECT dbl.DbLabel AS '@version', dbl.DbName AS '@name', dbl.DisplayName AS 'caption', CASE WHEN CHARINDEX('shortDescriptions', @Items) > 0 THEN ( SELECT CAST([ParamValue] AS XML).value('(/shortDescriptions/shortDescription[@lang=sql:variable("@LangCode")])[1]', 'nvarchar(max)') FROM [dbo].[DbParamXmlValues] WHERE [DbVerNo] = dbl.DbVerNo AND [ParamNo] = dbo.EAIF_GetDbParamNumber_70('shortDescription') AND [ItemName] = '' FOR XML PATH('shortDescription'), TYPE ) END, CASE WHEN CHARINDEX('dbLimiters', @Items) > 0 THEN ( SELECT ll.LimiterId '@limiterId', lc.MouseOverText 'mouseOverText', lc.Caption 'caption' FROM [dbo].[LimiterList] ll JOIN [dbo].[DbLimiterCaption] lc ON (ll.LimiterNo = lc.LimiterNo) WHERE [lc].[LangCode] = @LangCode AND [lc].[DbVerNo] = dbl.DbVerNo FOR XML PATH('dbLimiter'), TYPE, ROOT('dbLimiters') ) END, CASE WHEN CHARINDEX('dbFieldGroups', @Items) > 0 THEN ( SELECT b.FieldGroupId AS '@name', c.Caption '*' FROM [dbo].[DbFieldGroup] a JOIN [dbo].[FieldGroupList] b ON a.FieldGroupNo = b.FieldGroupNo JOIN [dbo].[DbFieldGroupCaption] c ON c.[FieldGroupNo] = b.FieldGroupNo AND c.[DbVerNo] = a.DbVerNo WHERE [a].[DbVerNo] = dbl.DbVerNo AND c.[LangCode] = @LangCode ORDER BY b.FieldGroupId FOR XML PATH('dbFieldGroup'), TYPE, ROOT('dbFieldGroups') ) END, CASE WHEN CHARINDEX('searchOptions', @Items) > 0 THEN ( SELECT sol.SearchOptionId '@id', dsoc.OptionCaption 'oCaption', dsoc.ResultCaption 'rCaption', dsoc.Description 'desc' FROM dbo.DbSearchOption AS dso INNER JOIN dbo.SearchOptionList AS sol ON dso.SearchOptionNo = sol.SearchOptionNo INNER JOIN dbo.DbSearchOptionCaption AS dsoc ON dso.DbVerNo = dsoc.DbVerNo AND dso.SearchOptionNo = dsoc.SearchOptionNo WHERE dso.DbVerNo = dbl.DbVerNo AND dsoc.LangCode = @LangCode FOR XML PATH('searchOption'), TYPE, ROOT('searchOptions') ) END, CASE WHEN CHARINDEX('browseOptions', @Items) > 0 THEN ( SELECT bol.BrowseOptionId '@id', dboc.OptionCaption 'oCaption', dboc.ResultCaption 'rCaption', dboc.Description 'desc' FROM [dbo].[DbBrowseOption] dbo INNER JOIN [dbo].[BrowseOptionList] bol ON dbo.BrowseOptionNo = bol.BrowseOptionNo INNER JOIN [dbo].[DbBrowseOptionCaption] dboc ON dbo.DbVerNo = dboc.DbVerNo AND dbo.BrowseOptionNo = dboc.BrowseOptionNo WHERE dbo.DbVerNo = dbl.DbVerNo AND dboc.LangCode = @LangCode FOR XML PATH('browseOption'), TYPE, ROOT('browseOptions') ) END, CASE WHEN CHARINDEX('authorityFilter', @Items) > 0 THEN ( SELECT ( SELECT afilter.value('./fcaption[@lang=sql:variable("@LangCode")][1]', 'nvarchar(max)') AS fcaption, ( SELECT subset.value('./@id', 'varchar(max)') AS '@id', subset.value('./scaption[@lang=sql:variable("@LangCode")][1]', 'nvarchar(max)') AS 'scaption', ( SELECT vview.value('./@id', 'varchar(max)') AS '@id', vview.value('./vcaption[@lang=sql:variable("@LangCode")][1]', 'nvarchar(max)') AS 'vcaption', ( SELECT mode.value('./@id', 'varchar(max)') AS '@id', mode.value('./mcaption[@lang=sql:variable("@LangCode")][1]', 'nvarchar(max)') AS 'mcaption' FROM vview.nodes('./mode') AS authorityFilter(mode) FOR XML PATH('mode'), TYPE ) FROM subset.nodes('./view') AS authorityFilter(vview) FOR XML PATH('view'), TYPE ) FROM afilter.nodes('./subset') AS authorityFilter(subset) FOR XML PATH('subset'), TYPE ) FROM [ParamValueXml].nodes('/authorityFilter') AS authorityFilter(afilter) FOR XML PATH('authorityFilter'), TYPE ) FROM #tDbParamXmlValues WHERE [DbVerNo] = dbl.DbVerNo AND [ParamNo] = dbo.EAIF_GetDbParamNumber_70('authorityFilters') AND [ItemName] = '' ) END, CASE WHEN CHARINDEX('params', @Items) > 0 THEN ( SELECT l.ParamName '@id', CAST([ParamValue] AS XML).value('(/text[@lang=sql:variable("@LangCode")])[1]', 'nvarchar(max)') AS 'caption' FROM dbo.DbParamList l JOIN dbo.DbParamScalarValues v ON l.ParamNo = v.ParamNo WHERE l.ParamType = 'L' AND v.DbVerNo = dbl.DbVerNo FOR XML PATH('param'), TYPE, ROOT('params') ) END FROM dbo.DbList dbl JOIN #DbNames tdbl ON tdbl.DbVerNo = dbl.DbVerNo FOR XML PATH('db'), ROOT('dbs') ) SELECT @result DROP TABLE #DbNames, #tDbParamXmlValues; END;
CREATE PROCEDURE [dbo].[EPCS_GetAZCusts_2020] AS BEGIN DECLARE @azcustidparamno INT SELECT @azcustidparamno = ParamNo FROM CustomParamList WHERE ParamName = 'a-zCustID' DECLARE @isepkbmasterparamno INT SELECT @isepkbmasterparamno = ParamNo FROM CustomParamList WHERE ParamName = 'isEPKBMaster' SELECT DISTINCT CAST(replace(v.ParamValue,char(160),'') AS INT) AS AtoZCustID FROM dbo.Customer c JOIN Profile p ON c.CustId = p.CustId JOIN CustomParamScalarValues v ON v.ParamNo = @azcustidparamno AND v.TargetNo = p.ProfNo LEFT JOIN CustomParamScalarValues isEPKBMaster ON isEPKBMaster.ParamNo = @isepkbmasterparamno AND isEPKBMaster.TargetNo = c.CustNo WHERE ISNUMERIC(v.ParamValue) = 1 AND ISNULL(isEPKBMaster.ParamValue, '0') != '1' -- Exclude those customers that no longer use AtoZ ORDER BY AtoZCustID RETURN END
CREATE PROCEDURE [dbo].[EAUI_GetDisciplinesWithSingleDisciplineDatabaseListBrowseByCaption_131] (@Caption NVARCHAR(255)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN SELECT dl.DisciplineNo , [dl].[DisciplineCode] , [dc].[Caption] , dbo.EAIF_GetSingleDatabasesForDiscipline_131(dl.DisciplineNo) AS SingleDisciplineDatabases FROM [dbo].[DisciplineList] dl JOIN [dbo].[DisciplineCaption] dc ON dl.DisciplineNo = dc.DisciplineNo AND [dc].[LangCode] = 'en' WHERE [dc].[Caption] LIKE @Caption + '%' ORDER BY [dc].[Caption] END END
CREATE Procedure [dbo].[EAIP_PromoteMultiDbAuthoritiesForRegularDb_90](@OldDbVerNo int, @OldDbLabel varchar(10), @NewDbVerNo int, @NewDbLabel varchar(10)) AS BEGIN TRANSACTION DELETE FROM [dbo].[DBMultiDbAuthList] WHERE [dbo].[DBMultiDbAuthList].[DbVerNo] IN (SELECT [dbo].[DbAuthority].[AuthDbVerNo] FROM [dbo].[DbAuthority] WHERE [dbo].[DbAuthority].[MainDbVerNo] = @NewDbVerNo) IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END Insert [dbo].[DBMultiDbAuthList] SELECT dbmdba.MultiDbAuthID, dblNew.DbVerNo FROM [dbo].[DBMultiDbAuthList] dbmdba INNER JOIN [dbo].[DbAuthority] dbaOld ON dbmdba.DbVerNo = dbaOld.AuthDbVerNo AND dbaOld.MainDbVerNo = @OldDbVerNo INNER JOIN [dbo].[DbList] dblOld ON dbaOld.AuthDbVerNo = dblOld.DbVerNo INNER JOIN [dbo].[DbList] dblNew ON dblOld.DbName = dblNew.DbName AND dblNew.DbLabel = @NewDbLabel IF (@@ERROR <> 0) BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION
CREATE Procedure [dbo].[EAUI_UpdateMDbAthority_90](@UserID nvarchar(20), @UserIP varchar(30), @MDbAID varchar(10), @Desc nvarchar(255), @MouseOverText nvarchar(255), @ContentTypes varchar(8000), @LangCode varchar(50), @LinkText nvarchar(255)) AS BEGIN TRANSACTION UPDATE [dbo].[MultiDbAuthList] SET [dbo].[MultiDbAuthList].[Description] = @Desc WHERE [dbo].[MultiDbAuthList].[MultiDbAuthID] = @MDbAID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF EXISTS (SELECT 1 FROM [dbo].[MultiDbAuthCaption] WHERE [dbo].[MultiDbAuthCaption].[MultiDbAuthID] = @MDbAID AND [dbo].[MultiDbAuthCaption].[LangCode] = @LangCode) UPDATE [dbo].[MultiDbAuthCaption] SET [dbo].[MultiDbAuthCaption].[LinkText] = @LinkText, [dbo].[MultiDbAuthCaption].[MouseOverText] = @MouseOverText WHERE [dbo].[MultiDbAuthCaption].[MultiDbAuthID] = @MDbAID AND [dbo].[MultiDbAuthCaption].[LangCode] = @LangCode ELSE INSERT INTO [dbo].[MultiDbAuthCaption]([dbo].[MultiDbAuthCaption].[MultiDbAuthID], [dbo].[MultiDbAuthCaption].[LangCode], [dbo].[MultiDbAuthCaption].[LinkText], [dbo].[MultiDbAuthCaption].[MouseOverText]) VALUES (@MDbAID, @LangCode, @LinkText, @MouseOverText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[MultiDbAuthContentTypes] WHERE [dbo].[MultiDbAuthContentTypes].[MultiDbAuthID] = @MDbAID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END if @ContentTypes<>'' INSERT INTO [dbo].[MultiDbAuthContentTypes] ([dbo].[MultiDbAuthContentTypes].[MultiDbAuthID], [dbo].[MultiDbAuthContentTypes].[ContentType]) SELECT @MDbAID, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ContentTypes, ',') IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbAuth', 'Modify MDb Authority', @MDbAID COMMIT TRANSACTION
-- added order by CREATE FUNCTION [dbo].[EAIF_InterfaceToolbarItemDatabases_77](@IntfToolbarItem int) RETURNS VARCHAR(8000) AS BEGIN DECLARE @Databases varchar(8000) SET @Databases='' SELECT @Databases = @Databases + db.DbName +',' FROM [dbo].[InterfaceToolbarDb] itd INNER JOIN [dbo].[DbList] db ON itd.DbVerNo=db.DbVerNo WHERE itd.IntfToolbarItem = @IntfToolbarItem Order BY db.DisplayName IF LEN(@Databases)>0 SET @Databases = SUBSTRING(@Databases,1, LEN(@Databases)-1) RETURN @Databases END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerParentList_70](@CustID varchar(10)) AS BEGIN SELECT DISTINCT [dbo].[CustomerGroup].[ParentID] FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ChildID] = @CustID ORDER BY [dbo].[CustomerGroup].[ParentID] END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceVersion_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10) ) AS BEGIN IF @Version = 'live' BEGIN IF EXISTS(SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[InterfaceID]=@InterfaceID AND [dbo].[Profile].[Version]=@Version) BEGIN RAISERROR('You can not delete a live Interface when there are active Profiles.',16,-1) RETURN END END IF NOT EXISTS(SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version) BEGIN RAISERROR('The Interface %s-%s does not exist.',16,-1, @InterfaceID,@Version) RETURN END BEGIN TRANSACTION DELETE a FROM [dbo].[CustomParamScalarValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceID AND b.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE a FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo = b.ProfNo WHERE a.ParamLevel='P' AND b.InterfaceID=@InterfaceID AND b.Version=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[Profile] WHERE [dbo].[Profile].[InterfaceID]=@InterfaceID AND [dbo].[Profile].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[CustomParamDefaults] WHERE [dbo].[CustomParamDefaults].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamDefaults].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interfaces', 'Delete a Version', @InterfaceID, @Version COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_GetHealthCheckDetails_100] AS SELECT [dbo].[HealthCheck].[TestType] ,DB_NAME() AS [TestObjectName] -- to take care of replication ,[dbo].[HealthCheck].[Test] ,[dbo].[HealthCheck].[Status] ,[dbo].[HealthCheck].[Description] FROM [dbo].[HealthCheck]
CREATE PROCEDURE [dbo].[EAUI_ReorderTopicInterface_77](@UserID nvarchar(20), @UserIP varchar(30),@IntfTopicNoList varchar(8000), @SeqNoList varchar(8000)) AS BEGIN BEGIN TRANSACTION UPDATE [dbo].[InterfaceTopic] SET [SeqNo] = CONVERT(int,b.Value) FROM [dbo].[InterfaceTopic] a INNER JOIN dbo.EAIF_GetItemValueTable_70(@IntfTopicNoList, @SeqNoList,'+') b ON a.IntfTopicNo=CONVERT(int, b.Item) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @IntfTopicNo int SELECT @IntfTopicNo=CONVERT(int, b.Item) FROM dbo.EAIF_GetItemValueTable_70(@IntfTopicNoList, @SeqNoList,'+') b SELECT @InterfaceID=it.InterfaceID, @Version=it.Version FROM [dbo].[InterfaceTopic] it WHERE it.IntfTopicNo =@IntfTopicNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Reorder Interface Topic', @InterfaceID,@Version COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_EplDateTimeToString(@InputDate datetime) RETURNS CHAR(17) AS BEGIN RETURN CONVERT(VARCHAR(8), @InputDate, 112) + ' ' + CONVERT(VARCHAR(8), @InputDate, 108) END
CREATE Procedure [dbo].[EAUI_DeleteInterfaceCustomParamEditDetail_91] @UserID nvarchar(255), @UserIP varchar(255), @InterfaceID varchar(255), @Version varchar(255), @ParamNo int as Begin Try Begin Transaction if exists (select 1 from [dbo].[InterfaceCustomParamEditDetail] where [dbo].[InterfaceCustomParamEditDetail].[ParamNo]=@ParamNo and [dbo].[InterfaceCustomParamEditDetail].[InterfaceID]=@InterfaceID and [dbo].[InterfaceCustomParamEditDetail].[Version]=@Version) Begin Delete [dbo].[InterfaceCustomParamEditDetail] Where [dbo].[InterfaceCustomParamEditDetail].[InterfaceID]=@InterfaceID and [dbo].[InterfaceCustomParamEditDetail].[Version]=@Version and [dbo].[InterfaceCustomParamEditDetail].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceCustomParamEditDetail', 'Delete InterfaceCustomParamEditDetail', @InterfaceID, @Version, @ParamNo End Commit Transaction End Try Begin catch Rollback Transaction End Catch
Create Procedure [dbo].[EAIP_DeleteAutoAddMDbLAutoAddScreenByScreenNo_89] @ScreenNo int as Delete [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@ScreenNo and [dbo].[InterfaceMDbLimiterList].[LimiterNo] in (Select [dbo].[MDbLimiterList].[LimiterNo] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[AutoAdd]=1)
CREATE PROCEDURE [dbo].[EAUI_GetProfileFeatureFieldsDisplayDetails_102](@ProfNo int,@InterfaceFeatureNo int,@FieldLevel char, @ItemNo int, @ItemType char(1))AS BEGIN DECLARE @EmptyXml XML SET @EmptyXml = '' SELECT [dbo].[InterfaceFeatureFields].[FieldName], [dbo].[InterfaceFeatureFields].[FieldType], [dbo].[InterfaceFeatureFields].[EditControl], [dbo].[InterfaceFeatureFields].[ValueTemplate] FROM [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldLevel]=@FieldLevel AND [dbo].[InterfaceFeatureFields].[FieldType]='SM' UNION ALL SELECT [dbo].[InterfaceFeatureFields].[FieldName], [dbo].[InterfaceFeatureFields].[FieldType], [dbo].[InterfaceFeatureFields].[EditControl], [dbo].[InterfaceFeatureFields].[ValueTemplate] FROM [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldLevel]=@FieldLevel AND [dbo].[InterfaceFeatureFields].[FieldType]<>'SM' IF @FieldLevel='F' AND @ItemNo=0 -- Feature details SELECT ISNULL(ISNULL(p.FieldValueXml,i.FieldValueXml),@EmptyXml) AS FieldValueXml FROM [dbo].[InterfaceFeatureValues] i LEFT OUTER JOIN [dbo].[ProfFeatureValues] p ON (p.ProfNo=@ProfNo AND p.InterfaceFeatureNo=i.InterfaceFeatureNo AND p.ItemNo=0 AND p.ItemType='D') WHERE i.InterfaceFeatureNo=@InterfaceFeatureNo AND i.ItemNo=@ItemNo ELSE -- Item type:'D' interface default customized; 'C' - custom entry (profile specific). IF @FieldLevel='I' AND @ItemType = 'C' AND @ItemNo > 0 SELECT ISNULL(p.FieldValueXml,@EmptyXml) AS FieldValueXml FROM [dbo].[ProfFeatureValues] p WHERE p.ProfNo=@ProfNo AND p.InterfaceFeatureNo=@InterfaceFeatureNo AND p.ItemNo=@ItemNo AND p.ItemType=@ItemType ELSE IF @FieldLevel='I' AND @ItemType = 'D' AND @ItemNo > 0 SELECT ISNULL(ISNULL(p.FieldValueXml,i.FieldValueXml),@EmptyXml) AS FieldValueXml FROM [dbo].[InterfaceFeatureValues] i LEFT OUTER JOIN [dbo].[ProfFeatureValues] p ON (p.ProfNo=@ProfNo AND p.InterfaceFeatureNo=i.InterfaceFeatureNo AND p.ItemNo=@ItemNo AND p.ItemType=@ItemType) WHERE i.InterfaceFeatureNo=@InterfaceFeatureNo AND i.ItemNo=@ItemNo UNION ALL --EADM 3181 fix : Deleting feature item at interface level removes customized item at profile level SELECT ISNULL(p.FieldValueXml,@EmptyXml) AS FieldValueXml FROM [dbo].[ProfFeatureValues] p LEFT OUTER JOIN [dbo].[InterfaceFeatureValues] i ON (i.InterfaceFeatureNo=p.InterfaceFeatureNo AND i.ItemNo=p.ItemNo) WHERE p.ProfNo=@ProfNo AND p.InterfaceFeatureNo=@InterfaceFeatureNo AND p.ItemNo=@ItemNo AND p.ItemType=@ItemType AND i.ItemNo is NULL ELSE IF @FieldLevel='I' AND @ItemNo=0 SELECT @EmptyXml AS FieldValueXml Select ISNULL(p.SelectionMode,i.SelectionMode) AS SelectionMode,ISNULL(p.VisibleItemCount,i.VisibleItemCount) AS VisibleItemCount From [dbo].[InterfaceFeatureList] i left outer join [dbo].[ProfFeatureSelMode] p on (p.ProfNo=@ProfNo and p.InterfaceFeatureNo=i.InterfaceFeatureNo) Where i.InterfaceFeatureNo=@InterfaceFeatureNo END
CREATE PROCEDURE [dbo].[EAUI_AddLinkedTitle_70]( @UserID as nvarchar(20), @UserIP as varchar(15), @SrcTitleNo as int, @TgtTitleNo as int, @LinkType as char ) AS BEGIN EXEC [dbo].[EAIP_AddLinkedMasterTitle] @SrcTitleNo, @TgtTitleNo, @LinkType IF @@ERROR <> 0 BEGIN DECLARE @SrcTitle as nvarchar(430), @TgtTitle as nvarchar(430) SELECT @SrcTitle=[dbo].[MasterTitle].[Title] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo] = @SrcTitleNo SELECT @TgtTitle=[dbo].[MasterTitle].[Title] FROM [dbo].[MasterTitle] WHERE [dbo].[MasterTitle].[TitleNo] = @TgtTitleNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Titles', 'Add Linked Title', @SrcTitle, @TgtTitle, @LinkType END END
CREATE PROCEDURE [dbo].[EPCS_GetProfTblParams_90] ( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN DECLARE @ProfNo as int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @MarketID varchar(20) SELECT @ProfNo=[dbo].[Profile].[ProfNo], @InterfaceID=[dbo].[Profile].[InterfaceID], @Version=[dbo].[Profile].[Version], @MarketID=[dbo].[Profile].[MarketID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[GroupID]=@GroupID AND [dbo].[Profile].[ProfID]=@ProfID IF @ProfNo IS NULL RETURN DECLARE @ItemsTable TABLE ( ParamNo int,ItemID VARCHAR(10), SortValue int null) INSERT INTO @ItemsTable(ParamNo,ItemID) SELECT * FROM dbo.EAIF_GetInterfaceTblParamItemsForProfDB_90(@InterfaceID, @Version, @ProfNo) Update @ItemsTable SET [SortValue]= Convert(int,ISNULL(p.Value,(ISNULL(iv.Value,g.Value)))) FROM [dbo].[CustomParamXmlFields] f INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON i.ItemID = g.ItemID AND f.ParamNo=g.ParamNo AND f.FieldNo=g.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version and iv.MarketID=@MarketID LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] p ON p.TargetNo = @ProfNo AND p.Level ='P' AND g.ParamNo=p.ParamNo AND g.ItemID=p.ItemID AND g.FieldNo=p.FieldNo INNER JOIN @ItemsTable tmpi ON i.ItemID = tmpi.ItemID WHERE f.SortField=1 IF NOT EXISTS (SELECT 1 FROM @ItemsTable) RETURN ------------------------------------- --Fields with FieldType: SV, NV, BV ------------------------------------- SELECT pl.ParamName, f.FieldName, i.ItemID, f.FieldType, '' As LangCode, ISNULL(p.Value,(ISNULL(iv.Value,g.Value))) AS VALUE, --i.SeqNo AS ItemSeqNo, ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM [dbo].[CustomParamList] pl INNER JOIN [dbo].[CustomParamXmlFields] f ON f.ParamNo=pl.ParamNo INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultValues] g ON f.ParamNo=g.ParamNo AND i.ItemID = g.ItemID AND f.FieldNo=g.FieldNo LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceValues] iv ON g.ParamNo=iv.ParamNo AND g.ItemID=iv.ItemID AND g.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version and iv.MarketID=@MarketID LEFT OUTER JOIN [dbo].[CustomParamTblFieldValues] p ON p.TargetNo = @ProfNO AND p.Level ='P' AND g.ParamNo=p.ParamNo AND g.ItemID=p.ItemID AND g.FieldNo=p.FieldNo INNER JOIN @ItemsTable tmpi ON f.ParamNo= tmpi.ParamNo AND i.ItemID = tmpi.ItemID WHERE --f.DisplayLevel like '%p%' AND f.ReturnToClient=1 UNION ALL -- multi-language values SELECT a.ParamName, a.FieldName, a.ItemID, a.FieldType, a.LangCode As LangCode, ISNULL(p.Value,(ISNULL(iv.Value,g.Value))) AS VALUE, ISNULL(tmpi.SortValue,a.ItemSeqNo) as ItemSeqNo,a.FieldSeqNo FROM ( SELECT pl.ParamName, pl.ParamNo, f.FieldName, f.FieldNo, i.ItemID, f.FieldType, i.SeqNo AS ItemSeqNo, f.SeqNo AS FieldSeqNo, l.LangCode FROM [dbo].[CustomParamList] AS pl INNER JOIN [dbo].[CustomParamXmlFields] AS f ON f.ParamNo = pl.ParamNo INNER JOIN [dbo].[CustomParamTblItems] AS i ON f.ParamNo = i.ParamNo CROSS JOIN [dbo].[InterfaceUserLangList] AS l WHERE (f.DisplayLevel LIKE '%p%') AND (f.FieldType = 'SM') AND (l.InterfaceID = @InterfaceID) AND (l.Version = @Version) AND (f.ReturnToClient = 1) )a LEFT OUTER JOIN [dbo].[CustomParamTblGlobalDefaultSMValues] g ON a.ParamNo=g.ParamNo AND a.ItemID = g.ItemID AND a.FieldNo=g.FieldNo AND a.LangCode = g.LangCode LEFT OUTER JOIN [dbo].[CustomParamTblInterfaceSMValues] iv ON a.ParamNo=iv.ParamNo AND a.ItemID=iv.ItemID AND a.FieldNo=iv.FieldNo AND iv.InterfaceID=@InterfaceID AND iv.Version=@Version AND iv.MarketID=@MarketID AND a.LangCode=iv.LangCode LEFT OUTER JOIN [dbo].[CustomParamTblSMValues] p ON p.TargetNo = @ProfNo AND p.Level ='P' AND a.ParamNo=p.ParamNo AND a.ItemID=p.ItemID AND a.FieldNo=p.FieldNo AND a.LangCode = p.LangCode INNER JOIN @ItemsTable tmpi ON a.ParamNo= tmpi.ParamNo AND a.ItemID = tmpi.ItemID WHERE (g.Value is not null OR iv.Value is not null OR p.Value is not null) UNION ALL ------------------------------------- --Fields with FieldType: SD ------------------------------------- SELECT pl.ParamName, f.FieldName, i.ItemID, 'SD', '' As LangCode, g.DbName AS VALUE, -- i.SeqNo AS ItemSeqNo, f.SeqNo AS FieldSeqNo ISNULL(tmpi.SortValue,i.SeqNo) AS ItemSeqNo, f.SeqNo AS FieldSeqNo FROM [dbo].[CustomParamList] pl INNER JOIN [dbo].[CustomParamXmlFields] f ON f.ParamNo=pl.ParamNo INNER JOIN [dbo].[CustomParamTblItems] i ON f.ParamNo = i.ParamNo INNER JOIN [dbo].[CustomParamTblGlobalDefaultSMDValues] g ON i.ItemID = g.ItemID AND f.FieldNo=g.FieldNo AND f.ParamNo=g.ParamNo INNER JOIN @ItemsTable tmpi ON f.ParamNo= tmpi.ParamNo AND i.ItemID = tmpi.ItemID WHERE f.FieldType='SD' AND f.ReturnToClient=1 Order by [pl].[ParamName], ItemSeqNo,[i].[ItemID], FieldSeqNo END
CREATE PROCEDURE [dbo].[BLL_GetProfDbList](@Profile int, @Label varchar(20), @AuthDbIncluded bit) AS BEGIN DECLARE @ClientType varchar(10) SET @ClientType=dbo.EAIF_GetInterfaceClientType_70(@Profile) SELECT ms.DbVerNo, ms.DbName, ms.DisplayName, ms.DbType, ms.ContentType, ds.SortID, ds.SortName, 0 Seq1, p.SeqNo Seq2, 0 Seq3 FROM [dbo].[ProfDatabase] p INNER JOIN [dbo].[DbList] ms ON p.DbVerNo = ms.DbVerNo LEFT OUTER JOIN [dbo].[DbSort] ds ON ds.DbVerNo = ms.DbVerNo AND ds.SortField <> '' WHERE p.ProfNo = @Profile AND p.Enable <> 0 AND (p.Mode is null OR p.Mode<>'X') AND (p.AccessEndDate is null or datediff(hh, p.AccessEndDate, getdate())<0 ) UNION SELECT DISTINCT ms.DbVerNo, ms.DbName, ms.DisplayName, ms.DbType, ms.ContentType, ds.SortID, ds.SortName, 1 Seq1, p.SeqNo Seq2, 1 Seq3 FROM [dbo].[ProfDatabase] p INNER JOIN [dbo].[DbAuthority] a ON p.DbVerNo = a.MainDbVerNo INNER JOIN [dbo].[DbList] ms ON a.AuthDbVerNo = ms.DbVerNo LEFT OUTER JOIN [dbo].[DbSort] ds ON ds.DbVerNo = ms.DbVerNo AND ds.SortField <> '' WHERE @AuthDbIncluded <> 0 AND p.ProfNo = @Profile AND p.Enable <> 0 AND @ClientType=CASE WHEN [ms].[WebClient]=1 Then 'web' WHEN [ms].[WinClient]=1 THEN 'win' WHEN [ms].[CharClient]=1 THEN 'char' WHEN [ms].[Z3950Client]=1 THEN 'z3950' END AND (p.Mode is null OR p.Mode<>'X') AND (p.AccessEndDate is null or datediff(hh, p.AccessEndDate, getdate())<0 ) UNION SELECT ms.DbVerNo, ms.DbName, ms.DisplayName, ms.DbType, ms.ContentType, ds.SortID, ds.SortName, 2 Seq1, 1000 Seq2, 2 Seq3 FROM [dbo].[DbList] ms LEFT OUTER JOIN [dbo].[DbSort] ds ON ds.DbVerNo = ms.DbVerNo AND ds.SortField <> '' WHERE ms.DbName = 'explain' AND ms.DbLabel = @Label ORDER BY Seq1, Seq2, Seq3, ms.DbVerNo END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceSearchThemesHierarchy_83](@InterfaceID varchar(10), @Version varchar(10), @ThemeID varchar(20))AS BEGIN DECLARE @ThemeHierarchy varchar(max) DECLARE @ThemeHierIds nvarchar(max) SET @ThemeHierarchy = '' SET @ThemeHierIds = N'' EXEC [dbo].[EAIPO_GetInterfaceSearchThemesHierarchy_83] @ThemeID, @ThemeHierarchy out IF @ThemeHierarchy IS NULL SET @ThemeHierarchy = '' SELECT @ThemeHierIds=@ThemeHierIds+N'|'+[st].[Item] + N'^'+ISNULL(ic.Caption,sc.Caption) FROM dbo.EAIF_GetItemTable_70(@ThemeHierarchy,'|') st LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.Item=sc.ThemeID LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) ON st.Item=i.ThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic WITH (NOLOCK) ON i.InterfaceThemeNo=ic.InterfaceThemeNo AND ic.LangCode='en' LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl WITH (NOLOCK) ON i.InterfaceFeatureNo=ifl.InterfaceFeatureNo WHERE st.Item=sc.ThemeID AND sc.LangCode='en' --AND ISNULL(st.ParentThemeID, '')=@ParentThemeID IF Len(@ThemeHierIds)>0 SET @ThemeHierIds=SUBSTRING(@ThemeHierIds,2,LEN(@ThemeHierIds)) SELECT @ThemeHierIds as ThemeHierarchy END
CREATE PROCEDURE [dbo].[EATL_GetDumpInterfaces] ( @Interfaces NVARCHAR(MAX), @Items NVARCHAR(MAX), @LangCode VARCHAR(10) ) AS BEGIN SELECT t1.Item INTO #Items FROM [dbo].[EAIF_GetItemTable_70](@Items, ',') t1; SELECT SUBSTRING(t1.Item, 1, CHARINDEX(';', t1.Item) - 1) InterfaceID, SUBSTRING(t1.Item, CHARINDEX(';', t1.Item) + 1, LEN(t1.Item) - CHARINDEX(';', t1.Item) + 1) Version INTO #Interfaces FROM [dbo].[EAIF_GetItemTable_70](@Interfaces, ',') t1; SELECT iv.InterfaceID '@id', iv.Version '@version', ( SELECT il.InterfaceName 'caption' FROM #Items nn WHERE nn.Item = 'caption' FOR XML PATH(''), TYPE ), ( SELECT il.LinkText 'linkText' FROM #Items nn WHERE nn.Item = 'linkText' FOR XML PATH(''), TYPE ), ( SELECT il.HelpText 'helpText' FROM #Items nn WHERE nn.Item = 'helpText' FOR XML PATH(''), TYPE ), CASE WHEN CHARINDEX('toolbarItems', @Items) > 0 THEN ( SELECT it.ItemName '@name', itc.Caption 'caption' FROM [dbo].[InterfaceToolbar] it INNER JOIN [dbo].[InterfaceToolbarCaption] itc ON it.IntfToolbarItem = itc.IntfToolbarItem WHERE it.InterfaceID = iv.InterfaceID AND it.Version = iv.Version AND itc.LangCode = @LangCode FOR XML PATH('toolbarItem'), TYPE, ROOT('toolbarItems') ) END, CASE WHEN CHARINDEX('features', @Items) > 0 THEN ( SELECT ifl.FeatureName '@name', ( SELECT ( SELECT field.value('@name', 'nvarchar(max)') '@name', field.query('./text()') FROM ifv.FieldValueXml.nodes('/fields/field[@type="SM" and @lang=sql:variable("@LangCode")]') AS features(field) FOR XML PATH('field'), TYPE ) FROM [dbo].[InterfaceFeatureValues] ifv WHERE ifl.InterfaceFeatureNo = ifv.InterfaceFeatureNo AND ifv.ItemNo = 0 FOR XML PATH(''), TYPE ), ( SELECT ifvi.ItemNo '@id', ( SELECT field.value('@name', 'nvarchar(max)') '@name', field.query('./text()') FROM ifvi.FieldValueXml.nodes('/fields/field[@type="SM" and @lang=sql:variable("@LangCode")]') AS features(field) FOR XML PATH('field'), TYPE ) FROM [dbo].[InterfaceFeatureValues] ifvi WHERE ifl.InterfaceFeatureNo = ifvi.InterfaceFeatureNo AND ifvi.ItemNo <> 0 FOR XML PATH('item'), TYPE, ROOT('items') ) FROM [dbo].[InterfaceFeatureList] ifl WHERE ifl.InterfaceID = iv.InterfaceID AND ifl.Version = iv.Version FOR XML PATH('feature'), TYPE, ROOT('features') ) END, CASE WHEN CHARINDEX('docTypes', @Items) > 0 THEN ( SELECT dtl.DocTypeID '@id', idc.Caption 'caption', idc.MouseOverText 'mouseOverText' FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo = idt.DocTypeNo INNER JOIN [dbo].[InterfaceDocTypeCaption] idc ON idt.IntfDocTypeNo = idc.IntfDocTypeNo WHERE idt.InterfaceID = iv.InterfaceID AND idt.Version = iv.Version AND idc.LangCode = @LangCode FOR XML PATH('docType'), TYPE, ROOT('docTypes') ) END, CASE WHEN CHARINDEX('topics', @Items) > 0 THEN ( SELECT tl.TopicID '@id', itc.Caption 'caption', itc.MouseOverText 'mouseOverText', itc.PhotoAltText 'altPhotoText' FROM [dbo].[TopicList] tl INNER JOIN [dbo].[InterfaceTopic] it ON tl.TopicNo = it.TopicNo INNER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo = itc.IntfTopicNo WHERE it.InterfaceID = iv.InterfaceID AND it.Version = iv.Version AND itc.LangCode = @LangCode FOR XML PATH('topic'), TYPE, ROOT('topics') ) END, CASE WHEN CHARINDEX('searchThemes', @Items) > 0 THEN ( SELECT DISTINCT ist.ThemeID '@id', itc.Caption 'stTitle', itc.ImageAltText 'imgAltText' FROM [dbo].[InterfaceSearchTheme] ist INNER JOIN [dbo].[InterfaceSearchThemeCaption] itc ON ist.InterfaceThemeNo = itc.InterfaceThemeNo WHERE ist.InterfaceID = iv.InterfaceID AND ist.Version = iv.Version AND itc.LangCode = @LangCode FOR XML PATH('searchTheme'), TYPE, ROOT('searchThemes') ) END, CASE WHEN CHARINDEX('multiDbAuthorities', @Items) > 0 THEN ( SELECT [MultiDbAuthId] '@id', [LinkText] 'linkText', [MouseOverText] 'mouseOverText' FROM [dbo].[MultiDbAuthInterfaceCaption] WHERE [InterfaceID] = iv.InterfaceID AND [Version] = iv.Version AND [LangCode] = @LangCode FOR XML PATH('intMdbAuthority'), TYPE, ROOT('intmdbauthorities') ) END, CASE WHEN CHARINDEX('multiDbSTS', @Items) > 0 THEN ( SELECT [imdbl].[MultiDbSTSID] '@id', [imdbc].[Caption] 'caption', [imdbc].[MouseOverText] 'mouseOverText' FROM [dbo].[InterfaceMultiDbSTSCaption] imdbc JOIN [dbo].[InterfaceMultiDbSTSList] imdbl ON imdbc.IntfMultiDbSTSNo = imdbl.IntfMultiDbSTSNo WHERE [imdbl].[InterfaceID] = iv.InterfaceID AND [imdbl].[Version] = iv.Version AND [imdbc].[LangCode] = @LangCode FOR XML PATH('multiDbSTS'), TYPE, ROOT('multiDbSourceTypes') ) END, CASE WHEN CHARINDEX('customParams', @Items) > 0 THEN ( SELECT cpl.ParamName '@paramName', ( SELECT cpxf.FieldName '@fieldName', ( SELECT cptisv.ItemID 'customParamFieldItem/@itemID', cptisv.MarketID 'customParamFieldItem/@marketID', cptisv.Value 'customParamFieldItem' FROM dbo.CustomParamTblInterfaceSMValues cptisv WHERE cptisv.InterfaceID = iv.InterfaceID AND cptisv.Version = iv.Version AND cptisv.LangCode = @LangCode FOR XML PATH(''), TYPE, ROOT('customParamFieldItems') ) FROM dbo.CustomParamXmlFields cpxf WHERE cpxf.ParamNo = cpl.ParamNo AND cpxf.FieldNo IN ( SELECT cptisv.FieldNo FROM dbo.CustomParamTblInterfaceSMValues cptisv WHERE cptisv.InterfaceID = iv.InterfaceID AND cptisv.Version = iv.Version AND cptisv.LangCode = @LangCode ) FOR XML PATH('customParamField'), TYPE, ROOT('customParamFields') ) FROM dbo.CustomParamList cpl WHERE cpl.ParamNo IN ( SELECT cpxf.ParamNo FROM dbo.CustomParamXmlFields cpxf JOIN dbo.CustomParamTblInterfaceSMValues cptisv ON cptisv.FieldNo = cpxf.FieldNo AND cptisv.ParamNo = cpxf.ParamNo WHERE cptisv.InterfaceID = iv.InterfaceID AND cptisv.Version = iv.Version AND cptisv.LangCode = @LangCode ) FOR XML PATH('customParam'), TYPE, ROOT('customParams') ) END, CASE WHEN CHARINDEX('knownSearchItems', @Items) > 0 THEN ( SELECT iks.KnownSearchItemNo '@id', iksc.Label 'label', iksc.GhostText 'ghostText' FROM [dbo].[InterfaceKnownSearchItems] iks JOIN [dbo].[InterfaceKnownSearchItemCaption] iksc ON iks.KnownSearchItemNo = iksc.KnownSearchItemNo WHERE iks.InterfaceID = iv.InterfaceID AND iks.Version = iv.Version AND iksc.LangCode = @LangCode FOR XML PATH('knownSearchItem'), TYPE, ROOT('knownSearchItems') ) END, CASE WHEN CHARINDEX('interfaceDbToolbarItems', @Items) > 0 THEN ( SELECT FeatureName '@name', Caption 'caption' FROM ( SELECT fl.FeatureName, idbfv.FieldValueXml.query('/fields/field[@name="ToolbarCaption" and @lang=sql:variable("@LangCode")]').value('/field[1]', 'nvarchar(max)') AS Caption FROM [dbo].[InterfaceDbFeatureValues] idbfv JOIN [dbo].[FeatureList] fl ON idbfv.FeatureNo = fl.FeatureNo AND fl.Category = 'lpt' WHERE [idbfv].[InterfaceID] = iv.InterfaceID AND [idbfv].[Version] = iv.Version ) a WHERE [a].[Caption] IS NOT NULL FOR XML PATH('dbToolbarItem'), TYPE, ROOT('dbToolbarItems') ) END FROM [dbo].[InterfaceVersion] iv LEFT OUTER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version = il.Version AND il.LangCode = @LangCode JOIN #Interfaces i ON i.InterfaceID = iv.InterfaceID AND i.Version = iv.Version --WHERE -- iv.InterfaceID <> 'all' FOR XML PATH('interface'), ROOT('interfaces'); DROP TABLE #Interfaces, #Items; END;
CREATE PROCEDURE [dbo].[EPCS_GetAZInternalCusts_2020] AS BEGIN SELECT AtoZCustomerId FROM (SELECT AtoZCustomerId, SUM(CASE WHEN CustType='I' THEN 1 ELSE 0 END) AS internals, SUM(CASE WHEN CustType<>'I' THEN 1 ELSE 0 END) AS noninternals FROM (SELECT DISTINCT p.CustID AS EPCustID, cast(replace(v.ParamValue,char(160),'') AS int) AS AtoZCustomerId, c.CustType FROM dbo.CustomParamList pl WITH(NOLOCK) JOIN dbo.CustomParamScalarValues v WITH(NOLOCK) ON pl.ParamNo=v.ParamNo JOIN dbo.Profile p WITH(NOLOCK) ON v.TargetNo=p.ProfNo JOIN dbo.Customer c WITH(NOLOCK) ON p.CustID=c.CustID WHERE pl.ParamName IN ('a-zCustID') AND ISNUMERIC(v.ParamValue)=1) AS x GROUP BY AtoZCustomerId) AS y WHERE y.internals>0 AND y.noninternals=0 RETURN END
CREATE FUNCTION [dbo].[Util_ParametrizeSPList] (@theDelimiter varchar(1) , @theTextToSplit varchar(8000)) RETURNS @SpTable table(SP varchar(500)) AS BEGIN declare @tmp table(Idx int, SplitData varchar(250)) declare @spname varchar(100) declare @idx int declare @cnt int insert @tmp(Idx, SplitData) select [dbo].[Util_SplitToTable].[Idx], [dbo].[Util_SplitToTable].[SplitData] from dbo.Util_SplitToTable(@theDelimiter,@theTextToSplit) select @cnt= COUNT(*) from @tmp set @idx=1 while @idx<=@cnt begin select @spname =SplitData from @tmp where Idx=@idx declare @objid int select @objid = [sys].[all_objects].[object_id] from sys.all_objects where [sys].[all_objects].[object_id] = object_id(@spname) declare @params varchar(200) set @params= '' select @params= @params+ [sys].[all_parameters].[name]+',' from sys.all_parameters where [sys].[all_parameters].[object_id] = @objid declare @delim varchar(1) set @delim=Substring(@params, 1,1) if(@delim=',') begin set @params=Substring(@params, 2,len(@params)) end insert @SpTable([dbo].[Util_ParametrizeSPList].[SP]) select 'Print ''Executing: '+@spname+'.'''+CHAR(10)+'exec ' +@spname+' '+Substring(@params, 1, len(@params)-1)+ char(10)+'GO'+char(10) set @idx=@idx+1 end RETURN END --fn end
CREATE PROCEDURE [dbo].[EAUI_GetDisciplinesWithSingleDisciplineDatabaseListBrowseByDisciplineCode_131] (@DisciplineCode VARCHAR(10)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; BEGIN SELECT dl.DisciplineNo , [dl].[DisciplineCode] , [dc].[Caption] , dbo.EAIF_GetSingleDatabasesForDiscipline_131(dl.DisciplineNo) AS SingleDisciplineDatabases FROM [dbo].[DisciplineList] dl JOIN [dbo].[DisciplineCaption] dc ON dl.DisciplineNo = dc.DisciplineNo AND [dc].[LangCode] = 'en' WHERE [dl].[DisciplineCode] LIKE @DisciplineCode + '%' ORDER BY [dl].[DisciplineCode] END END
CREATE PROCEDURE [dbo].[EAIP_RebuildLocalLimiter_70](@UserID nvarchar(20), @ReqType char(1), @ColNo int , @Email nvarchar(200)) AS BEGIN DECLARE @CustID varchar(10), @ColID nvarchar(50) DECLARE @Recreate bit DECLARE @Param3 varchar(10) IF @ReqType = '' SET @ReqType = 'C' SELECT @CustID=[dbo].[Collection].[CustID], @ColID=[dbo].[Collection].[ColID], @Recreate= ([dbo].[Collection].[AutoRecreate] | [dbo].[Collection].[ForceRecreate] ), @Param3 =(CASE WHEN [dbo].[Collection].[Exclude]=1 THEN '-x' ELSE '' END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 --Update main/parent collection first then, Update all 'Shared' collections, so --that all the shared collections gets processed. UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() --, AutoRecreate=1 WHERE [dbo].[Collection].[ColNo]=@ColNo AND [dbo].[Collection].[IsDeleted] = 0 --Chandra 4/26/2007 - Until notified otherwise, update Shared collections for Customer type collections ONLY. IF @ReqType = 'C' BEGIN UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() WHERE [dbo].[Collection].[SharedFrom] = @ColNo AND [dbo].[Collection].[IsDeleted] = 0 END END
--sql content merged from file: \StoredProcedures\EAUI_UpdateMDbLimitersExternalSourceDetails_92.sql -- 2011.12.09: jjalbert search strings become nvarchar for multibyte create Procedure [dbo].[EAUI_UpdateMDbLimitersExternalSourceDetails_102] (@UserID nvarchar(20), @UserIP varchar(30), @LimiterID varchar(10), @DbLabel varchar(10), @LangCode varchar(10), @SourceType char(1), @Caption nvarchar(100), @SearchString_M nvarchar(100), @SearchString_I nvarchar(100)) as Begin Declare @LimiterNo int Begin Try Begin Transaction Select @LimiterNo=[dbo].[MDbLimitersExternalSource].[LimiterNo] from [dbo].[MDbLimitersExternalSource] Where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID and [dbo].[MDbLimitersExternalSource].[ExternalSourceType]=@SourceType print @LimiterID if exists (Select 1 from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterNo] = @LimiterNo and [dbo].[MDbLimitersExternalSource].[LimiterID] = @LimiterID ) Begin Update [dbo].[MDbLimitersExternalSource] set [dbo].[MDbLimitersExternalSource].[ExternalSearchString_M]=@SearchString_M, [dbo].[MDbLimitersExternalSource].[ExternalSearchString_I]=@SearchString_I where [dbo].[MDbLimitersExternalSource].[LimiterNo] = @LimiterNo and [dbo].[MDbLimitersExternalSource].[LimiterID] = @LimiterID --EXEC EAIP_LogActivity_70 @UserID, @UserIP, 'MDbLimitersExternalSource', 'Update External Limiter Details - External Search String', @LimiterID, @DbLabel, @LangCode, @SourceType, @SearchString_M, @SearchString_I End if exists (select 1 from [dbo].[MDbLimitersExternalSourceCaption] where [dbo].[MDbLimitersExternalSourceCaption].[LimiterNo]=@LimiterNo and [dbo].[MDbLimitersExternalSourceCaption].[LangCode]=@LangCode) Begin Update [dbo].[MDbLimitersExternalSourceCaption] set [dbo].[MDbLimitersExternalSourceCaption].[Caption]=@Caption Where [dbo].[MDbLimitersExternalSourceCaption].[LimiterNo]=@LimiterNo and [dbo].[MDbLimitersExternalSourceCaption].[LangCode]=@LangCode EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbLimitersExternalSourceCaption', 'Update External Limiter Details', @LimiterID, @DbLabel, @LangCode, @SourceType, @Caption End Else Begin Insert [dbo].[MDbLimitersExternalSourceCaption] ([dbo].[MDbLimitersExternalSourceCaption].[LimiterNo], [dbo].[MDbLimitersExternalSourceCaption].[LangCode], [dbo].[MDbLimitersExternalSourceCaption].[Caption]) Values (@LimiterNo, @LangCode, @Caption) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbLimitersExternalSourceCaption', 'Add External Limiter Details', @LimiterID, @DbLabel, @LangCode, @SourceType, @Caption End Commit Transaction End Try Begin catch Rollback Transaction End catch End
CREATE FUNCTION [dbo].[EAIF_InterfaceToolbarItemDbs](@IntfToolbarItem int) RETURNS VARCHAR(8000) AS BEGIN DECLARE @Dbs varchar(8000) SET @Dbs='' SELECT @Dbs=@Dbs+'+'+db.DbName FROM [dbo].[InterfaceToolbarDb] tb INNER JOIN [dbo].[DbList] db ON tb.DbVerNo = db.DbVerNo WHERE tb.IntfToolbarItem =@IntfToolbarItem IF LEN(@Dbs)>1 SET @Dbs=SUBSTRING(@Dbs, 2, LEN(@Dbs)) RETURN @Dbs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerPlinkTitleSettings_81](@CustID varchar(10))AS BEGIN SELECT mt.TitleNo, CASE mt.ISSN WHEN NULL THEN mt.Title ELSE mt.Title +' ('+mt.ISSN+')' END AS DbDisplayName FROM [dbo].[MasterTitle] mt WHERE ISNULL(mt.RestrictPLinks,0) = 1 AND LEN(ISNULL(mt.ISSN,'')) > 0 ORDER BY DbDisplayName END
CREATE PROCEDURE [dbo].[EAIP_DeleteInterfaceVersion_182](@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID varchar(10), @Version VARCHAR(10)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[InterfaceVersion] Where [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Interfaces', 'DELETE InterfaceVersion', @InterfaceID, @Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceChildParamList_161] (@InterfaceID varchar(10), @Version varchar(10), @ParentParamNo INT) AS BEGIN SELECT a.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText AS [Description], a.EditLevel, DisplayLink=case When b.ParamType in ('N', 'S', 'B', 'M') Then 1 When b.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where a.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 2 When b.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 3 Else 0 End, (SELECT Count(cplChildren.ParamNo) FROM [dbo].[CustomParamList] cplChildren WHERE cplChildren.ParentParamNo = b.ParamNo) NChildren, 2 Indent, dp.PromptText + isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText as SortName, 1 as EditDetails FROM [dbo].[InterfaceParamList] a INNER JOIN [dbo].[CustomParamList] b ON a.ParamNo= b.ParamNo INNER JOIN [dbo].[CustomParamList] bp ON b.ParentParamNo = bp.ParamNo AND bp.ParamNo = @ParentParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] dp ON bp.ParamNo=dp.ParamNo WHERE a.InterfaceID = @InterfaceID AND a.Version=@Version AND b.ParamLevel = 'P' UNION SELECT a.ParamNo, b.ParamName, IsNull(c.Description,'Table') AS ParamType, isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText AS [Description], a.EditLevel, DisplayLink=case When b.ParamType in ('N', 'S', 'B', 'M') Then 1 When b.ParamType='X' and exists (Select 1 from [dbo].[CustomParamXmlDefaults] e where a.ParamNo=e.ParamNo) and exists(Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 2 When b.ParamType='T' and exists (Select 1 from [dbo].[CustomParamXmlFields] f where a.ParamNo=f.ParamNo) then 3 Else 0 End, (SELECT Count(cplChildren.ParamNo) FROM [dbo].[CustomParamList] cplChildren WHERE cplChildren.ParentParamNo = b.ParamNo) NChildren, 3 Indent, dp.PromptText + isnull(d.ChildParamGroupHeading + ': ', '') + d.PromptText as SortName, 1 as EditDetails FROM [dbo].[InterfaceParamList] a INNER JOIN [dbo].[CustomParamList] b ON a.ParamNo= b.ParamNo INNER JOIN [dbo].[CustomParamList] bp ON b.ParentParamNo = bp.ParamNo INNER JOIN [dbo].[CustomParamList] bpp ON bp.ParentParamNo = bpp.ParamNo AND bpp.ParamNo = @ParentParamNo LEFT OUTER JOIN [dbo].[CharValueMap] c ON b.ParamType=c.FieldCode AND c.FieldName='ParamType' INNER JOIN [dbo].[CustomParamEditDetail] d ON b.ParamNo=d.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] dp ON bp.ParamNo=dp.ParamNo INNER JOIN [dbo].[CustomParamEditDetail] dpp ON bpp.ParamNo=dpp.ParamNo WHERE a.InterfaceID = @InterfaceID AND a.Version=@Version AND b.ParamLevel = 'P' ORDER BY SortName END
CREATE PROCEDURE [dbo].[EAUI_ReorderTopicInterfaceAlphabetically_77](@UserID nvarchar(20), @UserIP varchar(30),@InterfaceID varchar(10), @Version varchar(10)) AS BEGIN DECLARE @TopicSeqNoTable TABLE (IntfTopicNo int, SeqNo int identity) INSERT INTO @TopicSeqNoTable(IntfTopicNo) SELECT it.IntfTopicNo FROM [dbo].[InterfaceTopic] it LEFT OUTER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo=itc.IntfTopicNo AND itc.LangCode = 'en' INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version AND tl.ParentTopicNo is null AND tc.LangCode = 'en' ORDER BY ISNULL(itc.Caption, tc.Caption)ASC BEGIN TRANSACTION UPDATE [dbo].[InterfaceTopic] SET [SeqNo] = b.SeqNo FROM [dbo].[InterfaceTopic] a INNER JOIN @TopicSeqNoTable b ON a.IntfTopicNo=b.IntfTopicNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Topics','Reorder Interface Topic Alphabetically', @InterfaceID,@Version COMMIT TRANSACTION END
CREATE FUNCTION dbo.EAIF_EplStringToDateTime(@InputDate char(17)) RETURNS datetime AS BEGIN RETURN @InputDate END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceDbSearchTags_82](@UserID nvarchar(20), @UserIP varchar(15),@InterfaceID varchar(10),@Version varchar(10),@Tag varchar(10)) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[InterfaceSearchTags] WHERE [dbo].[InterfaceSearchTags].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceSearchTags].[Version]=@Version AND [dbo].[InterfaceSearchTags].[Tag]=@Tag IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterafceDbSearchTags','Remove Tag', @InterfaceID ,@Version,@Tag COMMIT TRANSACTION END
create procedure [dbo].[EAIP_DeleteAutoAddMDbLAutoAddScreenByScreenNoLimiterNo_89] @ScreenNo int, @LimiterNo int as Delete [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@ScreenNo and [dbo].[InterfaceMDbLimiterList].[LimiterNo] = @LimiterNo
CREATE PROCEDURE [dbo].[EAUI_GetProfileFeatureItemsXml_102]( @ProfNo int,@InterfaceFeatureNo int)AS BEGIN SELECT i.ItemNo,ISNULL(ISNULL(pv.SeqNo,i.SeqNo),1) as SeqNo,ISNULL(ISNULL(pv.Show,i.Show),1) as Show, 'D' as ItemType,ISNULL(pv.FieldValueXml,i.FieldValueXml) as FieldValueXml ,case When pv.InterfaceFeatureNo is null then 0 else 1 end as IsItemCustomized FROM [dbo].[InterfaceFeatureValues] i Left outer join [dbo].[ProfFeatureValues] pv on (pv.ProfNo=@ProfNo and pv.InterfaceFeatureNo=i.InterfaceFeatureNo and pv.ItemNo=i.ItemNo and pv.ItemType='D') -- Customized Interface Default WHERE i.InterfaceFeatureNo=@InterfaceFeatureNo AND i.ItemNo>0 UNION ALL -- For Feature Items Added on the profile, Concatenate item type to the ItemNo SELECT pv.ItemNo,ISNULL(pv.SeqNo,1) as SeqNo,ISNULL(pv.Show,1) as Show, 'C' as ItemType,pv.FieldValueXml as FieldValueXml , 1 as IsItemCustomized -- Item type 'C' are added to profile directly, hence they are always customized FROM [dbo].[ProfFeatureValues] pv -- Items added at profile level WHERE pv.ProfNo=@ProfNo and pv.InterfaceFeatureNo=@InterfaceFeatureNo AND pv.ItemType='C' AND pv.ItemNo>0 UNION ALL -- EADM-3181: Deleting feature item at interface level removes customized item at profile level. -- Include customized interface Default(on profile) with no corresponding interface default entry; -- Interface item removed after profile customization. SELECT pv.ItemNo,ISNULL(pv.SeqNo,1) as SeqNo,ISNULL(pv.Show,1) as Show, 'D' as ItemType,pv.FieldValueXml as FieldValueXml , 1 as IsItemCustomized FROM [dbo].[ProfFeatureValues] pv Left outer join [dbo].[InterfaceFeatureValues] i on (i.InterfaceFeatureNo=pv.InterfaceFeatureNo and i.ItemNo=pv.ItemNo) WHERE pv.ProfNo=@ProfNo and pv.InterfaceFeatureNo=@InterfaceFeatureNo AND pv.ItemType='D' AND pv.ItemNo>0 AND i.ItemNo is NULL ORDER BY SeqNo,ItemType desc -- if the seqnos are same, show the default first and customization next. END
CREATE PROCEDURE [dbo].[EAUI_AddLocalDate_70](@UserID nvarchar(20), @UserIP varchar(15), @ColNo int, @TitleNo int, @FromDate varchar(8), @ToDate varchar(8)) AS BEGIN DECLARE @LogColName varchar(30) DECLARE @LogTitleName nvarchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo), @LogTitleName = dbo.EAIF_GetLogTitleName_70(@TitleNo) DECLARE @CustId varchar(10) SET @CustId=SUBSTRING(@LogColName, 1, CHARINDEX('.',@LogColName)-1) EXEC [dbo].[EAIP_AddModLocalDate_70] @ColNo, @TitleNo, @FromDate, @ToDate EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Add Local Title Date Range', @CustId, @LogColName, @LogTitleName, @FromDate, @ToDate END
CREATE PROCEDURE [dbo].[EPCS_GetRecreateDbSegmentInfo_77](@DbName varchar(10), @SegName varchar(10), @DbLabel varchar(10)) AS BEGIN DECLARE @DbVerNo int SET @DbVerNo = dbo.EAIF_GetDbVerNo_70(@DbName,@DbLabel) SELECT v.Volume, [s].[EpsFile], [s].[EpdFile], [s].[EpiFile], [s].[EpfFile], [s].[LookupDir], dbo.EAIF_EplDateTimeToString([v].[LastUpdateDate]) as LastUpdateDate FROM [dbo].[DbVolume] AS v INNER JOIN [dbo].[DbSegFileInfo] AS s ON v.DbVerNo = s.DbVerNo AND v.Volume = s.Volume WHERE v.DbVerNo = @DbVerNo AND s.SegName = @SegName ORDER BY v.Volume END
CREATE PROCEDURE [dbo].[BLL_GetSecDBForDB]( @ShortDBName varchar(255), @Label varchar(10) ) AS BEGIN SELECT c.DisplayName, c.DbName, c.DbType, c.ContentType FROM [dbo].[DbList] a INNER JOIN [dbo].[DbAuthority] b ON a.DbVerNo = b.MainDbVerNo INNER JOIN [dbo].[DbList] c ON c.DbVerNo = b.AuthDbVerNo WHERE a.DbName=@ShortDBName AND a.DbLabel=@Label AND c.WebClient = 1 ORDER BY c.DbName END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceSearchThemesList_83]( @InterfaceID varchar(10), @Version varchar(10), @ParentThemeID varchar(20) )AS BEGIN IF (@ParentThemeID = '') BEGIN SELECT st.ThemeID, i.InterfaceFeatureNo, i.SeqNo, ISNULL(ic.Caption,sc.Caption) AS Caption, CASE WHEN Len(ISNULL(i.SearchString, '')) > 0 THEN i.SearchString WHEN Len(ISNULL(i.SearchString, '')) = 0 THEN ISNULL(st.SearchString, '') ELSE '' END AS SearchString, st.ThemeID AS ChildThemeID, ISNULL(st.ParentThemeID,'') AS ParentThemeID, ISNULL(ifl.FeatureName, '') AS FeatureName FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.ThemeID=sc.ThemeID LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) ON st.ThemeID=i.ThemeID LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic WITH (NOLOCK) ON i.InterfaceThemeNo=ic.InterfaceThemeNo AND ic.LangCode='en' LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl WITH (NOLOCK) ON i.InterfaceFeatureNo=ifl.InterfaceFeatureNo WHERE st.ThemeID=sc.ThemeID AND sc.LangCode='en' AND ISNULL(st.ParentThemeID, '')=@ParentThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version ORDER BY st.ThemeID END ELSE BEGIN SELECT st.ThemeID, i.InterfaceFeatureNo, i.SeqNo, ISNULL(ic.Caption,sc.Caption) AS Caption, CASE WHEN Len(ISNULL(i.SearchString, '')) > 0 THEN i.SearchString WHEN Len(ISNULL(i.SearchString, '')) = 0 THEN ISNULL(st.SearchString, '') ELSE '' END AS SearchString, st.ThemeID AS ChildThemeID, ISNULL(st.ParentThemeID,'') AS ParentThemeID, ISNULL(ifl.FeatureName, '') AS FeatureName FROM [dbo].[SearchTheme] st WITH (NOLOCK) LEFT OUTER JOIN [dbo].[SearchThemeCaption] sc WITH (NOLOCK) ON st.ThemeID=sc.ThemeID LEFT OUTER JOIN [dbo].[InterfaceSearchTheme] i WITH (NOLOCK) ON st.ThemeID=i.ThemeID AND i.InterfaceID=@InterfaceID AND i.Version=@Version LEFT OUTER JOIN [dbo].[InterfaceSearchThemeCaption] ic WITH (NOLOCK) ON i.InterfaceThemeNo=ic.InterfaceThemeNo AND ic.LangCode='en' LEFT OUTER JOIN [dbo].[InterfaceFeatureList] ifl WITH (NOLOCK) ON i.InterfaceFeatureNo=ifl.InterfaceFeatureNo WHERE st.ThemeID=sc.ThemeID AND sc.LangCode='en' AND ISNULL(st.ParentThemeID, '')=@ParentThemeID ORDER BY st.ThemeID END END
CREATE PROCEDURE [dbo].[EATL_GetExpandersByLangCode_70] (@LangCode varchar(10)) AS BEGIN SELECT a.ControlName, [b].[DefCaption] FROM [dbo].[GlobalExpander] a JOIN [dbo].[GlobalExpanderCaption] b ON a.ControlName=b.ControlName AND b.LangCode=@LangCode END
CREATE PROCEDURE [dbo].[EPCS_GetBibMaps_70](@DbVerNo int, @SegName varchar(10))as BEGIN SELECT [dbo].[DbBibMap].[BibField], [dbo].[DbBibMap].[FieldTag] FROM [dbo].[DbBibMap] WHERE [dbo].[DbBibMap].[DbVerNo] = @DbVerNo AND [dbo].[DbBibMap].[SegName] = @SegName ORDER BY [dbo].[DbBibMap].[SeqNo] END
CREATE PROCEDURE [eadmin].EAUI_GetAdminShibStatus_85 AS BEGIN SELECT ISNULL(dbo.EAIF_GetAdminParamValue_70('shibstate'),'') END
--sql content merged from file: \StoredProcedures\EAUI_GetDisplayScreens_912.sql Create Procedure [dbo].[EAUI_GetDisplayScreens_912] as Select [dbo].[StringValueMap].[FieldCode], [dbo].[StringValueMap].[Description] from [dbo].[StringValueMap] where [dbo].[StringValueMap].[FieldName]='DisplayScreen' order by [dbo].[StringValueMap].[SeqNo]
CREATE PROCEDURE dbo.EAIP_ReconcileProfileAccessEndDateByCustomer ( @CustID VARCHAR(10), @Debug BIT = 0 ) AS BEGIN CREATE TABLE #profile ( ProfNo int, AccessEndDate datetime, DbVerNo int, DbName varchar(10) ) CREATE TABLE #subscription ( SubscriberID varchar(10), CustID varchar(10), PrdOffNo int, Mode char(1), SubscriptionNo int, EndDate datetime, ProductID varchar(10), GracePeriod varchar(5) ) CREATE TABLE #profile_tofix ( ProfNo int, DbVerNo int, AccessEndDate datetime, SubscriberID varchar(10), CustID varchar(10), PrdOffNo int, Mode char(1), SubscriptionNo int, FixAccessEndDate DATETIME, PRIMARY KEY (ProfNo,DbVerNo) ) INSERT INTO #profile ( #profile.[ProfNo], #profile.[AccessEndDate], #profile.[DbVerNo], #profile.[DbName] ) SELECT p.ProfNo, pd.AccessEndDate, pd.DbVerNo, dl.DbName FROM dbo.[Profile] p INNER JOIN dbo.ProfDatabase pd ON pd.ProfNo = p.ProfNo INNER JOIN dbo.DbList dl ON pd.DbVerNo = dl.DbVerNo WHERE dl.SourceType = 'D' AND p.CustID = @CustID; INSERT INTO #subscription ( #subscription.[SubscriberID], #subscription.[CustID], #subscription.[PrdOffNo], #subscription.[Mode], #subscription.[SubscriptionNo], #subscription.[EndDate], #subscription.[ProductID], #subscription.[GracePeriod] ) SELECT cs.SubscriberID, cs.CustID, cs.PrdOffNo, cs.Mode, cs.SubscriptionNo, cs.EndDate, pd.ProductID, pd.GracePeriod FROM EASUPPORT.dbo.CustSubscription cs INNER JOIN EASUPPORT.dbo.ProductPackage pp ON cs.PrdOffNo = pp.PrdOffNo INNER JOIN EASUPPORT.dbo.Product pd ON pp.ProductID = pd.ProductID INNER JOIN EASUPPORT.dbo.ProductOffering po ON po.PrdOffNo = pp.PrdOffNo WHERE po.SourceType = 'D' AND cs.CustID = @CustID; INSERT INTO #profile_tofix ( #profile_tofix.[ProfNo], #profile_tofix.[DbVerNo], #profile_tofix.[AccessEndDate], #profile_tofix.[SubscriberID], #profile_tofix.[CustID], #profile_tofix.[PrdOffNo], #profile_tofix.[Mode], #profile_tofix.[SubscriptionNo], #profile_tofix.[FixAccessEndDate] ) SELECT p.ProfNo, p.DbVerNo, p.AccessEndDate, s1.SubscriberID, s1.CustID, s1.PrdOffNo, s1.Mode, s1.SubscriptionNo, s1.FixAccessEndDate FROM #profile p CROSS APPLY (SELECT TOP(1) s.SubscriberID, s.CustID, s.ProductID, s.PrdOffNo, s.Mode, s.SubscriptionNo, CASE WHEN s.Mode = 'S' THEN dbo.fn_GetEPAccessEndDate_90(s.EndDate,ISNULL(s.GracePeriod,90),null,null) WHEN s.Mode = 'T' THEN dbo.fn_GetEPAccessEndDate_90(s.EndDate,0,null,null) ELSE NULL END AS FixAccessEndDate FROM #subscription s WHERE p.DbName = s.ProductID ORDER BY CASE WHEN s.Mode = 'S' THEN dbo.fn_GetEPAccessEndDate_90(s.EndDate,ISNULL(s.GracePeriod,90),null,null) WHEN s.Mode = 'T' THEN dbo.fn_GetEPAccessEndDate_90(s.EndDate,0,null,null) ELSE NULL END DESC) s1 WHERE p.AccessEndDate <> s1.FixAccessEndDate AND (p.AccessEndDate > GETDATE() OR s1.FixAccessEndDate > GETDATE()) ORDER BY p.ProfNo, p.DbVerNo; IF @Debug = 0 BEGIN UPDATE pd SET pd.AccessEndDate = fix.FixAccessEndDate FROM dbo.ProfDatabase pd INNER JOIN #profile_tofix fix ON pd.ProfNo = fix.ProfNo AND pd.DbVerNo = fix.DbVerNo; END; SELECT #profile_tofix.[ProfNo], #profile_tofix.[DbVerNo], #profile_tofix.[AccessEndDate], #profile_tofix.[SubscriberID], #profile_tofix.[CustID], #profile_tofix.[PrdOffNo], #profile_tofix.[Mode], #profile_tofix.[SubscriptionNo], #profile_tofix.[FixAccessEndDate] FROM #profile_tofix; END;
CREATE PROCEDURE [dbo].[EAUI_UpdateMDbSTS_90] (@UserId nvarchar(20), @UserIp varchar(30), @MultiDbSTSID varchar(10), @Description varchar(255)=NULL, @SortOption varchar(50)=Null, @SearchImage varchar(255)=NULL, @ResultImage varchar(255)=NULL, @LangCode varchar(10), @Caption nvarchar(255), @MouseOverText nvarchar(255)=NULL) AS Begin Try Begin Transaction Update [dbo].[MultiDbSTSList] set [dbo].[MultiDbSTSList].[Description]=@Description, [dbo].[MultiDbSTSList].[SortOption]=@SortOption, [dbo].[MultiDbSTSList].[SearchImage]=@SearchImage, [dbo].[MultiDbSTSList].[ResultImage]=@ResultImage where [dbo].[MultiDbSTSList].[MultiDBSTSID]=@MultiDbSTSID if exists(Select 1 from [dbo].[MultiDbSTSCaption] where [dbo].[MultiDbSTSCaption].[MultiDBSTSID]=@MultiDbSTSID and [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode) Update [dbo].[MultiDbSTSCaption] set [dbo].[MultiDbSTSCaption].[Caption]=@Caption, [dbo].[MultiDbSTSCaption].[MouseOverText]=@MouseOverText where [dbo].[MultiDbSTSCaption].[MultiDBSTSID]=@MultiDbSTSID and [dbo].[MultiDbSTSCaption].[LangCode]=@LangCode else Insert [dbo].[MultiDbSTSCaption] ([dbo].[MultiDbSTSCaption].[MultiDBSTSID], [dbo].[MultiDbSTSCaption].[LangCode], [dbo].[MultiDbSTSCaption].[Caption], [dbo].[MultiDbSTSCaption].[MouseOverText]) Values (@MultiDbSTSID, @LangCode, @Caption, @MouseOverText) commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'MDbSTS', 'Update MDbSTS', @MultiDbSTSID, @Description End Try Begin Catch rollback transaction End Catch
CREATE FUNCTION [dbo].[EAIF_InterfaceToolbarItemLangAndCaptions_77](@IntfToolbarItem int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(max) SET @Captions=N'' SET @Langs='' SELECT @Captions=@Captions+N'|'+[dbo].[InterfaceToolbarCaption].[Caption], @Langs=@Langs+'|'+[dbo].[InterfaceToolbarCaption].[LangCode] FROM [dbo].[InterfaceToolbarCaption] WHERE [dbo].[InterfaceToolbarCaption].[IntfToolbarItem] =@IntfToolbarItem IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+'|||'+@Langs -- returns nvarchar(max) by implicit conversion END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerProductConfigurationDetails_99](@CustID varchar(10), @Product varchar(10)) AS BEGIN SELECT c.CustID, ISNULL([pc].[Product],def.Product) AS Product, ISNULL(pc.ProductAllowed,def.ProductAllowed) as ProductAllowed, ISNULL(pc.ProductForChildrenAllowed,0) as ProductForChildrenAllowed, ISNULL(pc.AuthType,'uid') as AuthType, ISNULL(pc.DirectURL,'') as DirectURL, ISNULL(pc.DisplayName,c.CustName) AS DisplayName, [pc].[UseProxy], ISNULL([pc].[ProxyID],'') AS ProxyID, [pc].[LoginText], [pc].[LibraryLogoUrl], CONVERT(varchar,pc.TimeStamp,120) AS [TimeStamp] FROM dbo.Customer c INNER JOIN dbo.CustomParamProductConfigurationDefault def ON c.MarketID = def.MarketID LEFT OUTER JOIN dbo.CustomParamProductConfiguration pc ON c.CustID = pc.CustID AND pc.Product = def.Product WHERE c.CustID = @CustID AND def.Product = @Product END
--sql content merged from file: \StoredProcedures\EAIP_AddMDbLimiterExternalSource_92.sql create Procedure [dbo].[EAIP_DeleteMDbLimiterExternalSource_102] ( @UserId nvarchar(20), @UserIp varchar(30), @LimiterID varchar(10) ) as Declare @limiterNo int IF NOT EXISTS (SELECT 1 FROM [dbo].[MDbLimitersExternalSource] WHERE [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID) BEGIN RAISERROR('The LimiterID (%s) does not exist in MDbLimitersExternalSource', 16, -1, @LimiterID) RETURN END Begin Try Begin Transaction Select @LimiterNo=[dbo].[MDbLimitersExternalSource].[LimiterNo] from [dbo].[MDbLimitersExternalSource] where [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID DELETE FROM [dbo].[MDbLimitersExternalSourceCaption] WHERE [dbo].[MDbLimitersExternalSourceCaption].[LimiterNo] = @LimiterNo DELETE FROM [dbo].[MDbLimitersExternalSource] WHERE [dbo].[MDbLimitersExternalSource].[LimiterID]=@LimiterID commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'MDbLimitersExternalSource', 'Delete MDbLimitersExternalSource', @LimiterID End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceClusters_102](@InterfaceId VARCHAR(10), @Version VARCHAR(10)) AS BEGIN SELECT @InterfaceId AS InterfaceId, @Version AS Version, cl.ClustId, ic.Show, ic.SeqNo, ic.DefaultToOpen FROM [dbo].[InterfaceClusters] ic join [dbo].[ClusterList] cl on ic.ClustNo=cl.ClustNo WHERE [ic].[InterfaceID]=@InterfaceId AND [ic].[Version] =@Version END
--sql content merged from file: \StoredProcedures\EAUI_ResetCustomParamTblInterfaceValues_90.sql CREATE PROCEDURE [dbo].[EAUI_ResetCustomParamTblInterfaceValues_90] ( @UserID nvarchar(20), @UserIP varchar(30), @ParamNo int, @InterfaceID varchar(10), @Version varchar(10), @MarketID varchar(20)) AS BEGIN DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamTblInterfaceValues] WHERE [dbo].[CustomParamTblInterfaceValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblInterfaceValues].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamTblInterfaceValues].[Version]=@Version AND [dbo].[CustomParamTblInterfaceValues].[MarketID]=@MarketID DELETE [dbo].[CustomParamTblInterfaceSMValues] WHERE [dbo].[CustomParamTblInterfaceSMValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamTblInterfaceSMValues].[InterfaceID]=@InterfaceID AND [dbo].[CustomParamTblInterfaceSMValues].[Version]=@Version AND [dbo].[CustomParamTblInterfaceSMValues].[MarketID]=@MarketID EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Interface Parameters', 'Reset parameter fields',@ParamName, @InterfaceID, @Version, @MarketID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetActivityParamsDetails_70](@Param1 varchar(1024),@Param2 varchar(1024), @Param3 varchar(1024)) RETURNS varchar(8000) AS BEGIN DECLARE @Output varchar(8000) SELECT @Output=@Param1 + CASE @Param2 WHEN '' THEN '' ELSE ',' + @Param2 END + CASE @Param3 WHEN '' THEN '' ELSE ',' + @Param3 END RETURN @Output END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceDocType_77](@UserID nvarchar(20),@UserIP varchar(30), @IntfDocTypeNo int)AS BEGIN DECLARE @DocTypeID varchar(10) DECLARE @DocTypeNo int DECLARE @Caption nvarchar(255) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @ParentDocTypeID varchar(10) SELECT @DocTypeID=dtl.DocTypeID, @DocTypeNo=dtl.DocTypeNo, @Caption =dtc.Caption , @InterfaceID=idt.InterfaceID, @Version=idt.Version FROM dbo.InterfaceDocType idt INNER JOIN dbo.DocTypeList dtl ON idt.DocTypeNo = dtl.DocTypeNo INNER JOIN dbo.DocTypeCaption dtc ON dtl.DocTypeNo=dtc.DocTypeNo WHERE idt.IntfDocTypeNo = @IntfDocTypeNo AND dtc.LangCode='en' --check if this is the last child DECLARE @ChildCount int DECLARE @ParentDocTypeNo int SELECT @ParentDocTypeNo = dtl.ParentDocTypeNo FROM dbo.DocTypeList dtl INNER JOIN dbo.InterfaceDocType idt ON dtl.DocTypeNo = idt.DocTypeNo WHERE idt.IntfDocTypeNo = @IntfDocTypeNo SELECT @ChildCount=count(*), @ParentDocTypeID=pdtl.DocTypeID FROM dbo.DocTypeList dtl INNER JOIN dbo.InterfaceDocType idt ON dtl.DocTypeNo= idt.DocTypeNo LEFT OUTER JOIN dbo.DocTypeList pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo WHERE dtl.ParentDocTypeNo=@ParentDocTypeNo AND idt.InterfaceID = @InterfaceID AND idt.Version=@Version GROUP BY pdtl.DocTypeID IF @ChildCount=1 BEGIN RAISERROR ('Document Type ID "%s" can not be removed as it is the last child of "%s"',16,1, @DocTypeID, @ParentDocTypeID) RETURN END BEGIN TRANSACTION ----remove all children if this is a parent Document Type DELETE idt FROM dbo.InterfaceDocType idt JOIN dbo.DocTypeList dtl ON idt.DocTypeNo= dtl.DocTypeNo WHERE idt.InterfaceID = @InterfaceID AND idt.Version=@Version AND dtl.ParentDocTypeNo = @DocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM dbo.InterfaceDocType WHERE [dbo].[InterfaceDocType].[IntfDocTypeNo] =@IntfDocTypeNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC dbo.EAIP_LogActivity_70 @UserID, @UserIP, 'DocTypes','Delete DocType from Interface', @InterfaceID ,@Version,@DocTypeID,@Caption COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_DeleteCollection_70] ( @ColNo int ) AS BEGIN SET XACT_ABORT ON DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] AS a INNER JOIN [dbo].[Profile] AS b ON a.TargetNo=b.ProfNo INNER JOIN [dbo].[Collection] AS c ON b.CustID=c.CustID AND c.ColID=a.ParamValue WHERE a.ParamNo = dbo.EAIF_GetCustomParamNumber_70('localsKey','P') AND a.ParamLevel='P' AND c.ColNo=@ColNo DELETE FROM [dbo].[ProfLocalLimiter2] WHERE [dbo].[ProfLocalLimiter2].[ColNo]=@ColNo DELETE [dbo].[ProfLocalLimiter2] FROM [dbo].[ProfLocalLimiter2] pll JOIN [dbo].[Collection] c ON pll.ColNo=c.ColNo AND c.SharedFrom=@ColNo DELETE from [dbo].[Collection] WHERE [dbo].[Collection].[ColNo] = @ColNo DELETE from [dbo].[Collection] WHERE [dbo].[Collection].[SharedFrom] = @ColNo END
CREATE PROCEDURE [dbo].[EAUI_GetProfileFeatures_102] (@ProfNo int) as Begin DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID],@Version=[dbo].[Profile].[Version] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT ifl.InterfaceFeatureNo, ifl.FeatureName, ISNULL(ints.Description,'') AS Screen, svm.Description AS Type, ISNULL(ISNULL(pfv.FieldValueXml,ifv.FieldValueXml),'') AS FieldValueXml, ifl.AllowProfEdit As AllowFeatureEdit, ifl.AllowProfItemAdd As AllowItemAdd, case when pfv.FieldValueXml is null then 0 else 1 end As IsFeatureCustomized FROM [dbo].[InterfaceFeatureList] ifl LEFT OUTER JOIN [dbo].[InterfaceScreen] ints ON ints.InterfaceID=@InterfaceID AND ints.Version= @Version AND ints.ScreenID = ifl.ScreenID LEFT OUTER JOIN [dbo].[InterfaceFeatureValues] ifv ON ifl.InterfaceID=@InterfaceID AND ifl.Version= @Version AND ifl.InterfaceFeatureNo=ifv.InterfaceFeatureNo AND ifv.ItemNo=0 LEFT OUTER JOIN [dbo].[ProfFeatureValues] pfv ON pfv.ProfNo=@ProfNo AND pfv.InterfaceFeatureNo=ifv.InterfaceFeatureNo AND pfv.ItemNo=0 AND pfv.ItemType='D' INNER JOIN -- Default feature/item customized [dbo].[StringValueMap] svm ON ifl.FeatureType= svm.FieldCode WHERE ifl.InterfaceID=@InterfaceID AND ifl.Version= @Version AND ifl.AllowProfAccess=1 AND -- ifl.DbDependant=0 AND svm.FieldName='FeatureType' order by ifl.FeatureName END
CREATE PROCEDURE [dbo].[EAUI_AddLocalTitles_70] ( @UserID nvarchar(20), @UserIP varchar(15), @CustID varchar(10), @ColNo int, @TitleNoList varchar(8000) ) AS BEGIN DECLARE @YesMessage int DECLARE @NoMessage int DECLARE @AddAlternates bit DECLARE @IsDeleted bit SELECT @AddAlternates = [dbo].[Collection].[AddAlternates], @IsDeleted = [dbo].[Collection].[IsDeleted] FROM dbo.Collection WHERE [dbo].[Collection].[ColNo]=@ColNo IF @IsDeleted = 1 BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Tried to add Titles to deleted Local Collection', @CustID, @ColNo, @TitleNoList RETURN END DECLARE @TitleList table (TitleNo int) BEGIN TRANSACTION EXEC [dbo].[EAIPO_AddYesMessage_70] @CustID,'This title is held locally', @YesMsgNo=@YesMessage OUTPUT EXEC [dbo].[EAIPO_AddNoMessage_70] @CustID,'This title is not held locally', @NoMsgNo=@NoMessage OUTPUT INSERT INTO @TitleList SELECT convert(int,a.Item) FROM dbo.EAIF_GetItemTable_70(@TitleNoList,'+') a IF @AddAlternates=1 INSERT INTO @TitleList SELECT b.TgtTitleNo FROM @TitleList a INNER JOIN [dbo].[TitleLink] b ON a.TitleNo = b.SrcTitleNo INSERT INTO [dbo].[LocalTitle] ([dbo].[LocalTitle].[ColNo], [dbo].[LocalTitle].[TitleNo], [dbo].[LocalTitle].[Subscribe],[dbo].[LocalTitle].[YesMsgNo],[dbo].[LocalTitle].[NoMsgNo],[dbo].[LocalTitle].[Notes],[dbo].[LocalTitle].[SummaryHoldings],[dbo].[LocalTitle].[CallNumber],[dbo].[LocalTitle].[Status]) SELECT @ColNo, a.TitleNo,1,@YesMessage,@NoMessage,NULL,NULL,NULL,'a' FROM ( SELECT a.TitleNo FROM @TitleList a LEFT OUTER JOIN [dbo].[LocalTitle] b ON a.TitleNo= b.TitleNo AND b.ColNo = @ColNo WHERE b.TitleNo IS NULL ) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @LogColName varchar(30) SELECT @LogColName = dbo.EAIF_GetLogColName_70(@ColNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Collections', 'Add Titles to Local Collection', @CustID, @LogColName, @TitleNoList UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=GETDATE() --, AutoRecreate=1 WHERE ([dbo].[Collection].[ColNo]=@ColNo OR [dbo].[Collection].[SharedFrom] = @ColNo) AND [dbo].[Collection].[IsDeleted] = 0 COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetRTACDbInfo_101]( @ShortDBName varchar(10), @Label varchar(10)='live' ) AS BEGIN SELECT 'rtacTarget' AS itemName, [dbo].[DbRTACInfo].[Config] AS ParamValue FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) AND [dbo].[DbRTACInfo].[Config] IS NOT NULL UNION ALL SELECT 'rtacTranslation' as itemName, [dbo].[DbRTACInfo].[Translation] AS ParamValue FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) AND [dbo].[DbRTACInfo].[Translation] IS NOT NULL UNION ALL SELECT 'rtacEnabled' as itemName, CONVERT(VARCHAR(MAX), [dbo].[DbRTACInfo].[Enable]) AS ParamValue FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) UNION ALL SELECT 'rtacILSIntegration' as itemName, [dbo].[DbRTACInfo].[ILSIntegration] AS ParamValue FROM [dbo].[DbRTACInfo] WHERE [dbo].[DbRTACInfo].[DbVerNo] = dbo.EAIF_GetDbVerNo_70( @ShortDBName, @Label ) AND [dbo].[DbRTACInfo].[ILSIntegration] IS NOT NULL END
CREATE PROCEDURE [dbo].[BLL_GetUserGroupDatabase](@CustId varchar(10), @GroupId varchar(10), @Label varchar(10)='live' ) AS BEGIN SELECT DISTINCT m.DbName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON p.ProfNo=d.ProfNo INNER JOIN [dbo].[DbList] m ON d.DbVerNo=m.DbVerNo WHERE p.CustID=@CustId AND p.GroupID=@GroupId AND p.InterfaceID<>'win' AND p.InterfaceID<>'unix' AND d.Enable=1 AND dbo.EAIF_GetDbParamScalarValue_70(m.DbVerNo, 'fullTextAllowed')=1 AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) END
CREATE PROCEDURE [dbo].[EAUI_GetInterfacesForScreen_76] AS BEGIN SELECT ins.InterfaceID, ins.Version, inl.InterfaceName FROM (SELECT DISTINCT [dbo].[InterfaceScreen].[InterfaceID], [dbo].[InterfaceScreen].[Version] FROM [dbo].[InterfaceScreen]) ins INNER JOIN [dbo].[InterfaceLanguage] inl ON ins.InterfaceID = inl.InterfaceID AND ins.Version = inl.Version WHERE inl.LangCode='en' END
Create Procedure [dbo].[EATL_GetGlobalCatalogHoldingTblCaptions_104] (@LangCode varchar(10)) as Select [dbo].[GlobalCatalogHoldingTblCaptions].[CaptionID],[dbo].[GlobalCatalogHoldingTblCaptions].[Caption] FROM [dbo].[GlobalCatalogHoldingTblCaptions] WHERE [dbo].[GlobalCatalogHoldingTblCaptions].[LangCode]=@LangCode
CREATE PROCEDURE dbo.EPCS_GetCatalogPickupLocations_141 ( @DbName VARCHAR(10) , @DbLabel VARCHAR(10) ) AS BEGIN SELECT pl.LocationID , pl.DisplayName FROM dbo.DbPickupLocation pl JOIN dbo.DbList d ON d.DbVerNo = pl.DbVerNo WHERE d.DbName = @DbName AND d.DbLabel = @DbLabel; END
CREATE PROCEDURE [eadmin].EAUI_GetInterfaceExpandersToAttach_90 ( @InterfaceID varchar(10), @Version varchar(10)) AS BEGIN SELECT g.ControlName, g.ControlName+' ('+ gc.DefCaption+')' AS Caption FROM [dbo].[GlobalExpander] g LEFT OUTER JOIN [dbo].[InterfaceExpander] i ON g.ControlName = i.ControlName AND i.InterfaceID=@InterfaceID AND i.Version=@Version INNER JOIN dbo.GlobalExpanderCaption AS gc ON g.ControlName = gc.ControlName WHERE i.ControlName is null and gc.LangCode ='en' END
CREATE PROCEDURE [dbo].[EAUI_GetDocTypeDetails_77] (@DocTypeNo int, @LangCode varchar(10))AS BEGIN SELECT dtl.DocTypeID, dtl.SearchString, dtl.SortOption, dtl.SearchImage, dtl.ResultImage, dtl.DefValue, dtl.Category, pdtl.DocTypeID AS ParentDocTypeID, dtc.Caption, dtc.MouseOverText FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo=pdtl.DocTypeNo LEFT OUTER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo AND dtc.LangCode=@LangCode WHERE dtl.DocTypeNo = @DocTypeNo END
CREATE PROCEDURE [dbo].[EAIP_ReorderInterfacePrimaryDatabases_161] ( @UserID NVARCHAR(20), @UserIP VARCHAR(15), @InterfaceID VARCHAR(10), @Version VARCHAR(10), @DbVerNos VARCHAR(MAX), @SeqNos VARCHAR(MAX)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @InvalidDbVerNo INT DECLARE @InterfacePrimaryDatabases TABLE ( DbVerNo INT, SeqNo INT ) INSERT INTO @InterfacePrimaryDatabases (DbVerNo, SeqNo) SELECT CONVERT(INT, LTRIM(RTRIM([dbo].[EAIF_GetItemValueTable_70].[Item]))), CONVERT(INT, LTRIM(RTRIM([dbo].[EAIF_GetItemValueTable_70].[Value]))) FROM dbo.EAIF_GetItemValueTable_70(@DbVerNos, @SeqNos, '+') SELECT @InvalidDbVerNo = DbVerNo FROM @InterfacePrimaryDatabases WHERE DbVerNo NOT IN (SELECT [dbo].[InterfacePrimaryDatabases].[DbVerNo] FROM [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID] = @InterfaceID AND [dbo].[InterfacePrimaryDatabases].[Version] = @Version) IF (@InvalidDbVerNo IS NOT NULL) BEGIN RAISERROR('Primary Database (DbVerNo) %i is either invalid or does not belong to its Interface-Version %s-%s.', 16,-1, @InvalidDbVerNo, @InterfaceID, @Version) RETURN END BEGIN TRANSACTION UPDATE IPD SET IPD.SeqNo = CASE WHEN T.SeqNo = NULL THEN 1 WHEN T.SeqNo = '' THEN 1 ELSE T.SeqNo END FROM [dbo].[InterfacePrimaryDatabases] IPD INNER JOIN @InterfacePrimaryDatabases T ON T.DbVerNo = IPD.DbVerNo WHERE IPD.InterfaceID = @InterfaceID AND IPD.Version = @Version IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface', 'Update Primary Databases', @InterfaceID, @Version, @DbVerNos COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAUI_UpdateProductOfferingLimiters_79](@UserID nvarchar(20), @UserIP varchar(15),@PrdOffID varchar(20),@PrdID varchar(10), @LimiterList varchar(100), @Activity char(1))AS BEGIN DECLARE @ActDescr varchar(20) IF @Activity='a' SET @ActDescr='Attach' IF @Activity='d' SET @ActDescr='Detach' CREATE TABLE #WRK_ProfDbLimiter2 (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int, SeqNo int, AttachedToOtherPO int) BEGIN TRANSACTION INSERT INTO #WRK_ProfDbLimiter2 SELECT p.ProfNo, pdb.DbVerNo, ins.IntfScreenNo, ll.LimiterNo, -1, CASE WHEN @Activity='d' THEN dbo.EAIF_IsLimiterAttachedToOtherCustPO_79(p.CustID,@PrdOffID, @PrdID, ll.LimiterId) ELSE 0 END FROM EASUPPORT.dbo.ProductOffering po INNER JOIN EASUPPORT.dbo.ProductPackage pp ON pp.PrdOffNo = po.PrdOffNo INNER JOIN EASUPPORT.dbo.CustSubscription sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON po.PrdOffNo = sub.PrdOffNo INNER JOIN [dbo].[Profile] p WITH(INDEX(IX_Profile)) ON sub.CustID = p.CustID INNER JOIN [dbo].[DbList] db ON db.DbName = pp.ProductID INNER JOIN [dbo].[ProfDatabase] pdb ON pdb.DbVerNo = db.DbVerNo AND p.ProfNo = pdb.ProfNo INNER JOIN [dbo].[InterfaceScreen] ins ON p.InterfaceID= ins.InterfaceID AND p.Version = ins.Version INNER JOIN [dbo].[DbLimiter] dbl ON db.DbVerNo = dbl.DbVerNo INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = dbl.LimiterNo INNER JOIN dbo.EAIF_GetItemTable_70(@LimiterList, '+') a ON ll.LimiterId = a.Item WHERE po.PrdOffID = @PrdOffID AND pp.ProductID = @PrdID AND db.DbLabel = 'live' ORDER BY p.ProfNo, pdb.DbVerNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END CREATE INDEX IX_TMP_ProfDbVer ON #WRK_ProfDbLimiter2(ProfNo, DbVerNo, LimiterNo) UPDATE #WRK_ProfDbLimiter2 SET [SeqNo] = dbl.SeqNo FROM #WRK_ProfDbLimiter2 a INNER JOIN [dbo].[DbLimiter] dbl ON a.DbVerNo=dbl.DbVerNo AND dbl.LimiterNo=a.LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END IF (@Activity='a') BEGIN INSERT INTO [dbo].[ProfDbLimiter2]([pdbl].[ProfNo],[pdbl].[DbVerNo],[pdbl].[IntfScreenNo],[pdbl].[LimiterNo],[pdbl].[Show],[pdbl].[DefValue],[pdbl].[SeqNo]) SELECT distinct a.ProfNo , a.DbVerNo, a.IntfScreenNo, a.LimiterNo,0,'On', a.SeqNo FROM #WRK_ProfDbLimiter2 a LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdbl ON a.ProfNo=pdbl.ProfNo AND a.DbVerNo=pdbl.DbVerNo AND a.IntfScreenNo=pdbl.IntfScreenNo AND a.LimiterNo=pdbl.LimiterNo WHERE pdbl.ProfNo is null IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[ProfDbLimiter2] SET [Show]=0, [DefValue]='On' FROM #WRK_ProfDbLimiter2 a INNER JOIN [dbo].[ProfDbLimiter2] pdbl ON a.ProfNo=pdbl.ProfNo AND a.DbVerNo=pdbl.DbVerNo AND a.IntfScreenNo=pdbl.IntfScreenNo AND a.LimiterNo=pdbl.LimiterNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'Profiles', 'Add ProductOffering Limiters for a Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, ins.Description,ll.LimiterId, '' FROM #WRK_ProfDbLimiter2 a INNER JOIN [dbo].[Profile] prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] dbl ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] ins ON prf.InterfaceID = ins.InterfaceID AND prf.Version=ins.Version INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = a.LimiterNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END if (@Activity='d') BEGIN DELETE [dbo].[ProfDbLimiter2] FROM #WRK_ProfDbLimiter2 a INNER JOIN [dbo].[ProfDbLimiter2] pdbl ON a.ProfNo=pdbl.ProfNo AND a.DbVerNo=pdbl.DbVerNo AND a.IntfScreenNo=pdbl.IntfScreenNo AND a.LimiterNo=pdbl.LimiterNo WHERE a.AttachedToOtherPO=0 IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'Profiles', 'Remove ProductOffering Limiters for a Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, ins.Description,ll.LimiterId, '' FROM #WRK_ProfDbLimiter2 a INNER JOIN [dbo].[Profile] prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] dbl ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] ins ON prf.InterfaceID = ins.InterfaceID AND prf.Version=ins.Version INNER JOIN [dbo].[LimiterList] ll ON ll.LimiterNo = a.LimiterNo WHERE a.AttachedToOtherPO=0 ORDER BY prf.CustID,prf.GroupID,prf.ProfID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'Products & Product Offerings', 'Update Product Offering Limiters', @ActDescr, @PrdOffID, @PrdID, @LimiterList,'' IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION EXEC EASUPPORT.dbo.EAIP_UpdateProductOfferingLimiters_79 @PrdOffID,@PrdID,@LimiterList, @Activity END
CREATE FUNCTION [dbo].[EAIF_InterfaceTopicLangAndCaptions_77](@IntfTopicNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @Captions nvarchar(max) DECLARE @Langs varchar(max) SET @Captions=N'' SET @Langs='' SELECT @Captions=@Captions+N'|'+[dbo].[InterfaceTopicCaption].[Caption], @Langs=@Langs+'|'+[dbo].[InterfaceTopicCaption].[LangCode] FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo] =@IntfTopicNo IF LEN(@Captions)>1 SET @Captions=SUBSTRING(@Captions, 2, LEN(@Captions)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @Captions+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerProfileGroupIDs_142](@CustID varchar(10), @Interfaces VARCHAR(max)) AS BEGIN Select distinct [p].[GroupID] from [dbo].[Profile] p INNER JOIN dbo.EAIF_GetItemTable_70 (@Interfaces,',') s ON s.Item=p.InterfaceID Where [p].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAIP_DeleteProfFeatureSelMode_102] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int ) AS BEGIN DECLARE @LoggingProfile varchar(30) SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) DELETE FROM [dbo].[ProfFeatureSelMode] WHERE [dbo].[ProfFeatureSelMode].[ProfNo]=@ProfNo AND [dbo].[ProfFeatureSelMode].[InterfaceFeatureNo]=@InterfaceFeatureNo IF @@ROWCOUNT <> 0 EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Delete profilefeatureSelMode', @LoggingProfile, @InterfaceFeatureNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceCVType_162] (@InterfaceID VARCHAR(10), @Version VARCHAR(10), @ContentVerticalID VARCHAR(20) ) AS BEGIN SELECT l.ContentVerticalID, l.ContentVerticalName, l.Description, l.ExternalSource, l.ExternalIndexName, d.DbTarget, d.SearchServiceAPIConfigXML FROM dbo.ContentVerticalType l INNER JOIN dbo.InterfaceCVType i ON l.ContentVerticalNo = i.ContentVerticalNo AND i.InterfaceID=@InterfaceID AND i.Version=@Version LEFT OUTER JOIN dbo.InterfaceCVTypeDetails d ON i.IntfCVTypeNo=d.IntfCVTypeNo WHERE l.ContentVerticalID = @ContentVerticalID END
CREATE PROCEDURE [dbo].[EAUI_ResetCustomParamTblProfValues_90] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @ParamNo int) AS BEGIN DECLARE @ParamName varchar(50) SELECT @ParamName = [dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo DECLARE @Profname varchar(50) SELECT @ProfName = dbo.EAIF_GetProfDottedName_70(@ProfNo) BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamTblFieldValues] WHERE [dbo].[CustomParamTblFieldValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamTblFieldValues].[ParamNo]=@ParamNo DELETE [dbo].[CustomParamTblSMValues] WHERE [dbo].[CustomParamTblSMValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamTblSMValues].[ParamNo]=@ParamNo EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profile Parameters', 'Reset parameter fields',@ParamName, @Profname COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_GetAdminParamValue_70](@ParamName varchar(100)) RETURNS varchar(255) AS BEGIN DECLARE @ParamValue varchar(255) SET @ParamValue='' SELECT @ParamValue = [dbo].[AdminState].[ParamValue] FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName]=@ParamName RETURN @ParamValue END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceFeature_77] (@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int )AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION DELETE [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Delete Feature', @InterfaceID,@Version,@FeatureName COMMIT TRANSACTION END
-- To be called from transaction scope that updates personalaccount table -- and sets UserType=2, AdminGroup='siteadmin'where WHERE Affiliation = @ParentID AND UserType=3 -- output variable @UpdateConsAdminToSiteAdmin will be set to 1 if PersonalAccount update is needed. CREATE PROCEDURE [dbo].[EAIP_DeleteCustGroup_100](@ParentID varchar(10) , @ChildID varchar(10), @ArchivalID int =null, @UpdateConsAdminToSiteAdmin bit OUTPUT) AS BEGIN SELECT @UpdateConsAdminToSiteAdmin = 0; --EADM-4689 Fix:Trial Consortium customer cannot get to own site in Admin site. IF (@ParentID <> @ChildID) -- DELETE FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@ParentID AND [dbo].[CustomerGroup].[ChildID]=@ChildID IF NOT EXISTS (SELECT 1 FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@ParentID AND [dbo].[CustomerGroup].[ChildID]<>@ParentID) BEGIN UPDATE [dbo].[Customer] SET [dbo].[Customer].[Consortium]=0 , [dbo].[Customer].[TimeStamp] = GETDATE() WHERE [dbo].[Customer].[CustID]=@ParentID DELETE FROM [dbo].[CustomerGroup] WHERE [dbo].[CustomerGroup].[ParentID]=@ParentID AND [dbo].[CustomerGroup].[ChildID]=@ParentID --Update EASUPPORT.dbo.AdminUser --SET UserType=2, AdminGroup='siteadmin' --WHERE Affiliation = @ParentID AND UserType=3 SELECT @UpdateConsAdminToSiteAdmin = 1; IF @ArchivalID is not null INSERT INTO EASUPPORT.dbo.ArchiveCustGroupProfile ([EASUPPORT].[dbo].[ArchiveCustGroupProfile].[ArchiveID],[EASUPPORT].[dbo].[ArchiveCustGroupProfile].[CustID],[EASUPPORT].[dbo].[ArchiveCustGroupProfile].[Activity]) VALUES (@ArchivalID,@ParentID,'Customer Group removed') END END
/*************************************************************************/ CREATE PROCEDURE [dbo].[EAUI_GetProfileInfo_70] (@ProfNo int) AS BEGIN SELECT a.ProfID, a.ProfName, a.InterfaceID, a.Version, a.MarketID, a.STMode, a.DefLangCode, a.DbLabel, b.InterfaceName, a.ProfPwd, ISNULL(a.URL,iv.SiteURL) As URL,c.CustType, iv.InterfaceType FROM [dbo].[Profile] a JOIN [dbo].[InterfaceLanguage] b ON a.InterfaceID = b.InterfaceID AND a.Version = b.Version AND b.LangCode='en' JOIN [dbo].[InterfaceVersion] iv ON a.InterfaceID = iv.InterfaceID AND a.Version = iv.Version JOIN [dbo].[Customer] c ON c.CustID=a.CustID WHERE a.ProfNo = @ProfNo --AND -- a.InterfaceID = b.InterfaceID AND -- a.Version = b.Version AND -- b.LangCode='en' AND -- a.InterfaceID = iv.InterfaceID AND -- a.Version = iv.Version END
CREATE PROCEDURE [dbo].[EAUI_AddMasterTitle_70]( @UserID nvarchar(20), @UserIP varchar(15), @Title nvarchar(430), @ISSN varchar(20), @eISSN varchar(20), @DocType varchar(5), @PLinksAllowed bit) AS BEGIN DECLARE @TitleNo int IF @ISSN = '' SET @ISSN = null IF @eISSN = '' SET @eISSN = null SET @ISSN = replace(@ISSN,'-','') SET @eISSN = replace(@eISSN,'-','') EXEC [dbo].[EAIPO_AddMasterTitle_81] @Title, @ISSN, @eISSN, null, null, null, null, @DocType,'ui',@PLinksAllowed, @TitleNo OUTPUT EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Titles', 'Add Master Title', @Title, @ISSN, @eISSN, @DocType END
CREATE PROCEDURE [dbo].[EPCS_GetSecondaryDBs_70](@DbVerNo int) AS BEGIN SELECT d.DbName FROM (SELECT b.AuthDbVerNo, b.SeqNo FROM [dbo].[DbList] AS a INNER JOIN [dbo].[DbAuthority] AS b ON a.DbVerNo = b.MainDbVerNo WHERE a.DbVerNo = @DbVerNo ) AS c INNER JOIN [dbo].[DbList] AS d ON c.AuthDbVerNo = d.DbVerNo ORDER BY c.SeqNo END
CREATE PROCEDURE [dbo].[BLL_LS_GetILSLink](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN DECLARE @ProfNo int DECLARE @InterfaceID varchar(10) DECLARE @ProfileID varchar(10) SELECT @ProfNo=dbo.EAIF_GetLinkSourceProfile_70(@CustID, @GroupID) --SELECT @ProfileID=ProfID, @InterfaceId=InterfaceID --FROM PROFILE WHERE ProfNo=@ProfNo DECLARE @profCustomLinksNo int, @customerCustomLinkNo int SET @profCustomLinksNo=dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') DECLARE @ItemNameTable table(ItemIndex int identity(1,1) PRIMARY KEY, ItemName varchar(255)) INSERT INTO @ItemNameTable SELECT [b].[ItemName] FROM [dbo].[CustomParamXmlValues] b WHERE [b].[ParamNo]=@profCustomLinksNo AND [b].[TargetNo]=@ProfNo AND [b].[ParamLevel]='P' DECLARE @ItemCount int, @ItemIndex int SELECT @ItemCount=Max(ItemIndex) FROM @ItemNameTable IF @ItemCount=0 RETURN SET @customerCustomLinkNo=dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') DECLARE @xmlDocHandle int DECLARE @xmlText varchar(8000) DECLARE @xmlTextLen int DECLARE @PrfIlsLinkTable table(URLMask varchar(4096), ReqFields varchar(255), URLParams varchar(2048), LinkText varchar(max), LinkIcon varchar(255), MouseOverText varchar(max), WindowName varchar(100), NewWindow bit, ShowOnResultList bit, HideIfFullText bit, ShowIfLocal int, FilterColID varchar(50), ShowOnPublList bit, showOnDetailDisp bit, showOnLinkSource bit) SET @ItemIndex = 0 WHILE @ItemIndex < @ItemCount BEGIN SET @ItemIndex = @ItemIndex+1 SELECT @xmlText=ParamValue FROM [dbo].[CustomParamXmlValues] a INNER JOIN @ItemNameTable b ON a.ItemName=b.ItemName WHERE a.ParamLevel='C' AND a.ParamNo=@customerCustomLinkNo AND b.ItemIndex=@ItemIndex --Create an internal representation of the XML document. EXEC [dbo].[sp_xml_preparedocument] @xmlDocHandle OUTPUT, @xmlText -- Execute a SELECT statement that uses the OPENXML rowset provider. INSERT INTO @PrfIlsLinkTable SELECT b.baseURL + CASE ISNULL(b.queryString,'') WHEN '' THEN '' ELSE '?'+b.queryString END as 'URLMask', b.reqFields, b.windowParams as 'URLParams', b.linkText, b.linkIcon as 'LinkIcon', b.mouseOverText, b.windowName as 'WindowName', NewWindow=CASE b.newWindow WHEN 'y' THEN 1 ELSE 0 END, ShowOnResultList=CASE b.showOnResultList WHEN 'y' THEN 1 ELSE 0 END, HideIfFullText=CASE b.hideIfFullText WHEN 'y' THEN 1 ELSE 0 END, ShowIfLocal=CASE b.showIfLocal WHEN 'in' THEN 0 WHEN 'not' THEN 1 ELSE 2 END, b.colCustID + '.' + b.colID as 'FilterColID', ShowOnPublList=CASE b.showOnPublicationList WHEN 'y' THEN 1 ELSE 0 END, showOnDetailDisp=CASE b.showOnDetailDisplay WHEN 'y' THEN 1 ELSE 0 END, showOnLinkSource=CASE b.showOnLinkSource WHEN 'y' THEN 1 ELSE 0 END FROM OPENXML (@xmlDocHandle, '/customerCustomLink',2) WITH (baseURL varchar(2048) '@baseURL', reqFields varchar(max) '@reqFields', queryString varchar(2048) '@queryString', windowParams varchar(2048) '@windowParams', linkText varchar(max) 'linkText[@lang="en"]', linkIcon varchar(255) '@linkIcon', mouseOverText varchar(max) 'mouseOverText[@lang="en"]', windowName varchar(100) '@windowName', newWindow char(1) '@newWindow', showOnResultList char(1) '@showOnResultList', hideIfFullText char(1) '@hideIfFullText', showIfLocal varchar(10) '@showIfLocal', colID varchar(50) 'filterCollection/@colID', colCustID varchar(10) 'filterCollection/@custID', showOnPublicationList char(1) '@showOnPublicationList', showOnDetailDisplay char(1) '@showOnDetailDisplay', showOnLinkSource char(1) '@showOnLinkSource' ) b EXEC [dbo].[sp_xml_removedocument] @xmlDocHandle END SELECT * FROM @PrfIlsLinkTable END
CREATE PROCEDURE [dbo].[EAUI_GetInterfacesForScreenNoAutoAdd_76] AS BEGIN SELECT ins.InterfaceID, ins.Version, inl.InterfaceName FROM (SELECT DISTINCT [dbo].[InterfaceScreen].[InterfaceID], [dbo].[InterfaceScreen].[Version] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[AutoAddLimiter]=0) ins INNER JOIN [dbo].[InterfaceLanguage] inl ON ins.InterfaceID = inl.InterfaceID AND ins.Version = inl.Version WHERE inl.LangCode='en' END
CREATE Procedure [dbo].[EATL_GetGlobalCustomParams_90] @LangCode varchar(10) as Select [cpl].[ParamName], cpxf.FieldName, cptgdsv.ItemID, cptgdsv.[Value] From [dbo].[CustomParamTblGlobalDefaultSMValues] cptgdsv join [dbo].[CustomParamXmlFields] cpxf on cptgdsv.FieldNo=cpxf.FieldNo and cptgdsv.ParamNo=cpxf.ParamNo join [dbo].[CustomParamList] cpl on cptgdsv.ParamNo=cpl.ParamNo where [cptgdsv].[LangCode]=@LangCode Order by [cpl].[ParamName], cpxf.FieldName, cptgdsv.ItemID
CREATE PROCEDURE [dbo].[EPCS_GetCommunityURL_70](@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SET NOCOUNT ON SELECT cpv.ParamValue+'community.aspx' FROM [dbo].[ConfigApplication] ca WITH (NOLOCK) INNER JOIN [dbo].[ConfigParamList] cpl WITH (NOLOCK) ON ca.ApplicationNo = cpl.ApplicationNo INNER JOIN [dbo].[ConfigParamScalarValues] cpv WITH (NOLOCK) ON cpv.TargetNo = ca.ApplicationNo AND cpv.ParamLevel='A' AND cpl.ParamNo=cpv.ParamNo WHERE ca.ApplicationID='webauth' AND cpl.ParamName='authGenericWebSite' END
-- Create ebi.GetCustomerFederatedSearchFlags proc CREATE PROCEDURE [ebi].[GetCustomerFederatedSearchFlags] AS BEGIN SELECT ISNULL(ISNULL(d.ParamValue, c.DefValue), e.DefValue) AS FederatedSearchFlag , p.CustID, p.ProfID, p.GroupID, p.InterfaceID FROM [dbo].[Profile] p LEFT JOIN [dbo].[InterfaceParamList] a ON a.Version = p.Version AND a.InterfaceID = p.InterfaceID LEFT OUTER JOIN [dbo].[CustomParamDefaults] c ON a.ParamNo = c.ParamNo AND c.InterfaceID = p.InterfaceID AND c.Version = p.Version AND c.MarketID = p.MarketID AND c.STMode = p.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = p.ProfNo AND d.ParamLevel = 'P' AND d.ParamNo = a.ParamNo JOIN [dbo].[CustomParamList] e ON e.ParamNo = a.ParamNo WHERE a.InterfaceID = p.InterfaceID AND a.Version = p.Version AND a.ParamNo = e.ParamNo --AND ( a2.Mode = p.STMode -- OR a2.Mode IS NULL -- ) AND e.ParamName = 'useFederatedSearch' --AND p.CustID = 's1018497' --AND p.ProfNo = 2237390 END
CREATE PROCEDURE [dbo].[EAUI_GetDocTypeList_77] (@DisplCaption nvarchar(255))AS BEGIN SELECT dtl.DocTypeNo, dtl.DocTypeID, dtc.Caption, dtl.SearchString, sm.Description AS Category, pdtl.DocTypeID AS ParentID, CASE WHEN dtl.DefValue=0 THEN 'Off' ELSE 'On' END AS DefValue FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE dtc.LangCode = 'en' AND sm.FieldName = 'DocTypeCategory' AND dtc.Caption >=@DisplCaption Order BY dtc.Caption END
--sql content merged from file: \StoredProcedures\EAIP_ResetCustRights_88.sql CREATE PROCEDURE [dbo].[EAIP_ResetCustRights_88]( @CallerUserID nvarchar(255),@CallerUserIP varchar(15), @CustID varchar(10),@PrdOffNo int, @OldMode char(1)='T', @NewMode char(1)='X' ) AS BEGIN BEGIN TRANSACTION Declare @Source char(1) SELECT @Source=[EASUPPORT].[dbo].[ProductOffering].[SourceType] FROM EASUPPORT.dbo.ProductOffering WHERE [EASUPPORT].[dbo].[ProductOffering].[PrdOffNo]=@PrdOffNo DECLARE @WRK_Product TABLE (DbVerNo int PRIMARY KEY, DbName varchar(10)) DECLARE @WRK_Profile TABLE (ProfNo int PRIMARY KEY) -- all products belonging to this product offering INSERT INTO @WRK_Product SELECT [dbl].[DbVerNo], pkg.ProductID FROM [dbo].[DbList] dbl INNER JOIN EASUPPORT.dbo.ProductPackage pkg ON dbl.DbName = pkg.ProductID WHERE pkg.PrdOffNo = @PrdOffNo Insert @WRK_Product Select dbl.DbVerNo, dbl.DbName From [dbo].[DbList] dbl join [dbo].[CustExternalDbList] cedbl on dbl.DbVerNo=cedbl.DbVerNo join [dbo].[Customer] c on cedbl.CustNo=c.CustNo where dbl.SourceType=@Source and c.CustID=@CustID DELETE a FROM @WRK_Product a INNER JOIN EASUPPORT.dbo.ProductPackage pkg ON a.DbName=pkg.ProductID INNER JOIN EASUPPORT.dbo.CustSubscription sub ON pkg.PrdOffNo=sub.PrdOffNo WHERE sub.CustID=@CustID AND sub.Mode<>@NewMode /* Save the the profiles that are affected */ INSERT INTO @WRK_Profile SELECT distinct prf.ProfNo FROM @WRK_Product wp INNER JOIN [dbo].[ProfDatabase] pdb ON wp.DbVerNo = pdb.DbVerNo INNER JOIN [dbo].[Profile] prf ON pdb.ProfNo = prf.ProfNo WHERE prf.CustID = @CustID AND pdb.Mode = @OldMode /* Log the databases where Mode is reset from ProfDatabase. */ INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Updated Profile Database Mode to' + @NewMode, (prf.CustID + '.' + prf.GroupID + '.' + prf.ProfID), wp.DbName, NULL, NULL, NULL FROM @WRK_Product wp INNER JOIN [dbo].[ProfDatabase] pdb ON wp.DbVerNo = pdb.DbVerNo INNER JOIN [dbo].[Profile] prf ON pdb.ProfNo = prf.ProfNo WHERE prf.CustID = @CustID Update [dbo].[ProfDatabase] SET [Mode]=@NewMode FROM @WRK_Product wp JOIN [dbo].[ProfDatabase] pdb ON wp.DbVerNo=pdb.DbVerNo JOIN [dbo].[Profile] prf ON pdb.ProfNo=prf.ProfNo WHERE prf.CustID=@CustID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfAuthorityDbSettings_99.sql CREATE PROCEDURE dbo.EAUI_UpdateProfAuthorityDbSettings_99 ( @UserID nvarchar(20), @UserIP varchar(20), @ProfNo int, @AuthDbVerNo int, @BrowseMode smallint, @LogicalOperator smallint ) AS BEGIN TRY Declare @defaultThesaurusBrowseMode int Declare @defaultThesaurusLogicalOperator int DECLARE @DbWrkFile table (ProfNo int,MainDbVerNo int, AuthDbVerNo int,BrowseMode int,LogicalOperator int) Set @defaultThesaurusBrowseMode=ISNULL(dbo.EAIF_GetDbParamScalarValue_70(@AuthDbVerNo,'defaultThesaurusSearchMode'),'1'); Set @defaultThesaurusLogicalOperator=ISNULL(dbo.EAIF_GetDbParamScalarValue_70(@AuthDbVerNo,'defaultThesaurusLogicalOperator'),'0'); BEGIN TRANSACTION -- If the input values are same as default values, then remove the entry from the ProfAuthDbDefaults table. -- ProfAuthDbDefaults should contain only customized values. If (@BrowseMode = @defaultThesaurusBrowseMode and @LogicalOperator = @defaultThesaurusLogicalOperator) Delete dbo.ProfAuthDbDefaults Where [dbo].[ProfAuthDbDefaults].[ProfNo]=@ProfNo and [dbo].[ProfAuthDbDefaults].[AuthDbVerNo]=@AuthDbVerNo Else Begin /* Get all the main dbver no that are attached to this Authority db*/ Insert @DbWrkFile Select @ProfNo,a.MainDbVerNo,a.AuthDbVerNo,@BrowseMode,@LogicalOperator From [dbo].[ProfDatabase] p Inner Join dbo.DbAuthority a ON (a.MainDbVerNo=p.DbVerNo and a.AuthDbVerNo=@AuthDbVerNo) Where p.ProfNo=@ProfNo and p.Enable=1 Begin /* Insert/Update from the workfile*/ MERGE dbo.ProfAuthDbDefaults as T USING @DbWrkFile as S ON (T.ProfNo=S.ProfNo and T.MainDbVerNo=S.MainDbVerNo and T.AuthDbVerNo = S.AuthDbVerNo) WHEN MATCHED THEN UPDATE SET T.BrowseMode=S.BrowseMode, T.BoolOperator=S.LogicalOperator WHEN NOT MATCHED BY TARGET THEN INSERT ([ProfNo],[MainDbVerNo],[AuthDbVerNo],[BrowseMode],[BoolOperator]) VALUES (S.ProfNo,S.MainDbVerNo,S.AuthDbVerNo,S.BrowseMode,S.LogicalOperator); EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Customer Profile', 'Update Prof Authority Database Settings', @ProfNo, @AuthDbVerNo,@BrowseMode,@LogicalOperator end end COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE FUNCTION [dbo].[EAIF_InterfaceTopicLangAndMouseOverTexts_77](@IntfTopicNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @MouseOverTexts nvarchar(max) DECLARE @Langs varchar(max) SET @MouseOverTexts=N'' SET @Langs='' SELECT @MouseOverTexts=@MouseOverTexts+N'|'+[dbo].[InterfaceTopicCaption].[MouseOverText], @Langs=@Langs+'|'+[dbo].[InterfaceTopicCaption].[LangCode] FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo] =@IntfTopicNo IF LEN(@MouseOverTexts)>1 SET @MouseOverTexts=SUBSTRING(@MouseOverTexts, 2, LEN(@MouseOverTexts)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @MouseOverTexts+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerProfileInterfaceID_142](@CustID varchar(10)) AS BEGIN Select distinct [dbo].[Profile].[InterfaceID] from [dbo].[Profile] Where [dbo].[Profile].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAIP_DeleteProfFeatureValues_102] ( @UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @InterfaceFeatureNo int, @ItemNo int, @ItemType Char(1) ) AS BEGIN DECLARE @LoggingProfile varchar(30) SELECT @LoggingProfile = dbo.EAIF_GetProfDottedName_70(@ProfNo) DELETE FROM [dbo].[ProfFeatureValues] WHERE [dbo].[ProfFeatureValues].[ProfNo]=@ProfNo AND [dbo].[ProfFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[ProfFeatureValues].[ItemNo]=@ItemNo AND [dbo].[ProfFeatureValues].[ItemType]=@ItemType IF @@ROWCOUNT <> 0 EXEC [dbo].[EAIP_LogActivity_70] @UserID ,@UserIP, 'Profiles', 'Delete ProfFeatureValues', @LoggingProfile, @InterfaceFeatureNo, @ItemNo, @ItemType END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceCVTypeList_162] (@InterfaceID VARCHAR(10), @Version VARCHAR(10), @startRowIndex INT=1, -- = 1+pagesize*n (n = 0, 1, 2,...) @endRowIndex INT=21 -- Request 1 page plus one row of data, assuming pagesize is 20 ) AS BEGIN SELECT * FROM ( SELECT TOP(@endRowIndex) ROW_NUMBER() OVER(ORDER BY [cvt].[ContentVerticalID]) AS RowNumber, [icvt].[IntfCVTypeNo], [cvt].[ContentVerticalID], [cvt].[ContentVerticalName], [cvt].[Description], [cvt].[ExternalSource], [cvt].[ExternalIndexName] FROM [dbo].[InterfaceCVType] icvt JOIN dbo.ContentVerticalType cvt ON icvt.ContentVerticalNo=cvt.ContentVerticalNo WHERE [icvt].[InterfaceID]=@InterfaceID AND [icvt].[Version]=@Version) a WHERE [a].[RowNumber] >= @startRowIndex ORDER BY [a].[ContentVerticalID] END
--sql content merged from file: \StoredProcedures\EAUI_ResetDbParamSourceTypeDefault_99.sql CREATE procedure [dbo].[EAUI_ResetDbParamSourceTypeDefault_99] (@UserID nvarchar(20), @UserIP varchar(15), @ParamNo int, @SourceType char(1)) as Begin Begin Try Begin Transaction Delete [dbo].[DbParamSourceTypeDefaults] where [dbo].[DbParamSourceTypeDefaults].[ParamNo]=@ParamNo and [dbo].[DbParamSourceTypeDefaults].[SourceType]=@SourceType EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'ResetDbParamSourceType', @ParamNo, @SourceType Commit Transaction End try Begin catch rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch End
CREATE FUNCTION dbo.EAIF_GetBrowseDescriptions_76(@DbVerNo int, @BrowseOptionNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+a.Description +' ' FROM [dbo].[DbBrowseOptionCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[BrowseOptionNo]=@BrowseOptionNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceFeatureField_77](@UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int,@FieldName varchar(50))AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION DELETE [dbo].[InterfaceFeatureFields] WHERE [dbo].[InterfaceFeatureFields].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureFields].[FieldName]=@FieldName IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Delete Feature Field', @InterfaceID,@Version,@FeatureName,@FieldName COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EAIP_DeleteCustInterface_70](@CustID varchar(10), @InterfaceID varchar(20)) AS BEGIN BEGIN TRANSACTION DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo=b.ProfNo WHERE a.ParamLevel='P' AND b.CustID=@CustID AND b. InterfaceID=@InterfaceID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE [dbo].[CustomParamXmlValues] FROM [dbo].[CustomParamXmlValues] a INNER JOIN [dbo].[Profile] b ON a.TargetNo=b.ProfNo WHERE a.ParamLevel='P' AND b.CustID=@CustID AND b.InterfaceID=@InterfaceID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DELETE FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID AND [dbo].[Profile].[InterfaceID]=@InterfaceID IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
--sql content merged from file: \StoredProcedures\EAUI_GetProfileLibName_70.sql CREATE PROCEDURE [dbo].[EAUI_GetProfileLibName_70] (@ProfNo int) AS BEGIN DECLARE @Value nvarchar(4000) SELECT @Value = dbo.EAIF_GetProfileParamScalarValue_70(@ProfNo , 'libName') IF @Value='{CustName}' SELECT @Value= a.CustName From [dbo].[Customer] a INNER JOIN [dbo].[Profile] b ON a.CustID = b.CustID Where b.ProfNo = @ProfNo SELECT @Value END
CREATE PROCEDURE [dbo].[EAUI_AddMDbAthority_90] (@UserID nvarchar(20), @UserIP varchar(30),@ID varchar(10), @Desc nvarchar(255), @LinkText nvarchar(255), @MouseOverText nvarchar(255), @ContentTypes varchar(8000)) AS BEGIN IF EXISTS (SELECT 1 FROM [dbo].[MultiDbAuthList] WHERE [dbo].[MultiDbAuthList].[MultiDbAuthID]=@ID ) BEGIN RAISERROR('The MultiDb Authority %s already exists',16,-1,@ID) RETURN END BEGIN TRANSACTION INSERT INTO [dbo].[MultiDbAuthList] ([dbo].[MultiDbAuthList].[MultiDbAuthID], [dbo].[MultiDbAuthList].[Description]) VALUES (@ID, @Desc) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END INSERT INTO [dbo].[MultiDbAuthCaption]([dbo].[MultiDbAuthCaption].[MultiDbAuthID], [dbo].[MultiDbAuthCaption].[LangCode], [dbo].[MultiDbAuthCaption].[LinkText], [dbo].[MultiDbAuthCaption].[MouseOverText]) VALUES (@ID, 'en', @LinkText, @MouseOverText) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END if (@ContentTypes <> '') INSERT INTO [dbo].[MultiDbAuthContentTypes] ([dbo].[MultiDbAuthContentTypes].[MultiDbAuthID], [dbo].[MultiDbAuthContentTypes].[ContentType]) SELECT @ID, [dbo].[EAIF_GetItemTable_70].[Item] FROM dbo.EAIF_GetItemTable_70(@ContentTypes, ',') EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbAuth', 'Add MDb Authority', @ID COMMIT TRANSACTION END
CREATE PROCEDURE [dbo].[EPCS_GetServerConfig_70](@AppID varchar(20), @ServerURI varchar(255)) AS BEGIN DECLARE @AppNo int SELECT @AppNo = [dbo].[ConfigApplication].[ApplicationNo] from [dbo].[ConfigApplication] Where [dbo].[ConfigApplication].[ApplicationID]=@AppID IF @ServerURI = '' BEGIN SELECT p.ParamType, p.ParamName,ParamValue=ISNULL(convert(nvarchar(2000),a.ParamValue), N'') FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo END ELSE BEGIN DECLARE @SrvNo int SELECT @SrvNo = [dbo].[ConfigServer].[ServerNo] from [dbo].[ConfigServer] where [dbo].[ConfigServer].[ApplicationNo] = @AppNo AND [dbo].[ConfigServer].[ServerURI] = @ServerURI SELECT p.ParamType, p.ParamName, ParamValue=ISNULL(ISNULL(convert(nvarchar(2000),s.ParamValue), convert(nvarchar(2000),a.ParamValue)), N'') FROM [dbo].[ConfigParamList] p LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] s ON s.ParamNo = p.ParamNo AND [s].[ParamLevel] = 'S' AND [s].[TargetNo] = @SrvNo LEFT OUTER JOIN [dbo].[ConfigParamScalarValues] a ON a.ParamNo = p.ParamNo AND a.ParamLevel = 'A' AND a.TargetNo = @AppNo WHERE [p].[ApplicationNo] = @AppNo END END
CREATE PROCEDURE [dbo].[BLL_LS_GetLocalMessage](@CustomerID varchar(10), @CollectionID varchar(50), @ISSN varchar(20)) AS BEGIN DECLARE @ColNo int SELECT @ColNo=(CASE WHEN [dbo].[Collection].[SharedFrom]>0 THEN [dbo].[Collection].[SharedFrom] ELSE [dbo].[Collection].[ColNo] END) FROM [dbo].[Collection] WHERE [dbo].[Collection].[CustID]=@CustomerID AND [dbo].[Collection].[ColID]=@CollectionID SELECT FromDate=ISNULL([ld].[FromDate],'00000000'), ToDate=ISNULL([ld].[ToDate],'99999999'), ym.MsgText as 'YesMessage', nm.MsgText as 'NoMessage', lt.Notes, lt.Subscribe FROM [dbo].[LocalTitle] lt LEFT OUTER JOIN [dbo].[LocalDate] ld ON lt.ColNo=ld.ColNo AND lt.TitleNo=ld.TitleNo INNER JOIN [dbo].[MasterTitle] mt ON lt.TitleNo=mt.TitleNo INNER JOIN [dbo].[NoMessage] nm ON lt.NoMsgNo=nm.NoMsgNo INNER JOIN [dbo].[YesMessage] ym ON lt.YesMsgNo=ym.YesMsgNo WHERE lt.ColNo=@ColNo AND mt.ISSN=@ISSN ORDER BY mt.Title, mt.ISSN END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceSubTopicList_77](@IntfTopicNo int) AS BEGIN DECLARE @TopicNo int DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) SELECT @TopicNo=[dbo].[InterfaceTopic].[TopicNo], @InterfaceID=[dbo].[InterfaceTopic].[InterfaceID],@Version=[dbo].[InterfaceTopic].[Version] FROM [dbo].[InterfaceTopic] WHERE [dbo].[InterfaceTopic].[IntfTopicNo] = @IntfTopicNo SELECT it.IntfTopicNo, tl.TopicID , ISNULL(itc.Caption,tc.Caption) AS Caption, tl.SearchString, it.SeqNo FROM [dbo].[InterfaceTopic] it LEFT OUTER JOIN [dbo].[InterfaceTopicCaption] itc ON it.IntfTopicNo=itc.IntfTopicNo AND itc.LangCode = 'en' INNER JOIN [dbo].[TopicList] tl ON it.TopicNo = tl.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo WHERE it.InterfaceID=@InterfaceID AND it.Version=@Version AND tl.ParentTopicNo =@TopicNo AND tc.LangCode = 'en' ORDER BY it.SeqNo END
CREATE PROCEDURE [dbo].[EATL_GetGlobalDisciplineCaptions_131] ( @LangCode VARCHAR(10) ) AS SELECT dc.DisciplineNo, [dl].[DisciplineCode], [dc].[Caption] FROM [dbo].[DisciplineCaption] dc JOIN [dbo].[DisciplineList] dl ON dc.DisciplineNo = dl.DisciplineNo WHERE [dc].[LangCode] = @LangCode ORDER BY [dl].[DisciplineCode]
CREATE PROCEDURE [dbo].[EPCS_GetConnectorSearchFallbackTags_102] @DbName VARCHAR(10), @DbLabel VARCHAR(10) AS BEGIN DECLARE @DbVerNo int; SELECT @DbVerNo = [dbo].[DbList].[DbVerNo] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbName] = @DbName AND [dbo].[DbList].[DbLabel] = @DbLabel; SELECT td.SearchTag SearchTag , CASE ISNULL(ctd.FallBackBehavior, td.FallBackBehavior) WHEN 'NF' THEN '' ELSE ISNULL(ctd.FallBackBehavior, td.FallBackBehavior) END FallBackBehavior FROM [dbo].[SearchTagFallbackDefaults] td LEFT OUTER JOIN [dbo].[ConnectorSearchTagsFallBack] ctd ON td.SearchTagNo = ctd.SearchTagNo AND ctd.DbVerNo = @DbVerNo WHERE EXISTS (SELECT 1 FROM [dbo].[DbListExternalSourceIndexData] WHERE [dbo].[DbListExternalSourceIndexData].[DbVerNo] = @DbVerNo) ORDER BY td.SeqNo END
-- Create ebi.GetCustomerParentChildRelations proc CREATE PROCEDURE [ebi].[GetCustomerParentChildRelations] AS BEGIN select [dbo].[CustomerGroup].[ParentID], [dbo].[CustomerGroup].[ChildID] from [dbo].[CustomerGroup] END
CREATE PROCEDURE [dbo].[EAUI_GetDocTypeListByID_77] (@ID varchar(10))AS BEGIN SELECT dtl.DocTypeNo, dtl.DocTypeID, dtc.Caption, dtl.SearchString, sm.Description AS Category, pdtl.DocTypeID AS ParentID, CASE WHEN dtl.DefValue=0 THEN 'Off' ELSE 'On' END AS DefValue FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DocTypeList] pdtl ON dtl.ParentDocTypeNo = pdtl.DocTypeNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo = dtc.DocTypeNo INNER JOIN [dbo].[StringValueMap] sm ON dtl.Category = sm.FieldCode WHERE dtc.LangCode = 'en' AND sm.FieldName = 'DocTypeCategory' AND dtl.DocTypeID >=@ID Order BY dtl.DocTypeID END
CREATE PROCEDURE [dbo].[EAIP_ResyncExternalSources_102] (@UserID nvarchar(20), @CustID varchar(10), @SourceType char(1), @SourceList xml) AS BEGIN -- @SourceType is M (will be used for Muse and Index data both) -- @SourceList is XML that contains ExternalDbs in following format ---- BEGIN TRY Begin Transaction Declare @CustNo int DECLARE @docHandle int --Declare @DbTable table (DbVerNo int, DbName varchar(10)) Declare @SourceTable table (ExternalDbID varchar(255), DbName varchar(10), DisplayName nvarchar(100), [Description] nvarchar(max)) Declare @InterfaceTable table (InterfaceID varchar(10), Version varchar(10)) Declare @ParamNo int Declare @Date datetime Declare @Error varchar(max) Declare @SourceCount int Declare @ProfDbTable table (ProfNo int, DbVerNo int, [Enable] bit, SeqNo int) set @Date=GetDate() select @CustNo=[dbo].[Customer].[CustNo] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID EXEC [dbo].[sp_xml_preparedocument] @docHandle OUTPUT, @SourceList Insert @SourceTable Select * from OpenXML(@docHandle, '/ExternalDbs/ExternalDb', 1) with (ExternalDbID varchar(255), DbName varchar(10), DisplayName nvarchar(255), [Description] nvarchar(max)) if exists (select 1 from @SourceTable a left outer join [dbo].[DbList] dbl on a.DbName=dbl.DbName where DbVerNo is null and (a.ExternalDbID='' or a.DbName='' or a.DisplayName='')) Begin Raiserror('Resync failed: One or more Sources are missing required data.-- --
Please review Source List in External Source Resynchronization Status report. Contact a MuseGlobal Administrator to resolve this issue.', 16, -1) End --Insert @DbTable --Select dbl.DbVerno, dbl.DbName --FROM DbList dbl --INNER JOIN DbListExternalSource dbles ON dbles.DbVerNo = dbl.DbVerNo --where dbl.DbLabel = 'live' --AND dbles.ConnectorProvider = 'M' --AND dbl.SourceType=@SourceType -- Process Sources Insert [dbo].[DbList] ([dbl].[DbName], [dbl].[DbLabel], [dbl].[DisplayName], [dbl].[DSFamilyName], [dbl].[DbGroup], [dbl].[DbType], [dbl].[ContentType], [dbl].[LastUpdateDate], [dbl].[MultiSegment], [dbl].[EnforceSimUsage], [dbl].[ShowStats], [dbl].[ShowOnDDSConsole], [dbl].[WebClient], [dbl].[WinClient], [dbl].[CharClient], [dbl].[Z3950Client], [dbl].[InterfaceID], [dbl].[DbCategory], [dbl].[EPXBuild], [dbl].[EDABuild], [dbl].[IncludeWhenAutoAdd], [dbl].[SourceType]) select a.DbName, 'live', a.DisplayName, '', null, 1, 1, GetDate(), 2, 0, 1, 0, 1, 0, 0, 0, null, null, 0, 0, 0, Upper(@SourceType) from @SourceTable a left outer join [dbo].[DbList] dbl on a.DbName=dbl.DbName where DbVerNo is null INSERT INTO [dbo].[DbListExternalSource] ([dbles].[DbVerNo] ,[dbles].[ConnectorProvider]) SELECT dbl.DbVerNo , 'M' [ConnectorProvider] FROM @SourceTable a LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] dblesm ON a.ExternalDbID = dblesm.ExternalDbID LEFT OUTER JOIN [dbo].[DbListExternalSource] dbles ON dbles.DbVerNo = dblesm.DbVerNo JOIN [dbo].[DbList] dbl ON a.DbName = dbl.DbName AND dbl.DbLabel = 'live' where dblesm.ExternalDbID is null; INSERT INTO [dbo].[DbListExternalSourceMuse] ([dblesm].[DbVerNo] ,[dblesm].[ExternalDbID]) SELECT dbl.DbVerNo , a.ExternalDbID FROM @SourceTable a LEFT OUTER JOIN [dbo].[DbListExternalSourceMuse] dblesm ON a.ExternalDbID = dblesm.ExternalDbID LEFT OUTER JOIN [dbo].[DbListExternalSource] dbles ON dbles.DbVerNo = dblesm.DbVerNo JOIN [dbo].[DbList] dbl ON a.DbName = dbl.DbName AND dbl.DbLabel = 'live' where dblesm.ExternalDbID is null; Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription' Insert [dbo].[DbParamXmlValues] ([dbpxv].[DbVerNo],[dbpxv].[ParamNo],[dbpxv].[ItemName],[dbpxv].[ParamValue],[dbpxv].[SeqNo]) Select dbl.DbVerNo, @ParamNo, '', '', null From @SourceTable a join [dbo].[DbList] dbl on a.DbName=dbl.DbName left outer join [dbo].[DbParamXmlValues] dbpxv on dbl.DbVerNo=dbpxv.DbVerNo where dbpxv.DbVerNo is null ----RJ: moved up to keep it before delete ProfDatabase --Insert @ProfDbTable --Select ProfNo, DbVerNo, [Enable], SeqNo -- from ProfDatabase where ProfNo in (Select ProfNo from Profile where CustID=@CustID) -- and dbverno in (select dbverno from dblist where sourcetype=@SourceType) -- Delete records from ProfDatabase that are for Muse connectors and do not exist in resync list -- This should be done before deleting records from CustExternalDbList DELETE pdb --ProfDatabase FROM [dbo].[ProfDatabase] pdb JOIN [dbo].[DbList] db ON db.DbVerNo = pdb.DbVerNo JOIN [dbo].[Profile] p ON p.ProfNo= pdb.ProfNo JOIN [dbo].[CustExternalDbList] cedl ON (cedl.CustNo = @CustNo AND cedl.DbVerNo = db.DbVerNo) JOIN [dbo].[DbListExternalSource] dex ON (dex.DbVerNo = db.DbVerNo) JOIN [dbo].[DbListExternalSourceMuse] dblesm ON (dblesm.DbVerNo = dex.DbVerNo) LEFT JOIN @SourceTable st ON st.ExternalDbID = dblesm.ExternalDbID WHERE db.SourceType= @SourceType -- M --AND cedl.ConnectorProvider = 'M' -- Muse at customer level AND (cedl.ConnectorProvider = 'M' -- Muse at customer level OR (cedl.ConnectorProvider IS NULL AND dex.ConnectorProvider = 'M') -- Muse at global level and not overridden at customer level. ) AND p.CustID = @CustID AND st.ExternalDbID IS NULL -- Add all current customers's sources to CustExternalDbList -- Delete CustExternalDbList for Muse Connector provider where record is not in resync list from Muse --Delete CustExternalDbList --where CustNo=@CustNo --AND ConnectorProvider = 'M' --AND DbVerNo NOT IN -- (select DbVerNo From DbListExternalSourceMuse where ExternalDbID in (Select ExternalDbID from @SourceTable)) Delete cedl FROM [dbo].[CustExternalDbList] cedl JOIN [dbo].[DbListExternalSource] dex ON dex.DbVerNo = cedl.DbVerNo where [cedl].[CustNo]=@CustNo AND (cedl.ConnectorProvider = 'M' -- Muse at customer level OR (cedl.ConnectorProvider IS NULL AND dex.ConnectorProvider = 'M') -- Muse at global level and not overridden at customer level. ) AND cedl.DbVerNo NOT IN (select [dbo].[DbListExternalSourceMuse].[DbVerNo] From [dbo].[DbListExternalSourceMuse] where [dbo].[DbListExternalSourceMuse].[ExternalDbID] in (Select ExternalDbID from @SourceTable)) -- insert records from source table that do not already exist in CustExternalDbList for either Muse or Index data DECLARE @PrimaryProxyHostIp VARCHAR(45); SELECT @PrimaryProxyHostIp = EASUPPORT.dbo.EAIF_GetCustPrimaryHostIp_102(@CustID); --INSERT INTO CustExternalDbList -- ([CustNo] -- ,[DbVerNo] -- ,[ConnectorProvider] -- ,[Status] -- ,[CustomerNotes] -- ,[PrimaryProxyHostIp] -- ,[LastModified]) --SELECT @CustNo -- , a.DbVerNo -- , 'M' ConnectorProvider -- , 'A' [Status] -- , '' [CustomerNotes] -- , @PrimaryProxyHostIp PrimaryProxyHostIp -- , GETDATE() LastModified --FROM DbList a --JOIN @SourceTable st ON st.DbName = a.DbName --LEFT OUTER JOIN CustExternalDbList b ON a.DbVerNo = b.DbVerNo and b.CustNo=@CustNo --WHERE a.DbLabel = 'live' --AND b.DbverNo is null INSERT INTO [dbo].[CustExternalDbList] ([b].[CustNo] ,[b].[DbVerNo] ,[b].[ConnectorProvider] ,[b].[Status] ,[b].[CustomerNotes] ,[b].[PrimaryProxyHostIp] ,[b].[LastModified]) SELECT @CustNo , a.DbVerNo , CASE WHEN dex.ConnectorProvider ='I' THEN 'M' -- global is I so add it as M (pre existing M connector that was changed to I, did not exist on customer before) WHEN dex.ConnectorProvider ='M' THEN NULL -- global is M so keep it null END ConnectorProvider , 'A' [Status] , '' [CustomerNotes] , @PrimaryProxyHostIp PrimaryProxyHostIp , GETDATE() LastModified FROM [dbo].[DbList] a JOIN @SourceTable st ON st.DbName = a.DbName JOIN [dbo].[DbListExternalSource] dex ON dex.DbVerNo = a.DbVerNo LEFT OUTER JOIN [dbo].[CustExternalDbList] b ON a.DbVerNo = b.DbVerNo and b.CustNo=@CustNo WHERE a.DbLabel = 'live' AND b.DbVerNo is null -- Process InterfaceVerions Insert @InterfaceTable Select distinct [po].[InterfaceID], [po].[Version] from EASUPPORT.dbo.Product p join EASUPPORT.dbo.ProductInterface po on p.ProductID=po.ProductID where p.ProductType=@SourceType -- process profiles -- Delete ProfDatabase -- from -- @InterfaceTable i -- join Profile p -- on i.interfaceid=p.interfaceid and i.version=p.version -- join profdatabase pdb -- on p.profno=pdb.profno -- left outer join CustExternalDbList cedbl -- on pdb.dbverno=cedbl.dbverno -- left outer join DbList dbl -- on pdb.DbVerNo=dbl.DbVerNo -- where p.custid=@CustID and cedbl.dbverno is null and dbl.SourceType=@SourceType -- RJ We cannot do this delete now because it will remove all index data connectors -- changed and move this logic up before deleting records from CustExternalDbList -- ExternalDbID is different for Muse and Index Data -- this is sources removed - want to delete these from profdatabase --Delete profdatabase --from ProfDatabase where ProfNo in (Select ProfNo from Profile where CustID=@CustID) -- and dbverno in (select dbverno from dblist where sourcetype=@SourceType) -- and dbverno not in (select DbVerNo from @SourceTable st -- join DbListExternalSource dbles -- on st.ExternalDbID=dbles.ExternalDbID) -- this is the new sources added - want to reverse this back into xml and call EAIP_AddExternalDatabasesToProfiles_92 with these values -- this list contains Muse connectors that are in CustExternalDbList but do not exist in ProfDatabase --set @SourceList=(SELECT ExternalDb.* -- FROM @SourceTable ExternalDb -- JOIN DbListExternalSourceMuse dbles ON ExternalDb.ExternalDbID=dbles.ExternalDbID -- WHERE dbverno NOT IN (SELECT dbverno FROM ProfDatabase WHERE ProfNo in (SELECT ProfNo FROM Profile WHERE CustID=@CustID)) -- AND dbverno IN (SELECT dbverno FROM CustExternalDbList WHERE CustNo=@CustNo AND ConnectorProvider='M' AND Status = 'A') -- FOR XML AUTO, ROOT('ExternalDbs')) SET @SourceList=(SELECT ExternalDb.* FROM @SourceTable ExternalDb JOIN [dbo].[DbListExternalSourceMuse] dbles ON ExternalDb.ExternalDbID=dbles.ExternalDbID WHERE DbVerNo NOT IN (SELECT [dbo].[ProfDatabase].[DbVerNo] FROM [dbo].[ProfDatabase] WHERE [dbo].[ProfDatabase].[ProfNo] in (SELECT [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID]=@CustID)) AND DbVerNo IN (SELECT cedl.DbVerNo FROM [dbo].[CustExternalDbList] cedl JOIN [dbo].[DbListExternalSource] dex ON dex.DbVerNo = cedl.DbVerNo WHERE cedl.CustNo=@CustNo --AND cedl.ConnectorProvider='M' AND (cedl.ConnectorProvider = 'M' -- Muse at customer level OR (cedl.ConnectorProvider IS NULL AND dex.ConnectorProvider = 'M') -- Muse at global level and not overridden at customer level. ) AND cedl.Status = 'A') FOR XML AUTO, ROOT('ExternalDbs')) IF (@SourceList IS NOT NULL) exec [dbo].[EAIP_AddExternalDatabasesToProfiles_92] @CustID, @SourceType, @SourceList -- if after synchonization a Profile has no MG sources attached (enabled or not), the reset showIntegratedSearchPanel to default -- following will serve Index Data sources as well since the source type for both is M Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo] in (select a.ProfNo from (Select * from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID) a left outer join (Select distinct p.ProfNo from [dbo].[Customer] c join [dbo].[Profile] p on c.CustID=p.CustID left outer join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where c.CustID=@CustID and [dbl].[SourceType] =@SourceType) b on a.ProfNo=b.ProfNo where b.ProfNo is null) and [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo ---- RJ : keeping this for now EAIP_AddExternalDatabasesToProfiles_92 may be changing enable or seqno --Update ProfDatabase -- set [Enable]=b.enable, SeqNo=b.SeqNo -- from ProfDatabase a -- join @ProfDbTable b -- on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo --select @SourceCount=Count(*) from @SourceTable --if @SourceCount>0 exec EASUPPORT.dbo.EAIP_UpdateExternalSourceResyncStatus_92 @UserID, @CustID, @SourceType, @SourceList, @Date, 'S' --else --exec EASUPPORT.dbo.EAIP_UpdateExternalSourceResyncStatus_92 @UserID, @CustID, @SourceType, @SourceList, @Date, 'X' EXEC [dbo].[sp_xml_removedocument] @docHandle Commit Transaction End Try Begin Catch Rollback Transaction set @Error='An error occured in procedure ' + isnull(ERROR_PROCEDURE(), 'EAIP_ResyncExternalSources_102') + ' on line number ' + Convert(varchar(20),ERROR_LINE()) + ': ' + error_message() exec EASUPPORT.dbo.EAIP_UpdateExternalSourceResyncStatus_92 @UserID, @CustID, @SourceType, @SourceList, @Date, 'F', @Error End catch End ' + ISNULL(a.[Description],'') + '
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfCustGroupDb_86.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfCustGroupDb_86](@UserID nvarchar(20),@UserIP varchar(15), @ProfNo int,@GroupNo int, @DbList varchar(8000) )AS BEGIN BEGIN TRANSACTION DECLARE @NextSeqNo int SELECT @NextSeqNo=MAX ([dbo].[ProfCustGroupDb].[SeqNo])+1 FROM [dbo].[ProfCustGroupDb] Where [dbo].[ProfCustGroupDb].[ProfNo]=@ProfNo and [dbo].[ProfCustGroupDb].[GroupNo]=@GroupNo SELECT @NextSeqNo = ISNULL(@NextSeqNo,1) INSERT INTO [dbo].[ProfCustGroupDb]([dbo].[ProfCustGroupDb].[ProfNo],[dbo].[ProfCustGroupDb].[GroupNo],[dbo].[ProfCustGroupDb].[DbVerNo],[dbo].[ProfCustGroupDb].[SeqNo],[dbo].[ProfCustGroupDb].[MergeFlag]) SELECT @ProfNo, @GroupNo, Convert(int, a.Item),a.Num,a.MergeFlag FROM dbo.EAIF_GetCustGroupDbInsertValues_92(@DbList,'+',@NextSeqNo,1) a IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) DECLARE @DbNameList nvarchar(1024) SELECT @DbNameList = dbo.EAIF_GetProfCustGroupDbList_86(@ProfNo,@GroupNo) DECLARE @Caption nvarchar(255) SELECT @Caption=[dbo].[ProfCustGroupCaption].[Caption] FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo AND [dbo].[ProfCustGroupCaption].[LangCode]='en' EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Update Profile Db Group', @ProfLogName, @Caption, @DbNameList IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_InterfaceTopicLangAndPhotoAltTexts_77](@IntfTopicNo int) RETURNS NVARCHAR(max) AS BEGIN DECLARE @PhotoAltTexts nvarchar(max) DECLARE @Langs varchar(max) SET @PhotoAltTexts=N'' SET @Langs='' SELECT @PhotoAltTexts=@PhotoAltTexts+N'|'+[dbo].[InterfaceTopicCaption].[PhotoAltText], @Langs=@Langs+'|'+[dbo].[InterfaceTopicCaption].[LangCode] FROM [dbo].[InterfaceTopicCaption] WHERE [dbo].[InterfaceTopicCaption].[IntfTopicNo] =@IntfTopicNo IF LEN(@PhotoAltTexts)>1 SET @PhotoAltTexts=SUBSTRING(@PhotoAltTexts, 2, LEN(@PhotoAltTexts)) IF LEN(@Langs)>0 SET @Langs=SUBSTRING(@Langs, 2, LEN(@Langs)) RETURN @PhotoAltTexts+N'|||'+@Langs END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerProxyDetail_70](@CustID varchar(10), @ItemName varchar(255)) AS BEGIN DECLARE @TargetNo int DECLARE @ParamNo int SELECT @TargetNo=dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName END
CREATE PROCEDURE [dbo].[EAIP_DeleteProfile_153] (@UserID NVARCHAR(20), @UserIP VARCHAR(15), @CustID VARCHAR(10), @GroupID VARCHAR(10), @ProfID VARCHAR(10)='') AS BEGIN DECLARE @ProfNo INT IF NOT EXISTS (SELECT 1 FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[Profile].[ProfID] = @ProfID) BEGIN RAISERROR('The %s.%s.%s profile does not exist.', 16,-1, @CustID,@GroupID,@ProfID) RETURN END SELECT @ProfNo = [dbo].[Profile].[ProfNo] FROM [dbo].[Profile] WHERE [dbo].[Profile].[CustID] = @CustID AND [dbo].[Profile].[GroupID] = @GroupID AND [dbo].[Profile].[ProfID] = @ProfID EXEC [dbo].[EAUI_DeleteProfile_70] @UserID, @UserIP, @ProfNo END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceCVTypeListForAttach_162] ( @InterfaceID VARCHAR(10) , @Version VARCHAR(10) ) AS BEGIN IF LEN (@InterfaceID) > 0 AND LEN (@Version) > 0 BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version ''%s-%s'' does not exist.', 16,-1, @InterfaceID, @Version) RETURN END END SELECT cv.ContentVerticalID, cv.ContentVerticalID + ' (' + [cv].[ContentVerticalName] + ')' AS Caption FROM [dbo].[ContentVerticalType] cv LEFT OUTER JOIN [dbo].[InterfaceCVType] icv ON cv.ContentVerticalNo = icv.ContentVerticalNo AND icv.InterfaceID = @InterfaceID AND icv.Version = @Version WHERE icv.IntfCVTypeNo IS NULL ORDER BY Caption END
-- Update the catalog caption for all the catalogs on the profile. CREATE PROCEDURE [dbo].[EAUI_ResetProfCatalogHoldingTblCaptionForAllCatalogsOnProfile_104] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @LangCode varchar(10) ) AS BEGIN TRY BEGIN TRANSACTION --Use a temp table, instead of cursor Declare @WRK_DbTable Table (RowID int identity (1,1) primary key, DbVerNo int) Declare @i int Declare @max int Declare @selDbVerNo int Insert into @WRK_DbTable (DbVerNo) Select pd.DbVerNo from [dbo].[ProfDatabase] pd WITH (NOLOCK) Inner Join [dbo].[DbList] d WITH (NOLOCK) on (d.DbVerNo = pd.DbVerNo) Where pd.ProfNo=@ProfNo and pd.Enable = 1 and d.SourceType='C' and d.DbName like 'cat%' and (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) select @i =min(RowID) from @WRK_DbTable select @max = max(RowID) from @WRK_DbTable -- Reset / remove all catalog holding captions customization of all catalog(s) for the profile and lang. Delete pc from [dbo].[ProfCatalogHoldingTblCaptions] pc inner join @WRK_DbTable w on (w.DbVerNo = pc.DbVerNo) where pc.ProfNo=@ProfNo and LangCode=@LangCode while @i <= @max begin select @SelDbVerNo=DbVerNo from @WRK_DbTable where RowID = @i EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table caption','reset catalog holding tbl captions for all catalogs on the profile',@ProfNo,@SelDbVerNo,@LangCode set @i = @i + 1 end COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE FUNCTION dbo.EAIF_GetBrowseOptionCaptions_76(@DbVerNo int, @BrowseOptionNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+a.OptionCaption +' ' FROM [dbo].[DbBrowseOptionCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[BrowseOptionNo]=@BrowseOptionNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceFeatureItem_77]( @UserID nvarchar(20), @UserIP varchar(30), @InterfaceFeatureNo int, @ItemNo int)AS BEGIN DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @FeatureName varchar(50) SELECT @InterfaceID=[dbo].[InterfaceFeatureList].[InterfaceID],@Version=[dbo].[InterfaceFeatureList].[Version],@FeatureName=[dbo].[InterfaceFeatureList].[FeatureName] FROM [dbo].[InterfaceFeatureList] WHERE [dbo].[InterfaceFeatureList].[InterfaceFeatureNo]=@InterfaceFeatureNo BEGIN TRANSACTION DELETE [dbo].[InterfaceFeatureValues] WHERE [dbo].[InterfaceFeatureValues].[InterfaceFeatureNo]=@InterfaceFeatureNo AND [dbo].[InterfaceFeatureValues].[ItemNo]= @ItemNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceFeatures','Delete Feature Item', @InterfaceID,@Version,@FeatureName,@ItemNo COMMIT TRANSACTION END
Create PROCEDURE [dbo].[EAIP_DeleteCustomerContentFilters_181](@CustID varchar(10), @ContentFilterIdList varchar(max), @UserID NVARCHAR(20), @UserIP VARCHAR(15)) AS BEGIN DECLARE @WRK_Table TABLE (ContentFilterId varchar(25)) INSERT INTO @WRK_Table (ContentFilterId) SELECT a.Item FROM dbo.EAIF_GetItemTable_70(@ContentFilterIdList, ',') a -- Delete / delink ContentFilter(s) from the Customer Delete [dbo].[CustContentFilters] FROM [dbo].[CustContentFilters] cf JOIN dbo.ContentFilterList c on c.ContentFilterNo=cf.ContentFilterNo JOIN @WRK_Table w ON c.ContentFilterListID=w.ContentFilterId WHERE cf.CustID=@CustID --- Delete the Customer profile settings -- On the ProfContentFilters, there is a CASACADE Delete on CustContentFilters -- When the entries gets deletes from CustContentFilters, it would automatically remove the entries from -- ProfContentFilters table. INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @UserID, @UserIP, GETDATE(), 'CustomerContentFilter', 'Delete ContentFilters for the Customer /Profile', @CustID, [w].[ContentFilterId],'','','' FROM @WRK_Table w ORDER BY 1 END
CREATE PROCEDURE [dbo].[EAUI_GetProfileLinkList_70](@SiteID varchar(10), @ProfNo int) AS BEGIN DECLARE @CustParamNo int DECLARE @ProfParamNo int DECLARE @InterfaceID varchar(10) DECLARE @MaxSeqNo int DECLARE @TargetNo int DECLARE @FTPlaceHolderParamNo int DECLARE @FTPlaceHolderItemName varchar (255) DECLARE @LinkedFTPlaceHolderParamNo int DECLARE @LinkedFTPlaceHolderItemName varchar (255) Declare @CurrFTSeqNo int Declare @FTLinkedNewSeqNo int DECLARE @ShowFullTextGrid int DECLARE @Table TABLE (CustId varchar(10),ItemName varchar(255),ParamValue nvarchar(max), SeqNo smallint) SELECT @InterfaceID=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @CustParamNo = dbo.EAIF_GetCustomParamNumber_70('customerCustomLink','C') SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('profCustomLinks','P') Select @ShowFullTextGrid = dbo.EAIF_GetProfileParamScalarValue_70 (@ProfNo,'showFullTextGridOnAdminCustomLinkPage') SELECT @TargetNo=dbo.EAIF_GetCustNo_70('system') SELECT @LinkedFTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemLinkedFTPlaceHolderLink','C') Insert Into @Table (CustId,ItemName,ParamValue,SeqNo) SELECT a.CustID , b.ItemName , b.ParamValue , ISNULL(c.SeqNo, 0) As SeqNo FROM ( SELECT a.CustID, a.CustNo FROM [dbo].[Customer] a WHERE [a].[CustID] = @SiteID UNION SELECT a.CustID, a.CustNo FROM dbo.CustomerGroup AS g INNER JOIN dbo.Customer AS a ON g.ParentID = a.CustID WHERE g.ChildID = @SiteID ) a JOIN [dbo].[CustomParamXmlValues] b ON a.CustNo=b.TargetNo AND b.ParamLevel='C' AND b.ParamNo=@CustParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@ProfParamNo AND c.TargetNo=@ProfNo UNION -- Include a customized entry for linkedfulltext if exists SELECT a.CustID , b.ItemName , b.ParamValue , isnull(c.SeqNo,0) As SeqNo FROM [dbo].[Customer] a JOIN [dbo].[CustomParamXmlValues] b ON b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@LinkedFTPlaceHolderParamNo AND c.TargetNo=@ProfNo WHERE a.CustID = @SiteID -- Note: Logic for @ShowFullTextGrid check is added in Release 14.2 ( for EHPMEBSCOADMIN-2050) --IF @InterfaceId = 'eds' If @ShowFullTextGrid = 1 Begin -- used by eds/pfi interface only SELECT @FTPlaceHolderParamNo=dbo.EAIF_GetCustomParamNumber_70('systemFTPlaceHolderLink','C') SELECT @FTPlaceHolderItemName=[b].[ItemName] from [dbo].[CustomParamXmlValues] b Where b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@FTPlaceHolderParamNo SELECT @LinkedFTPlaceHolderItemName=[b].[ItemName] from [dbo].[CustomParamXmlValues] b Where b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo -- Add a placeholder (dummy) entry once at the end (currently ,only 'eds'/'pfi' interfaces show FulltextGrid). Select @MaxSeqNo = ISNULL(max(SeqNo),0) from @Table Insert into @Table (CustId,ItemName,ParamValue,SeqNo) SELECT a.CustID , b.ItemName , b.ParamValue , ISNULL(c.SeqNo,@MaxSeqNo + 1) As SeqNo FROM [dbo].[Customer] a JOIN [dbo].[CustomParamXmlValues] b ON b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@FTPlaceHolderParamNo LEFT OUTER JOIN [dbo].[CustomParamXmlValues] c ON b.ItemName = c.ItemName AND c.ParamLevel='P' AND c.ParamNo=@FTPlaceHolderParamNo AND c.TargetNo=@ProfNo WHERE a.CustID = @SiteID If not exists (select 1 from @Table where ItemName=@LinkedFTPlaceHolderItemName) Begin Select @CurrFTSeqNo = SeqNo from @Table where ItemName=@FTPlaceHolderItemName If @CurrFTSeqNo <> (@MaxSeqNo + 1) SET @FTLinkedNewSeqNo = @CurrFTSeqNo else SET @FTLinkedNewSeqNo = @CurrFTSeqNo + 1 -- Add the entry for the smartlink+ link (systemLinkedFTPlaceHolderLink) Insert into @Table (CustId,ItemName,ParamValue,SeqNo) SELECT a.CustID , b.ItemName , b.ParamValue , @FTLinkedNewSeqNo As SeqNo FROM [dbo].[Customer] a JOIN [dbo].[CustomParamXmlValues] b ON b.TargetNo=@TargetNo AND b.ParamLevel='C' AND b.ParamNo=@LinkedFTPlaceHolderParamNo WHERE a.CustID = @SiteID End END Select * from @Table END
CREATE PROCEDURE [dbo].[EAUI_AddMdbSTS_90] (@UserId nvarchar(20), @UserIp varchar(30), @MultiDbSTSID varchar(10), @Description varchar(255)=NULL, @SortOption varchar(255)=Null, @SearchImage varchar(255)=NULL, @ResultImage varchar(255)=NULL, @Caption nvarchar(255), @MouseOverText nvarchar(255)=NULL) AS IF EXISTS (SELECT 1 FROM [dbo].[MultiDbSTSList] WHERE [dbo].[MultiDbSTSList].[MultiDBSTSID]=@MultiDbSTSID) BEGIN RAISERROR('The MultiDbSTSID (%s) already exists in MultiDbSTSList', 16, -1, @MultiDbSTSID) RETURN END Begin Try Begin Transaction Insert [dbo].[MultiDbSTSList] ([dbo].[MultiDbSTSList].[MultiDBSTSID], [dbo].[MultiDbSTSList].[Description], [dbo].[MultiDbSTSList].[SearchImage], [dbo].[MultiDbSTSList].[ResultImage], [dbo].[MultiDbSTSList].[SortOption]) Values (@MultiDbSTSID, @Description, @SearchImage, @ResultImage, @SortOption) Insert [dbo].[MultiDbSTSCaption] ([dbo].[MultiDbSTSCaption].[MultiDBSTSID], [dbo].[MultiDbSTSCaption].[LangCode], [dbo].[MultiDbSTSCaption].[Caption], [dbo].[MultiDbSTSCaption].[MouseOverText]) Values (@MultiDbSTSID, 'en', @Caption, @MouseOverText) commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'MDbSTS', 'Add MDbSTS', @MultiDbSTSID, @Description End Try Begin Catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EPCS_GetServerConfigXMLValue_70](@AppID varchar(20), @ServerURI varchar(255), @ParamName varchar(255)) AS BEGIN DECLARE @AppNo int SELECT @AppNo = [dbo].[ConfigApplication].[ApplicationNo] from [dbo].[ConfigApplication] Where [dbo].[ConfigApplication].[ApplicationID]=@AppID DECLARE @SrvNo int SELECT @SrvNo = [dbo].[ConfigServer].[ServerNo] from [dbo].[ConfigServer] where [dbo].[ConfigServer].[ApplicationNo] = @AppNo AND [dbo].[ConfigServer].[ServerURI] = @ServerURI DECLARE @ParamNo int SELECT @ParamNo = [dbo].[ConfigParamList].[ParamNo] FROM [dbo].[ConfigParamList] WHERE [dbo].[ConfigParamList].[ApplicationNo] = @AppNo And [dbo].[ConfigParamList].[ParamName] = @ParamName IF EXISTS (SELECT 1 FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[TargetNo] = @SrvNo) SELECT ISNULL(convert(nvarchar(max),[dbo].[ConfigParamXmlValues].[ParamValue]), N'') FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamLevel] = 'S' AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo AND [dbo].[ConfigParamXmlValues].[TargetNo] = @SrvNo ELSE SELECT ISNULL(convert(nvarchar(max),[dbo].[ConfigParamXmlValues].[ParamValue]), N'') FROM [dbo].[ConfigParamXmlValues] WHERE [dbo].[ConfigParamXmlValues].[ParamLevel] = 'A' AND [dbo].[ConfigParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[BLL_LS_GetTargetInfo](@CustID varchar(10), @GroupID varchar(10) ) as BEGIN DECLARE @ProfNo int, @CustNo int DECLARE @InterfaceID varchar(10) DECLARE @ProfileID varchar(10) SELECT @ProfNo=dbo.EAIF_GetLinkSourceProfile_70(@CustID,@GroupID) SELECT @ProfileID=[dbo].[Profile].[ProfID], @InterfaceID=[dbo].[Profile].[InterfaceID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo Declare @xmlProfileInfo varchar(8000) set @xmlProfileInfo = '' set @xmlProfileInfo = @xmlProfileInfo + ' ' SELECT @xmlProfileInfo END' SELECT @xmlProfileInfo = @xmlProfileInfo + ' ' set @xmlProfileInfo = @xmlProfileInfo + '' SELECT @xmlProfileInfo = @xmlProfileInfo + ' ' FROM [dbo].[CustomParamList] lst LEFT OUTER JOIN [dbo].[CustomParamScalarValues] val ON lst.ParamNo=val.ParamNo AND val.ParamLevel='P' AND val.TargetNo=@ProfNo INNER JOIN [dbo].[CustomParamDefaults] dfl ON lst.ParamNo=dfl.ParamNo INNER JOIN [dbo].[InterfaceParamList] int ON dfl.InterfaceID=int.InterfaceID AND lst.ParamNo=int.ParamNo INNER JOIN [dbo].[Profile] p ON int.Version=p.Version AND int.InterfaceID=p.InterfaceID AND dfl.Version=p.Version AND dfl.MarketID=p.MarketID AND dfl.STMode=p.STMode WHERE lst.ParamName IN ('softLinkingPermitted', 'eonlinePermitted', 'eonlineCustID', 'eonlineUserID', 'eonlinePassword', 'ppvPermitted', 'smartLinksUsesCrossRef', 'crossRefColID') AND p.ProfNo=@ProfNo set @xmlProfileInfo = @xmlProfileInfo + '
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceSubTopicListForAdd_79] (@InterfaceID varchar(10), @Version varchar(10), @IntfTopicNo int) AS BEGIN DECLARE @TopicNo int SELECT @TopicNo=[dbo].[InterfaceTopic].[TopicNo] FROM [dbo].[InterfaceTopic] where [dbo].[InterfaceTopic].[IntfTopicNo]=@IntfTopicNo SELECT distinct tl.TopicNo , tc.Caption+'('+tl.TopicID+')' AS Caption, tc.Caption AS DummyCaption FROM [dbo].[TopicList] tl LEFT OUTER JOIN [dbo].[InterfaceTopic] it ON it.InterfaceID= @InterfaceID AND it.Version=@Version AND tl.TopicNo = it.TopicNo INNER JOIN [dbo].[TopicCaption] tc ON tl.TopicNo = tc.TopicNo CROSS JOIN [dbo].[TopicList] tlc WHERE tl.ParentTopicNo = @TopicNo AND tc.LangCode = 'en' AND it.TopicNo is null ORDER BY tc.Caption END
--sql content merged from file: \StoredProcedures\EATL_GetInterfaceCustomParams_90.sql CREATE Procedure [dbo].[EATL_GetInterfaceCustomParams_90] @InterfaceID varchar(50), @Version varchar(50), @LangCode varchar(10) as Select [cpl].[ParamName], cpxf.FieldName, cptisv.ItemID, cptisv.[Value], [cptisv].[MarketID] From [dbo].[CustomParamTblInterfaceSMValues] cptisv join [dbo].[CustomParamXmlFields] cpxf on cptisv.FieldNo=cpxf.FieldNo join [dbo].[CustomParamList] cpl on cptisv.ParamNo=cpl.ParamNo where [cptisv].[InterfaceID]=@InterfaceID and [cptisv].[Version]=@Version and [cptisv].[LangCode]=@LangCode Order by [cpl].[ParamName], cpxf.FieldName, cptisv.ItemID
CREATE PROCEDURE [dbo].[EPCS_GetCustConnectorSearchFallbackTags_102] @CustID varchar(10), @DbVerNo int AS BEGIN SELECT td.SearchTag SearchTag , CASE cctd.FallBackBehavior WHEN 'NF' THEN '' ELSE cctd.FallBackBehavior END FallBackBehavior FROM [dbo].[CustConnectorSearchTagsFallBack] cctd JOIN [dbo].[Customer] c ON c.CustNo = cctd.CustNo JOIN [dbo].[SearchTagFallbackDefaults] td ON td.SearchTagNo = cctd.SearchTagNo WHERE cctd.DbVerNo = @DbVerNo AND c.CustID = @CustID ORDER BY td.SeqNo END
CREATE PROCEDURE [ebi].[GetCustomerProfileInterfaceByCustId] (@CustID VARCHAR(10)) AS Begin --** Check if the customer id was passed IF (LEN(RTRIM(LTRIM(COALESCE(@CustID, '')))) <= 0) BEGIN RAISERROR (N'Customer ID is required', 16, 1) RETURN END SELECT p.CustID , p.GroupID , p.ProfID ProfileID , p.InterfaceID, p.Version, p.MarketID FROM [dbo].[Profile] p with (nolock) WHERE p.CustID = @CustID ORDER BY [p].[CustID],[p].[GroupID],ProfileID End
CREATE PROCEDURE [dbo].[EAUI_GetDocTypesToAttach_77](@DBVerNo int) AS BEGIN SELECT dtl.DocTypeNo,dtl.DocTypeID+'('+dtc.Caption+')' AS Caption FROM [dbo].[DocTypeList] dtl LEFT OUTER JOIN [dbo].[DbDocType] ddt ON dtl.DocTypeNo=ddt.DocTypeNo AND ddt.DbVerNo=@DBVerNo INNER JOIN [dbo].[DocTypeCaption] dtc ON dtl.DocTypeNo=dtc.DocTypeNo WHERE dtc.LangCode='en'AND dtl.Category='G' AND ddt.DocTypeNo is null ORDER BY dtl.DocTypeID END
--sql content merged from file: \StoredProcedures\EAIP_ResyncExternalSources_92.sql Create Procedure [dbo].[EAIP_ResyncExternalSources_92] (@UserID varchar(20), @CustID varchar(10), @SourceType char(1), @SourceList xml) as Begin Begin Try Begin Transaction Declare @CustNo int DECLARE @docHandle int Declare @DbTable table (DbVerNo int, DbName varchar(10)) Declare @SourceTable table (ExternalDbID varchar(255), DbName varchar(10), DisplayName varchar(100), [Description] varchar(max)) Declare @InterfaceTable table (InterfaceID varchar(10), Version varchar(10)) Declare @ParamNo int Declare @Date datetime Declare @Error varchar(max) Declare @SourceCount int Declare @ProfDbTable table (ProfNo int, DbVerNo int, [Enable] bit, SeqNo int) set @Date=GetDate() select @CustNo=[dbo].[Customer].[CustNo] from [dbo].[Customer] where [dbo].[Customer].[CustID]=@CustID EXEC [dbo].[sp_xml_preparedocument] @docHandle OUTPUT, @SourceList Insert @SourceTable Select * from OpenXML(@docHandle, '/ExternalDbs/ExternalDb', 1) with (ExternalDbID varchar(255), DbName varchar(10), DisplayName varchar(255), [Description] varchar(max)) if exists (select 1 from @SourceTable a left outer join [dbo].[DbList] dbl on a.DbName=dbl.DbName where DbVerNo is null and (a.ExternalDbID='' or a.DbName='' or a.DisplayName='')) Begin Raiserror('Resync failed: One or more Sources are missing required data.
Please review Source List in External Source Resynchronization Status report. Contact a MuseGlobal Administrator to resolve this issue.', 16, -1) End Insert @DbTable Select [dbo].[DbList].[DbVerNo], [dbo].[DbList].[DbName] from [dbo].[DbList] where [dbo].[DbList].[SourceType]=@SourceType -- Process Sources Insert [dbo].[DbList] ([dbl].[DbName], [dbl].[DbLabel], [dbl].[DisplayName], [dbl].[DSFamilyName], [dbl].[DbGroup], [dbl].[DbType], [dbl].[ContentType], [dbl].[LastUpdateDate], [dbl].[MultiSegment], [dbl].[EnforceSimUsage], [dbl].[ShowStats], [dbl].[ShowOnDDSConsole], [dbl].[WebClient], [dbl].[WinClient], [dbl].[CharClient], [dbl].[Z3950Client], [dbl].[InterfaceID], [dbl].[DbCategory], [dbl].[EPXBuild], [dbl].[EDABuild], [dbl].[IncludeWhenAutoAdd], [dbl].[SourceType]) select a.DbName, 'live', a.DisplayName, '', null, 1, 1, GetDate(), 2, 0, 1, 0, 1, 0, 0, 0, null, null, 0, 0, 0, Upper(@SourceType) from @SourceTable a left outer join [dbo].[DbList] dbl on a.DbName=dbl.DbName where DbVerNo is null Insert [dbo].[DbListExternalSource] ([b].[ExternalDbID], [b].[DbVerNo]) Select a.ExternalDbID, dbl.DbVerNo from @SourceTable a Left Outer Join [dbo].[DbListExternalSource] b on a.ExternalDbID=b.ExternalDbID join [dbo].[DbList] dbl on a.DbName=dbl.DbName where b.ExternalDbID is null Select @ParamNo=[dbo].[DbParamList].[ParamNo] from [dbo].[DbParamList] where [dbo].[DbParamList].[ParamName]='shortDescription' Insert [dbo].[DbParamXmlValues] ([dbpxv].[DbVerNo],[dbpxv].[ParamNo],[dbpxv].[ItemName],[dbpxv].[ParamValue],[dbpxv].[SeqNo]) Select dbl.DbVerNo, @ParamNo, '', '', null From @SourceTable a join [dbo].[DbList] dbl on a.DbName=dbl.DbName left outer join [dbo].[DbParamXmlValues] dbpxv on dbl.DbVerNo=dbpxv.DbVerNo where dbpxv.DbVerNo is null -- Add all current customers's sources to CustExternalDbList Delete [dbo].[CustExternalDbList] where [dbo].[CustExternalDbList].[CustNo]=@CustNo and [dbo].[CustExternalDbList].[DbVerNo] not in (select DbVerNo from @DbTable where DbName in (Select ExternalDbID from @SourceTable)) Insert [dbo].[CustExternalDbList]([dbo].[CustExternalDbList].[CustNo],[dbo].[CustExternalDbList].[DbVerNo]) Select @CustNo, a.DbVerNo from (select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName] in (Select DbName from @SourceTable)) a --left outer join CustExternalDbList b --on a.DbVerNo=b.DbVerNo and CustNo=@CustNo --where b.DbverNo is null -- Process InterfaceVerions Insert @InterfaceTable Select distinct [po].[InterfaceID], [po].[Version] from EASUPPORT.dbo.Product p join EASUPPORT.dbo.ProductInterface po on p.ProductID=po.ProductID where p.ProductType=@SourceType -- process profiles -- Delete ProfDatabase -- from -- @InterfaceTable i -- join Profile p -- on i.interfaceid=p.interfaceid and i.version=p.version -- join profdatabase pdb -- on p.profno=pdb.profno -- left outer join CustExternalDbList cedbl -- on pdb.dbverno=cedbl.dbverno -- left outer join DbList dbl -- on pdb.DbVerNo=dbl.DbVerNo -- where p.custid=@CustID and cedbl.dbverno is null and dbl.SourceType=@SourceType Insert @ProfDbTable Select [dbo].[ProfDatabase].[ProfNo], [dbo].[ProfDatabase].[DbVerNo], [dbo].[ProfDatabase].[Enable], [dbo].[ProfDatabase].[SeqNo] from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo] in (Select [dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID) and [dbo].[ProfDatabase].[DbVerNo] in (select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[SourceType]=@SourceType) -- this is sources removed - want to delete these from profdatabase Delete [dbo].[ProfDatabase] from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo] in (Select [dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID) and [dbo].[ProfDatabase].[DbVerNo] in (select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[SourceType]=@SourceType) and [dbo].[ProfDatabase].[DbVerNo] not in (select DbVerNo from @SourceTable st join [dbo].[DbListExternalSource] dbles on st.ExternalDbID=dbles.ExternalDbID) -- this is the new sources added - want to reverse this back into xml and call EAIP_AddExternalDatabasesToProfiles_92 with these values set @SourceList=(select ExternalDb.* from @SourceTable ExternalDb join [dbo].[DbListExternalSource] dbles on ExternalDb.ExternalDbID=dbles.ExternalDbID where DbVerNo not in (select [dbo].[ProfDatabase].[DbVerNo] from [dbo].[ProfDatabase] where [dbo].[ProfDatabase].[ProfNo] in (Select [dbo].[Profile].[ProfNo] from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID) and [dbo].[ProfDatabase].[DbVerNo] in (select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[SourceType]=@SourceType)) for xml auto, ROOT('ExternalDbs')) exec [dbo].[EAIP_AddExternalDatabasesToProfiles_92] @CustID, @SourceType, @SourceList -- if after synchonization a Profile has no MG sources attached (enabled or not), the reset showIntegratedSearchPanel to default Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Delete [dbo].[CustomParamScalarValues] where [dbo].[CustomParamScalarValues].[TargetNo] in (select a.ProfNo from (Select * from [dbo].[Profile] where [dbo].[Profile].[CustID]=@CustID) a left outer join (Select distinct p.ProfNo from [dbo].[Customer] c join [dbo].[Profile] p on c.CustID=p.CustID left outer join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where c.CustID=@CustID and [dbl].[SourceType] =@SourceType) b on a.ProfNo=b.ProfNo where b.ProfNo is null) and [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo Update [dbo].[ProfDatabase] set [Enable]=b.Enable, [SeqNo]=b.SeqNo from [dbo].[ProfDatabase] a join @ProfDbTable b on a.ProfNo=b.ProfNo and a.DbVerNo=b.DbVerNo --select @SourceCount=Count(*) from @SourceTable --if @SourceCount>0 exec EASUPPORT.dbo.EAIP_UpdateExternalSourceResyncStatus_92 @UserID, @CustID, @SourceType, @SourceList, @Date, 'S' --else --exec EASUPPORT.dbo.EAIP_UpdateExternalSourceResyncStatus_92 @UserID, @CustID, @SourceType, @SourceList, @Date, 'X' EXEC [dbo].[sp_xml_removedocument] @docHandle Commit Transaction End Try Begin Catch Rollback Transaction set @Error='An error occured in procedure ' + isnull(ERROR_PROCEDURE(), 'EAIP_ResyncExternalSources_92') + ' on line number ' + Convert(varchar(20),ERROR_LINE()) + ': ' + error_message() exec EASUPPORT.dbo.EAIP_UpdateExternalSourceResyncStatus_92 @UserID, @CustID, @SourceType, @SourceList, @Date, 'F', @Error End catch End ' + a.[Description] + '
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfCustGroupDbInfo_92.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfCustGroupDbInfo_92] (@UserID nvarchar(20),@UserIP varchar(15), @ProfNo int,@GroupNo int,@DbVerNo int,@MergeResult bit,@SeqNo int) AS BEGIN Begin try BEGIN TRANSACTION UPDATE [dbo].[ProfCustGroupDb] SET [dbo].[ProfCustGroupDb].[MergeFlag]=@MergeResult, [dbo].[ProfCustGroupDb].[SeqNo]=@SeqNo WHERE [dbo].[ProfCustGroupDb].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupDb].[GroupNo]=@GroupNo AND [dbo].[ProfCustGroupDb].[DbVerNo]=@DbVerNo DECLARE @ProfLogName varchar(40) DECLARE @Caption nvarchar(255) DECLARE @Displayname nvarchar(100) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) SELECT @Caption=[dbo].[ProfCustGroupCaption].[Caption] FROM [dbo].[ProfCustGroupCaption] WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo AND [dbo].[ProfCustGroupCaption].[LangCode]='en' SELECT @Displayname=dbo.EAIF_GetDbDisplayName_92(@DbVerNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Profile Customized Group Db', @ProfLogName, @Caption, @Displayname, @MergeResult, @SeqNo COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE FUNCTION [dbo].[EAIF_IntToBin_70](@IntValue int) RETURNS varchar(2) AS BEGIN DECLARE @strBin varchar(2) DECLARE @iWhole int DECLARE @iRem int DECLARE @cWhole varchar(1) DECLARE @cRem varchar(1) DECLARE @str varchar(2) SELECT @iWhole =@IntValue/16, @iRem =@IntValue%16 SELECT @cRem =CASE WHEN @iRem >= 0 AND @iRem <=9 THEN convert(char,@iRem) WHEN @iRem = 10 THEN 'A' WHEN @iRem = 11 THEN 'B' WHEN @iRem = 12 THEN 'C' WHEN @iRem = 13 THEN 'D' WHEN @iRem = 14 THEN 'E' WHEN @iRem = 15 THEN 'F' END SELECT @cWhole =CASE WHEN @iWhole >= 0 AND @iWhole <=9 THEN convert(char,@iWhole) WHEN @iWhole = 10 THEN 'A' WHEN @iWhole = 11 THEN 'B' WHEN @iWhole = 12 THEN 'C' WHEN @iWhole = 13 THEN 'D' WHEN @iWhole = 14 THEN 'E' WHEN @iWhole = 15 THEN 'F' END SET @Str = @cWhole + @cRem RETURN @Str END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerProxyDetailList_70] (@CustID varchar(10)) AS BEGIN DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') SELECT [dbo].[CustomParamXmlValues].[ItemName], [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE dbo.EAIP_DeleteProfileContentFilterList_181 ( @ProfNo INT, @ScreenNo INT, @ContentFilterListIDs VARCHAR(4000), @UserID NVARCHAR(20), @UserIP VARCHAR(15) ) AS BEGIN BEGIN TRY BEGIN TRANSACTION CREATE TABLE #ContentFilterList (ContentFilterListID VARCHAR(25)); INSERT INTO #ContentFilterList SELECT [dbo].[Split].[Value] FROM dbo.Split(',', @ContentFilterListIDs); DELETE pcf FROM dbo.ProfContentFilters pcf INNER JOIN dbo.CustContentFilters ccf ON pcf.CustContentFilterNo = ccf.CustContentFilterNo INNER JOIN dbo.ContentFilterList cfl ON ccf.ContentFilterNo = cfl.ContentFilterNo WHERE pcf.ProfNo = @ProfNo AND pcf.IntfScreenNo = @ScreenNo AND EXISTS(SELECT 1 FROM #ContentFilterList s WHERE s.ContentFilterListID = cfl.ContentFilterListID); EXEC [dbo].[EAIP_LogActivity_70] @UserId=@UserID, @UserIP=@UserIP, @Category='Profiles', @Activity='Delete Profile Content Filter', @Param1=@ProfNo, @Param2=@ScreenNo, @Param3=@ContentFilterListIDs; COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END;
CREATE PROCEDURE dbo.EAIP_GetInterfaceEditLevels_161 (@InterfaceID varchar(10), @Version varchar(10), @ParamNo int) AS BEGIN SELECT [dbo].[InterfaceParamList2].[ParamNo], CASE WHEN [dbo].[InterfaceParamList2].[Mode]='S' THEN 'sale' ELSE 'trial' END AS Mode, [dbo].[InterfaceParamList2].[EditLevel] FROM [dbo].[InterfaceParamList2] WHERE [dbo].[InterfaceParamList2].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceParamList2].[Version] = @Version AND [dbo].[InterfaceParamList2].[ParamNo]=@ParamNo END
-- Update the catalog caption on all the profiles of the customer. CREATE PROCEDURE [dbo].[EAUI_ResetProfCatalogHoldingTblCaptionForAllProfilesOfCustomer_104] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @DbVerNo int, @LangCode varchar(10) ) AS BEGIN TRY BEGIN TRANSACTION --Use a temp table, instead of cursor Declare @ParamNo int Declare @CustID varchar(10) Select @CustID = [dbo].[Profile].[CustID] from [dbo].[Profile] where [dbo].[Profile].[ProfNo] = @ProfNo Select @ParamNo = [dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='catalogHoldingTblHeadings' Declare @WRK_DbTable Table (RowID int identity (1,1) primary key, ProfNo int) Declare @i int Declare @max int Declare @selProfNo int Insert into @WRK_DbTable (ProfNo) Select pd.ProfNo from [dbo].[ProfDatabase] pd WITH (NOLOCK) inner Join [dbo].[DbList] d WITH (NOLOCK) on (d.DbVerNo = pd.DbVerNo) inner Join [dbo].[Profile] p WITH (NOLOCK) on (p.ProfNo = pd.ProfNo) Where d.DbVerNo=@DbVerNo and p.InterfaceID in (Select [dbo].[InterfaceParamList].[InterfaceID] from [dbo].[InterfaceParamList] WITH (NOLOCK) where [dbo].[InterfaceParamList].[ParamNo]=@ParamNo) and p.CustID =@CustID and pd.Enable = 1 and (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) select @i =min(RowID) from @WRK_DbTable select @max = max(RowID) from @WRK_DbTable Delete pc from [dbo].[ProfCatalogHoldingTblCaptions] pc inner join @WRK_DbTable w on (w.ProfNo = pc.ProfNo) where pc.DbVerNo=@DbVerNo and LangCode=@LangCode while @i <= @max begin select @selProfNo=ProfNo from @WRK_DbTable where RowID = @i EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table caption','Reset catalog holding captions of the catalog for all profiles of customer', @selProfNo,@DbVerNo,@LangCode set @i = @i + 1 end COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE FUNCTION dbo.EAIF_GetBrowseResultCaptions_76(@DbVerNo int, @BrowseOptionNo int) RETURNS nvarchar(max) AS BEGIN DECLARE @Captions nvarchar(max) SET @Captions='' SELECT @Captions = @Captions + ''+a.ResultCaption +' ' FROM [dbo].[DbBrowseOptionCaption] a WHERE [a].[DbVerNo]=@DbVerNo AND [a].[BrowseOptionNo]=@BrowseOptionNo RETURN @Captions END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceKnownSearchItem_103] (@UserID nvarchar(20),@UserIP varchar(30), @InterfaceKnownSearchItemNo int) AS BEGIN DECLARE @Label nvarchar(255) DECLARE @Interface varchar(30) DECLARE @InterfaceID varchar(10) DECLARE @Version varchar(10) DECLARE @IsSelected bit BEGIN TRY SELECT @Interface=[item].[InterfaceID]+','+[item].[Version], @INterfaceID = [item].[InterfaceID], @Version = [item].[Version], @Label=[caption].[Label], @IsSelected = [item].[IsSelected] FROM [dbo].[InterfaceKnownSearchItems] item JOIN [dbo].[InterfaceKnownSearchItemCaption] caption ON item.KnownSearchItemNo = caption.KnownSearchItemNo WHERE item.KnownSearchItemNo=@InterfaceKnownSearchItemNo BEGIN TRANSACTION DELETE [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]=@InterfaceKnownSearchItemNo -- if the item being deleted was selected, get the "first" item for this interface-version and make it the selected one -- this is needed here even though there is a check in the UI because it is possible, with the different ways that the -- grid click and delete button click events are handled, for an item to be deleted if it is the "currently" selected item IF @IsSelected = 1 BEGIN UPDATE [dbo].[InterfaceKnownSearchItems] SET [dbo].[InterfaceKnownSearchItems].[IsSelected] = 1 WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceId AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version AND [dbo].[InterfaceKnownSearchItems].[SeqNo] = (SELECT MIN([dbo].[InterfaceKnownSearchItems].[SeqNo]) FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version] = @Version ) END EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'InterfaceKnownSearchItem','Delete Interface Known Search Item', @Interface ,@Label COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_DeleteCustomerEmailListAddress_153] ( @CustID varchar(10), @ListName varchar(100), @EmailAddress nvarchar(255), @EmailHash VARBINARY(600) )as begin declare @CustNo int declare @ParamNo int SET @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo = [dbo].[CustomParamEmailList].[ParamNo] FROM dbo.CustomParamEmailList WHERE [dbo].[CustomParamEmailList].[ParamName] = @ListName AND [dbo].[CustomParamEmailList].[ParamLevel] = 'C' OPEN SYMMETRIC KEY Sym_EmailAddress DECRYPTION BY CERTIFICATE Cert_EmailAddress DECLARE @hashEmailMatch AS TABLE(TargetNo INT, ParamNo INT, CreateDate DATETIME2, DecryptedEmail NVARCHAR(600)) INSERT INTO @hashEmailMatch(TargetNo, ParamNo, CreateDate, DecryptedEmail ) SELECT [dbo].[CustomParamEmailListValues].[TargetNo], [dbo].[CustomParamEmailListValues].[ParamNo], [dbo].[CustomParamEmailListValues].[CreateDate], CONVERT ( nVarchar(255), DecryptByKey([dbo].[CustomParamEmailListValues].[EmailAddress])) FROM dbo.CustomParamEmailListValues WHERE [dbo].[CustomParamEmailListValues].[EmailHash] = @EmailHash AND [dbo].[CustomParamEmailListValues].[ParamNo] = @ParamNo AND [dbo].[CustomParamEmailListValues].[TargetNo] = @CustNo CLOSE SYMMETRIC KEY Sym_EmailAddress IF NOT EXISTS (SELECT 1 FROM @hashEmailMatch WHERE DecryptedEmail = @EmailAddress) BEGIN RETURN; --Email already gone END ELSE BEGIN DELETE from cpel FROM dbo.CustomParamEmailListValues cpel INNER JOIN @hashEmailMatch h ON h.TargetNo = cpel.TargetNo AND h.ParamNo = cpel.ParamNo AND h.CreateDate = cpel.CreateDate WHERE [h].[DecryptedEmail] = @EmailAddress END END
CREATE PROCEDURE [dbo].[EAUI_GetProfileLinkSourceMenuList_70](@ProfNo int) AS BEGIN DECLARE @ProfParamNo int SELECT @ProfParamNo = dbo.EAIF_GetCustomParamNumber_70('linkSourceMenu','P') SELECT [dbo].[CustomParamXmlValues].[ParamValue] FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@ProfNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='P' AND [dbo].[CustomParamXmlValues].[ParamNo]=@ProfParamNo END
CREATE PROCEDURE [dbo].[EAUI_AddMDbSTSSourceTypes_90] (@UserID nvarchar(20), @UserIP varchar(10), @MultiDbSTSID varchar(10), @STSIDList varchar(1000)) AS Begin Try Declare @STSIDDotPos int Declare @STSID varchar(10) Declare @STSNo int SELECT @STSIDDotPos=charindex('+',@STSIDList) Begin Transaction WHILE @STSIDDotPos <> 0 AND @STSIDDotPos IS NOT NULL BEGIN SELECT @STSID=left(@STSIDList,@STSIDDotPos-1) Select @STSNo=Convert(int, @STSID) Insert [dbo].[DocTypeMultiDbSTSList] ([dbo].[DocTypeMultiDbSTSList].[MultiDbSTSID], [dbo].[DocTypeMultiDbSTSList].[DocTypeNo]) values (@MultiDbSTSID, @STSNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Attach SourceTypes to MDbSTS', @MultiDbSTSID, @STSID SELECT @STSIDList=substring(@STSIDList,@STSIDDotPos+1,Len(@STSIDList)-@STSIDDotPos) SELECT @STSIDDotPos=charindex('+',@STSIDList) End commit transaction End Try Begin catch rollback transaction End Catch
CREATE PROCEDURE [dbo].[EPCS_GetSmartLinkInfo_70] (@CustID varchar(10), @GroupID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ParamNo int SET @ParamNo = dbo.EAIF_GetCustomParamNumber_70 ('softLinkingPermitted', 'P') DECLARE @ProfID varchar(10) SELECT @ProfID= a.ProfID FROM [dbo].[Profile] a JOIN [dbo].[CustomParamDefaults] c WITH (INDEX(PK_CustomParamDefaults)) ON c.ParamNo=@ParamNo AND a.InterfaceID = c.InterfaceID AND a.Version = c.Version AND a.MarketID = c.MarketID AND a.STMode = c.STMode LEFT OUTER JOIN [dbo].[CustomParamScalarValues] d ON d.TargetNo = a.ProfNo AND d.ParamLevel='P' AND d.ParamNo = @ParamNo WHERE a.CustID=@CustID AND a.GroupID=@GroupID AND ISNULL(d.ParamValue,c.DefValue) = '1' ORDER BY a.SeqNo EXEC [dbo].[EPCS_GetProfAttributes_70] @CustID, @GroupID, @ProfID END
CREATE PROCEDURE [dbo].[COL_NAMES] (@tbl_nm varchar(30), @TS bit=0) AS /* This procedure will create list of column names of the given Table Name */ SET NOCOUNT ON IF @tbl_nm IS NULL OR @tbl_nm='' RETURN IF NOT EXISTS (SELECT 1 FROM [dbo].[sysobjects] where [dbo].[sysobjects].[id]=object_id(@tbl_nm)) BEGIN PRINT '' PRINT 'Table:' + UPPER(@tbl_nm) + ' does not exists.' PRINT '' RETURN END IF @TS=1 BEGIN PRINT '' PRINT 'Structure for Table: ' + UPPER(@tbl_nm) PRINT '' SELECT SUBSTRING([INFORMATION_SCHEMA].[COLUMNS].[COLUMN_NAME],1,30) AS 'COLUMN_NAME', SUBSTRING([INFORMATION_SCHEMA].[COLUMNS].[DATA_TYPE],1,15) AS 'DATA_TYPE', ISNULL([INFORMATION_SCHEMA].[COLUMNS].[CHARACTER_MAXIMUM_LENGTH],'') AS 'CLen', ISNULL([INFORMATION_SCHEMA].[COLUMNS].[NUMERIC_PRECISION],'') AS 'NLen', [INFORMATION_SCHEMA].[COLUMNS].[IS_NULLABLE] AS 'NULL?', SUBSTRING(ISNULL([INFORMATION_SCHEMA].[COLUMNS].[COLUMN_DEFAULT],''),1,10) AS 'DefVal' FROM INFORMATION_SCHEMA.COLUMNS WHERE [INFORMATION_SCHEMA].[COLUMNS].[TABLE_NAME]=@tbl_nm ORDER BY [INFORMATION_SCHEMA].[COLUMNS].[ORDINAL_POSITION] PRINT '' PRINT 'Constraints for Table: ' + UPPER(@tbl_nm) PRINT '' SELECT SUBSTRING([INFORMATION_SCHEMA].[KEY_COLUMN_USAGE].[CONSTRAINT_NAME],1,30) AS 'CONSTRAINT_NAME', SUBSTRING([INFORMATION_SCHEMA].[KEY_COLUMN_USAGE].[COLUMN_NAME],1,30) AS 'COLUMN_NAME' FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE].[TABLE_NAME]=@tbl_nm ORDER BY CONSTRAINT_NAME, [INFORMATION_SCHEMA].[KEY_COLUMN_USAGE].[ORDINAL_POSITION] RETURN END PRINT '' PRINT 'Column list for table: ' + UPPER(@tbl_nm) PRINT '' SET NOCOUNT ON DECLARE @Columns nvarchar(255) DECLARE @Msg varchar(75) SET @msg = '' DECLARE @msgBuffer varchar(1024) SET @msgBuffer = '' DECLARE get_tbl_cols CURSOR FOR SELECT [dbo].[syscolumns].[name] FROM [dbo].[syscolumns] where [dbo].[syscolumns].[id]=object_id(@tbl_nm) OPEN get_tbl_cols FETCH NEXT FROM get_tbl_cols INTO @Columns WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN SELECT @Msg = @Msg + @Columns + ', ' IF DATALENGTH(@Msg) > 60 BEGIN SET @msgBuffer = @msgBuffer + char(10) + @Msg SET @Msg = '' END END FETCH NEXT FROM get_tbl_cols INTO @Columns END IF DATALENGTH(@Msg) >0 SET @msgBuffer = @msgBuffer + char(10) + @Msg SELECT @msgBuffer = LEFT(@msgBuffer, DATALENGTH(@msgBuffer)-2) PRINT @msgBuffer PRINT '' CLOSE get_tbl_cols DEALLOCATE get_tbl_cols
CREATE PROCEDURE [dbo].[EAUI_GetInterfacesWithTopics_77] AS BEGIN SELECT distinct iv.InterfaceID, iv.Version, il.InterfaceName FROM [dbo].[InterfaceVersion] iv INNER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID=il.InterfaceID AND iv.Version=il.Version INNER JOIN [dbo].[InterfaceTopic] it ON iv.InterfaceID = it.InterfaceID AND iv.Version = it.Version WHERE il.LangCode='en' ORDER BY il.InterfaceName, iv.InterfaceID, iv.Version END
Create Procedure [dbo].[EATL_GetInterfaceDbToolbarItems_103](@InterfaceID varchar(10), @Version varchar(10), @Lang varchar(10)) as Select * from (Select fl.FeatureName, idbfv.FieldValueXml.query('/fields/field[@name = "ToolbarCaption" and @lang = sql:variable("@Lang")]').value('/field[1]', 'nvarchar(max)') as Caption from [dbo].[InterfaceDbFeatureValues] idbfv join [dbo].[FeatureList] fl on idbfv.FeatureNo=fl.FeatureNo and fl.Category='lpt' where [idbfv].[InterfaceID]=@InterfaceID and [idbfv].[Version]=@Version) a where [a].[Caption] is not null
CREATE PROCEDURE [dbo].[EPCS_GetCustomerGroupProfileDbs_86]( @CustID varchar(10), @GroupID varchar(10), @ProfID varchar(10) ) AS BEGIN ---updated by S.Freytsis on 09/09/08 for AdminSummer2008 release to limit return only to databases from profiles that allow persistent linking ---to address Issue #15824 DECLARE @ParamNo int SET @ParamNo = dbo.EAIF_GetCustomParamNumber_70 ('persistentLinkProfile', 'P') SELECT DISTINCT d.DbName FROM [dbo].[Profile] pr with (nolock) LEFT OUTER JOIN [dbo].[CustomParamScalarValues] cp with (nolock)ON cp.TargetNo = pr.ProfNo AND cp.ParamLevel='P' AND cp.ParamNo = @ParamNo INNER JOIN [dbo].[ProfDatabase] pd with (nolock) ON pr.ProfNo = pd.ProfNo INNER JOIN [dbo].[DbList] d with (nolock) ON pd.DbVerNo = d.DbVerNo INNER JOIN [dbo].[CustomParamDefaults] c with (nolock) ON pr.InterfaceID = c.InterfaceID AND pr.Version = c.Version AND pr.MarketID = c.MarketID AND pr.STMode = c.STMode WHERE pr.CustID = @CustID AND pr.GroupID = @GroupID AND (LEN(@ProfID)=0 OR (LEN(@ProfID)>0 AND pr.ProfID=@ProfID)) AND pd.Enable = 1 AND (pd.Mode is null OR pd.Mode<>'X') AND (pd.AccessEndDate is null or datediff(hh, pd.AccessEndDate, getdate())<0 ) AND dbo.EAIF_GetDbParamScalarValue_70( pd.DbVerNo, 'fullTextAllowed' ) = 1 AND c.ParamNo=@ParamNo AND ISNULL(cp.ParamValue,c.DefValue) = N'1' AND d.SourceType<>'M' END
-- Create ebi.GetDatabaseInfo proc CREATE PROCEDURE [ebi].[GetDatabaseInfo] AS BEGIN SELECT d.DbName, CASE WHEN d.SourceType = 'D' OR d.SourceType = 'C' THEN d.DisplayName WHEN d.SourceType = 'M' OR d.SourceType = 'L' THEN d.DisplayName + ' (' + ISNULL(e.VendorName, d.DbName) + ')' ELSE 'MisMatch Source Type' END AS DisplayName, CASE WHEN c.Description = 'Not Specified' THEN 'Regular Database' ELSE c.Description END AS ContentType, t.Description AS DbType, CASE WHEN d.SourceType = 'D' THEN 'EP Database' WHEN d.SourceType = 'M' OR d.SourceType = 'L' THEN 'EhIS Connector' WHEN d.SourceType = 'C' THEN 'Catalog' ELSE 'Unknown' END AS ProductType , CASE WHEN d.SourceType = 'M' THEN e.VendorName ELSE p.PublisherName END AS VendorName FROM dbo.DbList d INNER JOIN dbo.DbContentList c ON d.ContentType = c.ContentType INNER JOIN dbo.DbTypeList t ON d.DbType = t.DbType LEFT OUTER JOIN dbo.DbListExternalSource e ON e.DbVerNo = d.DbVerNo LEFT OUTER JOIN dbo.DbPublisher p ON p.DbVerNo = d.DbVerNo WHERE d.DbLabel = 'Live' END
CREATE PROCEDURE [dbo].[EAUI_GetDocTypeUsage_77] (@DocTypeNo int)AS BEGIN DECLARE @InterfaceList nvarchar(1000) DECLARE @Category char SET @InterfaceList =N'' SELECT @InterfaceList = @InterfaceList +il.InterfaceName +N'('+il.InterfaceID+N'-'+il.Version+N')'+N'
', @Category = dtl.Category FROM [dbo].[InterfaceLanguage] il INNER JOIN [dbo].[InterfaceDocType] idt ON il.InterfaceID=idt.InterfaceID AND il.Version=idt.Version INNER JOIN [dbo].[DocTypeList] dtl ON dtl.DocTypeNo=idt.DocTypeNo WHERE idt.DocTypeNo= @DocTypeNo AND il.LangCode='en' IF LEN(@InterfaceList)>4 SET @InterfaceList = SUBSTRING(@InterfaceList,1, LEN(@InterfaceList)-4) DECLARE @DocTypeID varchar(10) SELECT @DocTypeID=[dbo].[DocTypeList].[DocTypeID] FROM [dbo].[DocTypeList] WHERE [dbo].[DocTypeList].[DocTypeNo] =@DocTypeNo IF @Category='R' SELECT ddl.DocTypeID,db.DisplayName+ N'('+db.DbName+N'-'+db.DbLabel+N')' AS Db, @InterfaceList As Interfaces, dbo.EAIF_DocTypeUsageAsBrowseOption_77(ddl.DocTypeID, db.DbVerNo) as BrowseOptions, dbo.EAIF_DocTypeUsageAsSearchOption_77(ddl.DocTypeID, db.DbVerNo) as SearchOptions FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DbList] db ON ddt.DbVerNo=db.DbVerNo INNER JOIN [dbo].[DocTypeList] ddl ON ddl.DocTypeNo = ddt.DocTypeNo WHERE ddl.ParentDocTypeNo=@DocTypeNo ORDER BY [ddl].[DocTypeID],db.DbName ELSE SELECT @DocTypeID AS DocTypeID, db.DisplayName+ N'('+db.DbName+N'-'+db.DbLabel+N')' AS Db, @InterfaceList As Interfaces, dbo.EAIF_DocTypeUsageAsBrowseOption_77(@DocTypeID, db.DbVerNo) as BrowseOptions, dbo.EAIF_DocTypeUsageAsSearchOption_77(@DocTypeID, db.DbVerNo) as SearchOptions FROM [dbo].[DbDocType] ddt INNER JOIN [dbo].[DbList] db ON ddt.DbVerNo=db.DbVerNo WHERE ddt.DocTypeNo=@DocTypeNo ORDER BY db.DbName END
CREATE PROCEDURE [dbo].[EAIP_RethrowAZError_97] AS BEGIN SET NOCOUNT ON -- This procedure was lifted "as-is" (except for the name) from SQL Books Online (in the TRY/CATCH documentation) -- Return if there is no error information to retrieve. IF ERROR_NUMBER() IS NULL RETURN DECLARE @ErrorMessage NVARCHAR(4000), @ErrorNumber INT, @ErrorSeverity INT, @ErrorState INT, @ErrorLine INT, @ErrorProcedure NVARCHAR(200) -- Assign variables to error-handling functions that -- capture information for RAISERROR. SELECT @ErrorNumber = ERROR_NUMBER(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(), @ErrorLine = ERROR_LINE(), @ErrorProcedure = ISNULL(ERROR_PROCEDURE(), '-') -- Building the message string that will contain original -- error information. SELECT @ErrorMessage = N'Error %d, Level %d, State %d, Procedure %s, Line %d, ' + 'Message: '+ ERROR_MESSAGE() -- Raise an error: msg_str parameter of RAISERROR will contain -- the original error information. RAISERROR ( @ErrorMessage, @ErrorSeverity, 1, @ErrorNumber, -- parameter: original error number. @ErrorSeverity, -- parameter: original error severity. @ErrorState, -- parameter: original error state. @ErrorProcedure, -- parameter: original error procedure name. @ErrorLine -- parameter: original error line number. ) RETURN END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfCustGroupDbList_86.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfCustGroupDbList_86](@UserID nvarchar(20),@UserIP varchar(15) , @ProfNo int,@GroupNo int,@LangCode varchar(10),@Caption nvarchar(255),@Show bit ,@SelDefault bit,@SeqNo int,@CustomGroup bit )AS BEGIN BEGIN TRANSACTION IF @CustomGroup=1 BEGIN UPDATE [dbo].[ProfCustGroupList] SET [dbo].[ProfCustGroupList].[Show]=@Show,[dbo].[ProfCustGroupList].[SelDefault]=@SelDefault,[dbo].[ProfCustGroupList].[SeqNo]=@SeqNo WHERE [dbo].[ProfCustGroupList].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupList].[GroupNo]=@GroupNo IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[ProfCustGroupCaption] SET [dbo].[ProfCustGroupCaption].[Caption]=@Caption WHERE [dbo].[ProfCustGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfCustGroupCaption].[GroupNo]=@GroupNo AND [dbo].[ProfCustGroupCaption].[LangCode]=@LangCode IF @@ROWCOUNT=0 INSERT INTO [dbo].[ProfCustGroupCaption]([dbo].[ProfCustGroupCaption].[ProfNo],[dbo].[ProfCustGroupCaption].[GroupNo],[dbo].[ProfCustGroupCaption].[LangCode],[dbo].[ProfCustGroupCaption].[Caption]) VALUES (@ProfNo,@GroupNo,@LangCode,@Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END ELSE BEGIN UPDATE [dbo].[ProfGroupList] SET [dbo].[ProfGroupList].[Show]=@Show,[dbo].[ProfGroupList].[SelDefault]=@SelDefault,[dbo].[ProfGroupList].[SeqNo]=@SeqNo WHERE [dbo].[ProfGroupList].[ProfNo]=@ProfNo AND [dbo].[ProfGroupList].[GroupNo]=@GroupNo IF @@ROWCOUNT=0 INSERT INTO [dbo].[ProfGroupList]([dbo].[ProfGroupList].[ProfNo],[dbo].[ProfGroupList].[GroupNo],[dbo].[ProfGroupList].[Show],[dbo].[ProfGroupList].[SelDefault],[dbo].[ProfGroupList].[SeqNo]) VALUES (@ProfNo,@GroupNo,@Show,@SelDefault,@SeqNo) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END UPDATE [dbo].[ProfGroupCaption] SET [dbo].[ProfGroupCaption].[Caption]=@Caption WHERE [dbo].[ProfGroupCaption].[ProfNo]=@ProfNo AND [dbo].[ProfGroupCaption].[GroupNo]=@GroupNo AND [dbo].[ProfGroupCaption].[LangCode]=@LangCode IF @@ROWCOUNT=0 INSERT INTO [dbo].[ProfGroupCaption]([dbo].[ProfGroupCaption].[ProfNo],[dbo].[ProfGroupCaption].[GroupNo],[dbo].[ProfGroupCaption].[LangCode],[dbo].[ProfGroupCaption].[Caption]) VALUES (@ProfNo,@GroupNo,@LangCode,@Caption) IF @@ERROR <> 0 BEGIN ROLLBACK TRANSACTION RETURN END END DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Profile Db Group', @ProfLogName, @Caption, @LangCode,@Show,@SeqNo COMMIT TRANSACTION END
CREATE FUNCTION [dbo].[EAIF_IPAddress2Numeric]( @IPAddress varchar(30) ) RETURNS BIGINT AS BEGIN DECLARE @IPPart varchar(30) DECLARE @IPAddressLen int DECLARE @Octet varchar(3) DECLARE @CharPos int DECLARE @CharVal char(1) DECLARE @RetVal bigint IF @IPAddress IS NULL OR @IPAddress = '' BEGIN SET @RetVal=0 RETURN @RetVal END ELSE BEGIN SET @IPAddress = REPLACE(@IPAddress, ' ', '') END SELECT @IPAddress=@IPAddress+'.' SELECT @IPAddressLen = DATALENGTH(@IPAddress) SET @CharPos=1 SET @CharVal='' SET @IPPart='' SET @Octet='' WHILE (@CharPos<=@IPAddressLen) BEGIN SELECT @CharVal=SUBSTRING(@IPAddress, @CharPos, 1) IF @CharVal='.' BEGIN SET @IPPart = @IPPart + REPLICATE('0', 3 - DATALENGTH(@Octet)) + @Octet SET @Octet = '' END ELSE BEGIN IF ISNUMERIC(@CharVal)=1 BEGIN SET @Octet = @Octet + @CharVal END ELSE BEGIN /* Non-Numeric character in IP ADDRESS, do not continue.*/ SET @RetVal=0 RETURN @RetVal END END SELECT @CharPos = @CharPos+1 END SET @IpPart = substring(@IpPart+'000000000000',1,12) SELECT @RetVal = CONVERT(BIGINT, @IPPart) RETURN @RetVal END
CREATE PROCEDURE [dbo].[EAUI_GetCustomerProxyList_70](@CustID varchar(10)) AS BEGIN DECLARE @CustNo int DECLARE @ParamNo int SELECT @CustNo = dbo.EAIF_GetCustNo_70(@CustID) SELECT @ParamNo=dbo.EAIF_GetCustomParamNumber_70('customerProxy','C') SELECT [dbo].[CustomParamXmlValues].[ItemName], SUBSTRING(SUBSTRING([dbo].[CustomParamXmlValues].[ParamValue], CHARINDEX('name="', [dbo].[CustomParamXmlValues].[ParamValue])+6,100),0, CHARINDEX('"', SUBSTRING([dbo].[CustomParamXmlValues].[ParamValue], CHARINDEX('name="', [dbo].[CustomParamXmlValues].[ParamValue])+6,100))) As Name FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@CustNo AND [dbo].[CustomParamXmlValues].[ParamLevel]='C' AND [dbo].[CustomParamXmlValues].[ParamNo] = @ParamNo END
CREATE PROCEDURE [dbo].[EAIP_DeleteProfileCustomParamScalarValuesByInterfaceVersion_182](@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID varchar(10), @Version VARCHAR(10)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamScalarValues] FROM [dbo].[CustomParamScalarValues] cpsv Join [dbo].[Profile] p on cpsv.TargetNo = p.ProfNo AND cpsv.ParamLevel='P' AND p.InterfaceID=@InterfaceID AND p.Version=@Version EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Interfaces', 'Delete Profile CustomParamScalarValues By InterfaceVersion', @InterfaceID, @Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceKnownSearchItemList_103](@InterfaceID varchar(10), @Version varchar(10)) AS /** procedure is used by EACopy **/ BEGIN SELECT [dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo], [dbo].[InterfaceKnownSearchItems].[InterfaceID], [dbo].[InterfaceKnownSearchItems].[Version], [dbo].[InterfaceKnownSearchItems].[SeqNo], [dbo].[InterfaceKnownSearchItems].[IsSelected], [dbo].[InterfaceKnownSearchItems].[SearchString], dbo.EAIF_InterfaceKnownSearchItemLangAndLabels_103([dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]) AS Labels, dbo.EAIF_InterfaceKnownSearchItemLangAndGhostText_103([dbo].[InterfaceKnownSearchItems].[KnownSearchItemNo]) AS GhostTextList FROM [dbo].[InterfaceKnownSearchItems] WHERE [dbo].[InterfaceKnownSearchItems].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceKnownSearchItems].[Version] =@Version END
CREATE PROCEDURE [dbo].[EAUI_ResetProfCatalogHoldingTblCaptions_104] ( @UserID nvarchar(20), @UserIP varchar(30), @ProfNo int, @DbVerNo int, @LangCode varchar(10) ) AS BEGIN TRY BEGIN TRANSACTION -- Delete all captions for a given profile and catalog Delete from [dbo].[ProfCatalogHoldingTblCaptions] where [dbo].[ProfCatalogHoldingTblCaptions].[ProfNo]=@ProfNo and [dbo].[ProfCatalogHoldingTblCaptions].[DbVerNo]=@DbVerNo and [dbo].[ProfCatalogHoldingTblCaptions].[LangCode]=@LangCode EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profile Catalog holding table captions','Reset caption for the profile and catalog',@ProfNo,@DbVerNo,@LangCode COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
--sql content merged from file: \Functions\EAIF_GetCatalogDbName_97.sql Create Function dbo.EAIF_GetCatalogDbName_97() returns varchar(10) as Begin Declare @Seed varchar(6) Declare @Char char(1) Declare @NewSeed int Declare @ID varchar(4) declare @DbNameParamNo int Declare @SeedParamNo int Declare @IDParamNo int Declare @AppNo int Declare @DbName varchar(10) Select @AppNo=[dbo].[ConfigApplication].[ApplicationNo] from [dbo].[ConfigApplication] where [dbo].[ConfigApplication].[ApplicationID]='eadmin' select @DbNameParamNo=[dbo].[ConfigParamList].[ParamNo] from [dbo].[ConfigParamList] where [dbo].[ConfigParamList].[ApplicationNo]=@AppNo and [dbo].[ConfigParamList].[ParamName]='databaseServer' select @SeedParamNo=[dbo].[ConfigParamList].[ParamNo] from [dbo].[ConfigParamList] where [dbo].[ConfigParamList].[ApplicationNo]=@AppNo and [dbo].[ConfigParamList].[ParamName]='catalogSeed' select @IDParamNo=[dbo].[ConfigParamList].[ParamNo] from [dbo].[ConfigParamList] where [dbo].[ConfigParamList].[ApplicationNo]=@AppNo and [dbo].[ConfigParamList].[ParamName]='databaseServerID' Select @Seed=[dbo].[ConfigParamScalarValues].[ParamValue] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@SeedParamNo and [dbo].[ConfigParamScalarValues].[TargetNo] in (Select [dbo].[ConfigParamScalarValues].[TargetNo] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@DbNameParamNo and [dbo].[ConfigParamScalarValues].[ParamValue]=@@ServerName) Select @ID=[dbo].[ConfigParamScalarValues].[ParamValue] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@IDParamNo and [dbo].[ConfigParamScalarValues].[TargetNo] in (Select [dbo].[ConfigParamScalarValues].[TargetNo] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@DbNameParamNo and [dbo].[ConfigParamScalarValues].[ParamValue]=@@ServerName) if @Seed is null Select @Seed=[dbo].[ConfigParamScalarValues].[ParamValue] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@SeedParamNo and [dbo].[ConfigParamScalarValues].[TargetNo]=@AppNo if @ID is null Select @ID=[dbo].[ConfigParamScalarValues].[ParamValue] from [dbo].[ConfigParamScalarValues] where [dbo].[ConfigParamScalarValues].[ParamNo]=@IDParamNo and [dbo].[ConfigParamScalarValues].[TargetNo]=@AppNo Set @NewSeed=Convert(int,Left(@Seed,Len(@Seed)-1))+1 Set @Char=Right(@Seed,1) if @NewSeed>99999 Begin set @NewSeed=1 set @Char=char(ascii(@Char)+1) End set @DbName=Convert(varchar(5), @NewSeed) Set @DbName=Replicate('0',5-len(@DbName))+@DbName+@Char set @DbName='cat' + @DbName + @ID return @DbName End
CREATE Procedure [dbo].[EAUI_DeleteInterfaceMDbLimiter_89] (@UserID nvarchar(20), @UserIP varchar(10), @ScreenNo int, @LimiterNo int) As Declare @InterfaceID varchar(10) Declare @Version varchar(10) Declare @ScreenID varchar(10) Declare @LimiterID varchar(10) Select @InterfaceID=[dbo].[InterfaceScreen].[InterfaceID] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo Select @Version=[dbo].[InterfaceScreen].[Version] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo Select @ScreenID=[dbo].[InterfaceScreen].[ScreenID] from [dbo].[InterfaceScreen] where [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo Select @LimiterID=[dbo].[MDbLimiterList].[LimiterID] from [dbo].[MDbLimiterList] where [dbo].[MDbLimiterList].[LimiterNo]=@LimiterNo Delete [dbo].[InterfaceMDbLimiterList] where [dbo].[InterfaceMDbLimiterList].[IntfScreenNo]=@ScreenNo and [dbo].[InterfaceMDbLimiterList].[LimiterNo]=@LimiterNo if @@rowcount<>0 Exec [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbLimiters', 'Delete Limiter from Interface', @InterfaceID, @Version, @ScreenID, @LimiterID
CREATE PROCEDURE [dbo].[EAIP_DeleteCustomParamScalarValue_70](@TargetNo int, @ParamLevel char(1),@ParamNo int) AS BEGIN DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo DECLARE @ParamName varchar(100) SELECT @ParamName=[dbo].[CustomParamList].[ParamName] FROM [dbo].[CustomParamList] WHERE [dbo].[CustomParamList].[ParamNo]=@ParamNo -- Temporary logic for Release 14.4 EhpmEbscoAdmin-2214. If guestAccessAuthType is bing updated we need to update guestAccessProxy and vice versa -- This logic will be removed in Release 15.1 when the guestAccessProxy Parameter will be removed. DECLARE @ParamNo2 INT IF @ParamName='guestAccessAuthType' BEGIN SELECT @ParamNo2=[dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]='guestAccessProxy' DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo2 END ELSE IF @ParamName='guestAccessProxy' BEGIN SELECT @ParamNo2=[dbo].[CustomParamList].[ParamNo] FROM dbo.CustomParamList WHERE [dbo].[CustomParamList].[ParamName]='guestAccessAuthType' DELETE FROM [dbo].[CustomParamScalarValues] WHERE [dbo].[CustomParamScalarValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamScalarValues].[ParamLevel]='P' AND [dbo].[CustomParamScalarValues].[ParamNo]=@ParamNo2 END END
/*bug fixed - added condition for hidden collections */ CREATE PROCEDURE [dbo].[EAUI_GetProfileLocalAuth_70] ( @ProfNo int, @CustID varchar(10) ) AS BEGIN SELECT b.ColNo, b.ColName, ISNULL(a.ColNo, 0) Selected FROM [dbo].[ProfLocalAuthority] a RIGHT OUTER JOIN [dbo].[Collection] b ON a.ColNo = b.ColNo AND a.ProfNo = @ProfNo WHERE b.CustID = @CustID and b.Exclude=0 and b.Hidden=0 and b.IsDeleted = 0 END
--sql content merged from file: \StoredProcedures\EAUI_AddModifyCustomWidget_912.sql CREATE PROCEDURE [dbo].[EAUI_AddModifyCustomWidget_912] (@UserID nvarchar(20), @UserIP varchar(10), @WidgetNo int, @ProfNo int, @WidgetType varchar(4), @WidgetLabel nvarchar (255), @WidgetHeight int, @HTML nvarchar (max), @URL nvarchar (255), @DefOpen bit, @Show bit, @SeqNo int, @Action varchar(4), @DisplayScreen varchar(20)) AS BEGIN DECLARE @SequenceNo int DECLARE @NewID int BEGIN TRY IF @Action='Add' BEGIN IF EXISTS ( Select 1 from dbo.ProfCustomWidgets Where [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo) BEGIN DECLARE @ScreenLabel nvarchar(255) SELECT @ScreenLabel=[dbo].[ProfCustomWidgets].[Label] FROM [dbo].[ProfCustomWidgets] Where [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo RAISERROR('The Widget with Label :"%s" already exists".', 16,-1, @ScreenLabel) RETURN END /** Get Next SeqNo Number **/ SELECT @SequenceNo=MAX([dbo].[ProfCustomWidgets].[SeqNo])+1 FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[ProfNo]=@ProfNo IF @SequenceNo IS NULL SET @SequenceNo=1 BEGIN TRANSACTION INSERT INTO [dbo].[ProfCustomWidgets] ([dbo].[ProfCustomWidgets].[ProfNo],[dbo].[ProfCustomWidgets].[Type],[dbo].[ProfCustomWidgets].[Label],[dbo].[ProfCustomWidgets].[Height],[dbo].[ProfCustomWidgets].[CustomHTML],[dbo].[ProfCustomWidgets].[URL],[dbo].[ProfCustomWidgets].[DefOpen],[dbo].[ProfCustomWidgets].[Show],[dbo].[ProfCustomWidgets].[SeqNo],[dbo].[ProfCustomWidgets].[DisplayScreen]) Values (@ProfNo,@WidgetType,@WidgetLabel,@WidgetHeight,@HTML,@URL,@DefOpen,@Show,@SequenceNo,@DisplayScreen) IF @UserID is NOT NULL and @UserIP IS NOT NULL BEGIN SELECT @NewID=SCOPE_IDENTITY() EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP, 'Add New Widget', '',@NewID,@ProfNo,@WidgetType,@WidgetLabel END COMMIT TRANSACTION END /** Add end **/ ELSE /** @Action='Upd'**/ IF EXISTS (Select 1 from dbo.ProfCustomWidgets Where [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo) BEGIN BEGIN TRANSACTION UPDATE dbo.ProfCustomWidgets SET [dbo].[ProfCustomWidgets].[Type]=@WidgetType, [dbo].[ProfCustomWidgets].[Label]=@WidgetLabel, [dbo].[ProfCustomWidgets].[Height]=@WidgetHeight, [dbo].[ProfCustomWidgets].[CustomHTML]=@HTML, [dbo].[ProfCustomWidgets].[URL]=@URL, [dbo].[ProfCustomWidgets].[DefOpen]=@DefOpen, [dbo].[ProfCustomWidgets].[Show]=@Show, [dbo].[ProfCustomWidgets].[SeqNo]=@SeqNo WHERE [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo IF @UserID is NOT NULL and @UserIP IS NOT NULL EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP, 'Update Widget', '',@WidgetNo,@ProfNo,@WidgetType,@WidgetLabel COMMIT TRANSACTION END END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EPCS_GetSubjectGroups_86] AS BEGIN SET NOCOUNT ON SELECT gl.GroupID, dbo.EAIF_GetGroupCaptions_80(gl.GroupNo) as Captions, dbo.EAIF_GetGroupMouseOverTexts_80(gl.GroupNo) as MouseOverTexts FROM [dbo].[GroupList] gl END
CREATE PROCEDURE [dbo].[CSI_GetCustomerName_70](@EncCustGrp varchar(255)) AS BEGIN DECLARE @CustGroup varchar(100) DECLARE @CustID varchar(10) SET @CustGroup = dbo.EAIF_Decrypt_70(@EncCustGrp) SET @CustID = SUBSTRING(@CustGroup,1,CHARINDEX('.',@CustGroup)-1) SELECT [dbo].[Customer].[CustID], [dbo].[Customer].[CustName] FROM [dbo].[Customer] WHERE [dbo].[Customer].[CustID]=@CustID END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceToolbarItem_77] (@IntfToolbarItem int, @LangCode varchar(10))AS BEGIN SELECT it.ItemName,it.Category,it.Alignment,it.Image, ISNULL(itc.Caption, N'') AS Caption FROM [dbo].[InterfaceToolbar] it LEFT OUTER JOIN [dbo].[InterfaceToolbarCaption] itc ON it.IntfToolbarItem = itc.IntfToolbarItem AND [itc].[LangCode]=@LangCode WHERE it.IntfToolbarItem=@IntfToolbarItem END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceDetails_90](@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10))AS SELECT iv.InterfaceID, iv.Version, il.InterfaceName, il.LinkText, il.HelpText FROM [dbo].[InterfaceVersion] iv LEFT OUTER JOIN [dbo].[InterfaceLanguage] il ON iv.InterfaceID = il.InterfaceID AND iv.Version=il.Version AND il.LangCode=@LangCode WHERE iv.InterfaceID<>'all' and iv.InterfaceID=@InterfaceID and iv.Version=@Version
CREATE PROCEDURE [dbo].[EPCS_GetCustomerGroupProfilesInfo] ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX) ) AS BEGIN EXEC [dbo].[EAIP_GetCustomerGroupInfo_231] @CustID, @GroupID, @RequiredGroupParams SELECT p.SeqNo, p.ProfNo, p.ProfID, p.ProfName, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP FROM [dbo].[EAIF_GetCustomerGroupProfilesInfo_231](@CustID, @GroupID) AS p ORDER BY p.SeqNo, p.ProfID END
CREATE PROCEDURE dbo.EAUI_GetDoesProfileHaveEnabledDatabases ( @ProfNo int ) AS BEGIN SELECT CASE WHEN EXISTS( SELECT TOP(1) 1 FROM dbo.ProfDatabase pd INNER JOIN dbo.DbList dbl ON dbl.DbVerNo = pd.DbVerNo WHERE pd.ProfNo = @ProfNo AND pd.Enable = 1 AND dbl.NonSearchableDb = 0 AND dbl.DbName != 'edspub' AND (pd.AccessEndDate IS NULL OR pd.AccessEndDate >= GETDATE()) ) THEN 1 ELSE 0 END END
CREATE PROCEDURE [dbo].[EAIP_SetAZCollectionDate_97] (@ColNo int) AS BEGIN SET NOCOUNT ON UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=getdate() WHERE [dbo].[Collection].[ColNo]=@ColNo UPDATE [dbo].[Collection] SET [dbo].[Collection].[LastUpdateDate]=getdate() WHERE [dbo].[Collection].[SharedFrom]=@ColNo RETURN END
--sql content merged from file: \StoredProcedures\EAUI_UpdateProfDbDetails_92.sql CREATE PROCEDURE [dbo].[EAUI_UpdateProfDbDetails_92] (@UserID nvarchar(20), @UserIP varchar(10), @ProfNo int, @DbVerNo int, @ProfDbResourceType nvarchar(255), @ProfDbShortDescription nvarchar(1500), @ProfDbDisplayName nvarchar(255)) AS Declare @DefaultDbResourceType nvarchar(255) Declare @DefaultDbShortDescription nvarchar(1500) Declare @DefaultDisplayName nvarchar(255) SELECT @DefaultDbResourceType=dbo.EAIF_GetDbParamScalarValue_70(@DbVerNo, 'ResourceType') Select @DefaultDisplayName=[dbo].[DbList].[DisplayName] from [dbo].[DbList] where [dbo].[DbList].[DbVerNo]=@DbVerNo if @ProfDbResourceType=@DefaultDbResourceType set @ProfDbResourceType=null if @ProfDbDisplayName=@DefaultDisplayName set @ProfDbDisplayName=null Begin try begin transaction -- A. Check the inputs - if both are null (no customized data) -- A1. If entry exists for ProfNo/DbVerNo - Delete the entry -- A2. If no entry exists - Do nothing (no insert with nulls!) -- B. If atleast one of the inputs have data -- B1. If entry exist - Do an Update with modified data -- B2. If no entry exists - Insert a new row IF (@ProfDbResourceType IS NULL AND @ProfDbShortDescription IS NULL and @ProfDbDisplayName is null) BEGIN IF EXISTS(Select 1 from [dbo].[ProfileDbDisplayDetails] where [dbo].[ProfileDbDisplayDetails].[ProfNo]=@ProfNo and [dbo].[ProfileDbDisplayDetails].[DbVerNo]=@DbVerNo) BEGIN DELETE [dbo].[ProfileDbDisplayDetails] where [dbo].[ProfileDbDisplayDetails].[ProfNo]=@ProfNo and [dbo].[ProfileDbDisplayDetails].[DbVerNo]=@DbVerNo END -- IF Not Exists Do Nothing..No inserts with Null values END ELSE IF EXISTS(Select 1 from [dbo].[ProfileDbDisplayDetails] where [dbo].[ProfileDbDisplayDetails].[ProfNo]=@ProfNo and [dbo].[ProfileDbDisplayDetails].[DbVerNo]=@DbVerNo) BEGIN UPDATE [dbo].[ProfileDbDisplayDetails] SET [dbo].[ProfileDbDisplayDetails].[ProfDbResourceType]=@ProfDbResourceType, [dbo].[ProfileDbDisplayDetails].[ProfDbShortDescription]=@ProfDbShortDescription, [dbo].[ProfileDbDisplayDetails].[ProfDbDisplayName]=@ProfDbDisplayName WHERE ([dbo].[ProfileDbDisplayDetails].[ProfNo]=@ProfNo and [dbo].[ProfileDbDisplayDetails].[DbVerNo]=@DbVerNo) END ELSE INSERT [dbo].[ProfileDbDisplayDetails] ([dbo].[ProfileDbDisplayDetails].[ProfNo],[dbo].[ProfileDbDisplayDetails].[DbVerNo],[dbo].[ProfileDbDisplayDetails].[ProfDbResourceType],[dbo].[ProfileDbDisplayDetails].[ProfDbShortDescription], [dbo].[ProfileDbDisplayDetails].[ProfDbDisplayName]) Values (@ProfNo,@DbVerNo,@ProfDbResourceType,@ProfDbShortDescription, @ProfDbDisplayName) commit transaction DECLARE @Displayname nvarchar (100) SELECT @Displayname=dbo.EAIF_GetDbDisplayName_92(@DbVerNo) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'EAUI_UpdateProfDbDetails_92', 'Update /Insert for ', @ProfNo, @Displayname End try begin catch rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); end catch
CREATE FUNCTION [dbo].[EAIF_IPNumber2IPAddress_87](@IPNumber BigInt) RETURNS BigInt AS BEGIN RETURN (@IPNumber / 1000000000) * 0x1000000 + ((@IPNumber % 1000000000) / 1000000) * 0x10000 + ((@IPNumber % 1000000) / 1000) * 0x100 + ((@IPNumber % 1000)); END
CREATE PROCEDURE [dbo].[EAUI_GetCustomersAmount_203] @CustName VARCHAR(10) = NULL, @CustID VARCHAR(10) = NULL AS BEGIN SELECT COUNT(*) FROM Customer WHERE (@CustName IS NULL OR CustName LIKE @CustName + '%') AND (@CustID IS NULL OR CustID LIKE @CustID + '%') AND CustID <> 'system' AND CustType <> 'U' END
CREATE PROCEDURE [dbo].[EAIP_DeleteProfileCustomParamXmlValuesByInterfaceVersion_182](@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID varchar(10), @Version VARCHAR(10)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[CustomParamXmlValues] FROM [dbo].[CustomParamXmlValues] cpxv Join [dbo].[Profile] p on cpxv.TargetNo = p.ProfNo AND cpxv.ParamLevel='P' AND p.InterfaceID=@InterfaceID AND p.Version=@Version EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Interfaces', 'Delete Profile CustomParamXmlValues By InterfaceVersion', @InterfaceID, @Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE dbo.EAIP_GetInterfaceKnownSearchItemList_161 (@InterfaceID varchar(10), @Version varchar(10), @LangCode varchar(10)) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID]=@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version ) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version ) RETURN END IF @LangCode IS NULL OR @LangCode='' SET @LangCode='en' IF NOT EXISTS (SELECT 1 FROM [dbo].[LangList] WHERE [dbo].[LangList].[LangCode]=@LangCode) BEGIN RAISERROR('The LanguageCode: %s does not exist', 16,-1, @LangCode) RETURN END SELECT item.KnownSearchItemNo, item.InterfaceID, item.Version, item.SeqNo, item.SearchString, item.IsSelected, ISNULL(caption.Label, '') AS Label, ISNULL(caption.GhostText, '') AS GhostText, engCaption.Label AS EnglishLabel FROM [dbo].[InterfaceKnownSearchItems] item LEFT JOIN [dbo].[InterfaceKnownSearchItemCaption] caption ON item.KnownSearchItemNo = caption.KnownSearchItemNo and caption.LangCode = @LangCode LEFT JOIN [dbo].[InterfaceKnownSearchItemCaption] engCaption ON item.KnownSearchItemNo = engCaption.KnownSearchItemNo and engCaption.LangCode = 'en' WHERE item.InterfaceID=@InterfaceID AND item.Version=@Version ORDER BY item.SeqNo END
CREATE PROCEDURE [dbo].[EAUI_ResetProfFeatureItemsShowToDefault_102]( @UserId nvarchar(20), @UserIp varchar(15), @ProfNo int, @IntfFeatureNo int) AS BEGIN TRY BEGIN TRANSACTION -- Reset the Show to null; if the value is null, the value would default to 1 (Show). UPDATE [dbo].[ProfFeatureValues] SET [dbo].[ProfFeatureValues].[Show] = NULL WHERE [dbo].[ProfFeatureValues].[ProfNo]=@ProfNo AND [dbo].[ProfFeatureValues].[InterfaceFeatureNo]=@IntfFeatureNo -- Reset the SeqNo to null for interface default customization only. -- Items added on the profile should be deleted manually. UPDATE [dbo].[ProfFeatureValues] SET [dbo].[ProfFeatureValues].[SeqNo] = NULL WHERE [dbo].[ProfFeatureValues].[ProfNo]=@ProfNo AND [dbo].[ProfFeatureValues].[InterfaceFeatureNo]=@IntfFeatureNo and [dbo].[ProfFeatureValues].[ItemType]='D' -- if all the nullable fields are nulls, then remove the customized entry DELETE [dbo].[ProfFeatureValues] WHERE [dbo].[ProfFeatureValues].[ProfNo]=@ProfNo AND [dbo].[ProfFeatureValues].[InterfaceFeatureNo]=@IntfFeatureNo AND [dbo].[ProfFeatureValues].[FieldValueXml] IS NULL AND [dbo].[ProfFeatureValues].[Show] IS NULL and [dbo].[ProfFeatureValues].[SeqNo] IS NULL EXEC [dbo].[EAIP_LogActivity_70] @UserId, @UserIp, 'Profile', 'Reset Prof Feature Items Show to Default', @ProfNo,@IntfFeatureNo COMMIT TRANSACTION END TRY BEGIN CATCH rollback transaction DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH
CREATE FUNCTION [dbo].[EAIF_GetCharDescription_70](@FieldName varchar(50), @FieldCode char) RETURNS varchar(100) AS BEGIN RETURN (SELECT [dbo].[CharValueMap].[Description] FROM [dbo].[CharValueMap] WHERE [dbo].[CharValueMap].[FieldName]=@FieldName AND [dbo].[CharValueMap].[FieldCode]=@FieldCode) END
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfaceMDbSTS_90] (@UserID nvarchar(20), @UserIP varchar(10), @InterfaceID varchar(10), @Version varchar(10), @MultiDbSTSID varchar(10)) AS Begin Try begin transaction Delete [dbo].[InterfaceMultiDbSTSList] where [dbo].[InterfaceMultiDbSTSList].[InterfaceID]=@InterfaceID and [dbo].[InterfaceMultiDbSTSList].[Version]=@Version and [dbo].[InterfaceMultiDbSTSList].[MultiDbSTSID]=@MultiDbSTSID commit transaction EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'MDbSTS', 'Delete MDbSTS from Interface', @MultiDbSTSID, @InterfaceID, @Version End Try Begin catch rollback transaction End catch
CREATE PROCEDURE [dbo].[EAIP_DeleteCustomParamXmlValue_70](@TargetNo int, @ParamLevel char(1),@ParamNo int, @ItemName varchar(255)) AS BEGIN DELETE FROM [dbo].[CustomParamXmlValues] WHERE [dbo].[CustomParamXmlValues].[TargetNo]=@TargetNo AND [dbo].[CustomParamXmlValues].[ParamLevel]=@ParamLevel AND [dbo].[CustomParamXmlValues].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlValues].[ItemName]=@ItemName END
/*bug fixed - corrected condition for hidden collections in case Ep Admin */ CREATE PROCEDURE [dbo].[EAUI_GetProfileLocalLimiters_76] ( @ProfNo int, @CustID varchar(10), @LangCode varchar(10), @ScreenNo int, @EditLevel int ) AS BEGIN -- JIra 3191 changed default value for ISNULL from 100000 to 32767, which is a legal smallint. DECLARE @MAX_SEQNO SMALLINT = 32767; DECLARE @I INT = 0 SELECT b.ColNo ,CASE WHEN ISNULL(a.IsHidden,b.Hidden)=1 THEN b.ColID + N'*' ELSE b.ColID END AS ColID ,dbo.EAIF_GetLocalLimiterCaption_76(@ProfNo,b.ColNo,@LangCode,@ScreenNo) ColName ,ISNULL(a.Show,0) AS Show ,ISNULL(a.DefValue, 'Off') AS DefValue ,ROW_NUMBER() OVER (ORDER BY IsNull( [a].[SeqNo],@MAX_SEQNO )) As SeqNo -- if user has saved a seqno,order by that, put rest at end EADM-3032 ,ISNULL(a.IsHidden,b.Hidden) AS IsHidden FROM [dbo].[ProfLocalLimiter2] a RIGHT OUTER JOIN [dbo].[Collection] b ON a.ColNo = b.ColNo AND a.ProfNo = @ProfNo AND a.IntfScreenNo=@ScreenNo WHERE b.CustID = @CustID AND (ISNULL(a.IsHidden,b.Hidden)=0 OR @EditLevel=1) AND b.IsDeleted = 0 ORDER BY IsNull( SeqNo,@MAX_SEQNO) END
--sql content merged from file: \StoredProcedures\EAUI_AddModifyCustomWidget_97.sql CREATE PROCEDURE dbo.EAUI_AddModifyCustomWidget_97 (@UserID nvarchar(20), @UserIP varchar(10), @WidgetNo int, @ProfNo int, @WidgetType varchar(4), @WidgetLabel nvarchar (255), @WidgetHeight int, @HTML nvarchar (max), @URL nvarchar (255), @DefOpen bit, @Show bit, @SeqNo int, @Action varchar(4)) AS BEGIN DECLARE @SequenceNo int DECLARE @NewID int BEGIN TRY IF @Action='Add' BEGIN IF EXISTS ( Select 1 from dbo.ProfCustomWidgets Where [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo) BEGIN DECLARE @ScreenLabel nvarchar(255) SELECT @ScreenLabel=[dbo].[ProfCustomWidgets].[Label] FROM [dbo].[ProfCustomWidgets] Where [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo RAISERROR('The Widget with Label :"%s" already exists".', 16,-1, @ScreenLabel) RETURN END /** Get Next SeqNo Number **/ SELECT @SequenceNo=MAX([dbo].[ProfCustomWidgets].[SeqNo])+1 FROM [dbo].[ProfCustomWidgets] WHERE [dbo].[ProfCustomWidgets].[ProfNo]=@ProfNo IF @SequenceNo IS NULL SET @SequenceNo=1 BEGIN TRANSACTION INSERT INTO [dbo].[ProfCustomWidgets] ([dbo].[ProfCustomWidgets].[ProfNo],[dbo].[ProfCustomWidgets].[Type],[dbo].[ProfCustomWidgets].[Label],[dbo].[ProfCustomWidgets].[Height],[dbo].[ProfCustomWidgets].[CustomHTML],[dbo].[ProfCustomWidgets].[URL],[dbo].[ProfCustomWidgets].[DefOpen],[dbo].[ProfCustomWidgets].[Show],[dbo].[ProfCustomWidgets].[SeqNo]) Values (@ProfNo,@WidgetType,@WidgetLabel,@WidgetHeight,@HTML,@URL,@DefOpen,@Show,@SequenceNo) IF @UserID is NOT NULL and @UserIP IS NOT NULL BEGIN SELECT @NewID=SCOPE_IDENTITY() EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP, 'Add New Widget', '',@NewID,@ProfNo,@WidgetType,@WidgetLabel END COMMIT TRANSACTION END /** Add end **/ ELSE /** @Action='Upd'**/ IF EXISTS (Select 1 from dbo.ProfCustomWidgets Where [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo) BEGIN BEGIN TRANSACTION UPDATE dbo.ProfCustomWidgets SET [dbo].[ProfCustomWidgets].[Type]=@WidgetType, [dbo].[ProfCustomWidgets].[Label]=@WidgetLabel, [dbo].[ProfCustomWidgets].[Height]=@WidgetHeight, [dbo].[ProfCustomWidgets].[CustomHTML]=@HTML, [dbo].[ProfCustomWidgets].[URL]=@URL, [dbo].[ProfCustomWidgets].[DefOpen]=@DefOpen, [dbo].[ProfCustomWidgets].[Show]=@Show, [dbo].[ProfCustomWidgets].[SeqNo]=@SeqNo WHERE [dbo].[ProfCustomWidgets].[WidgetID]=@WidgetNo IF @UserID is NOT NULL and @UserIP IS NOT NULL EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP, 'Update Widget', '',@WidgetNo,@ProfNo,@WidgetType,@WidgetLabel COMMIT TRANSACTION END END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EPCS_GetSubsetDbList_103] ( @DBName varchar(10), @DBLabel varchar(10)='live' ) AS BEGIN SELECT d.DbName FROM [dbo].[DbSubset] ds INNER JOIN [dbo].[DbList] d ON d.DbVerNo = ds.SubsetDbVerNo INNER JOIN [dbo].[DbList] phys ON phys.DbVerNo = ds.PhysDbVerNo WHERE phys.DbName = @DBName AND phys.DbLabel = @DBLabel END
CREATE PROCEDURE [dbo].[DDS_CompareDatabaseSegments_96]( @UserID nvarchar(255), @UserIP varchar(15), @DbGroupName varchar(100), @DbGroupLabel varchar(100), @xmlDoc XML --(DDSUpdateSchemaCollectionOLD) ) AS BEGIN SET NOCOUNT ON DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; -- ################################################################################### -- Shread the XML --- In this case, we want to capture the bibMap and FieldTag XML for each segment -- ################################################################################### DECLARE @segmemts TABLE ( DbVerNo INT, DbName VARCHAR(100) NOT NULL, DbLabel VARCHAR(100) NOT NULL, Volume VARCHAR(20), SegName VARCHAR(10), bibMaps XML, fieldTags XML, vbibMaps VARCHAR(max), vfieldTags VARCHAR(max) ) INSERT INTO @segmemts SELECT 0 AS DbVerNo, s.segments.value('data(../../../../@dbname)[1]', 'VARCHAR(100)') AS DBName, s.segments.value('data(../../../../@dblabel)[1]', 'VARCHAR(100)') AS DbLabel, s.segments.value('data(../../@volume)[1]', 'varchar(20)') AS Volume, s.segments.value('@name', 'varchar(10)') AS SegName, --s.segments.query('thesauruses') AS thesauruses, s.segments.query('bibMaps') AS bibMaps, s.segments.query('fieldTags') AS fieldTags, NULL, NULL FROM @xmlDoc.nodes('epcInfo/database/dbFileInfoList/dbFileInfo/segments/segment') AS s(segments) UPDATE @segmemts SET DbVerNo=dbo.EAIF_GetDbVerNo_70(DbName,DbLabel) UPDATE @segmemts SET vbibMaps=CONVERT (varchar(max), bibMaps), vfieldTags=CONVERT (varchar(max), fieldTags) IF exists( select a.Volume AS baseVolume, b.Volume AS Volume from @segmemts a LEFT JOIN @segmemts b ON a.DbVerNo=b.DbVerNo AND a.SegName = b.SegName where a.vbibMaps <> b.vbibMaps OR a.vfieldTags <> b.vfieldTags ) BEGIN --PRINT 'Possible segment mismatch' -- Post a warning to the DdsWarnings table INSERT INTO [dbo].[DdsWarnings] ([dbo].[DdsWarnings].[DbName], [dbo].[DdsWarnings].[DbLabel], [dbo].[DdsWarnings].[UserID], [dbo].[DdsWarnings].[UserIP], [dbo].[DdsWarnings].[Msg]) VALUES (@DbGroupName, @DbGroupLabel, @UserID, @UserIP, 'Possible segment mismatch') END END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceToolbarItemDatabaseList_77] (@IntfToolbarItem int)AS BEGIN SELECT db.DbVerNo, db.DisplayName+ N' ('+db.DbName+N','+db.DbLabel+N')' AS Db FROM [dbo].[DbList] db INNER JOIN [dbo].[InterfaceToolbarDb] itd ON itd.DbVerNo = db.DbVerNo WHERE itd.IntfToolbarItem = @IntfToolbarItem ORDER BY db.DisplayName END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceDocTypes_77](@InterfaceID varchar(10), @Version varchar(10),@langCode varchar(10))AS BEGIN SELECT dtl.DocTypeID, idc.Caption, idc.MouseOverText FROM [dbo].[DocTypeList] dtl INNER JOIN [dbo].[InterfaceDocType] idt ON dtl.DocTypeNo = idt.DocTypeNo INNER JOIN [dbo].[InterfaceDocTypeCaption] idc ON idt.IntfDocTypeNo = idc.IntfDocTypeNo WHERE idt.InterfaceID = @InterfaceID AND idt.Version = @Version AND idc.LangCode = @langCode END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerGroupProfilesInfoByDbGroupId_231] ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX), @DbGroupID VARCHAR(MAX), @DbLabel VARCHAR(10) ) AS BEGIN EXEC [dbo].[EAIP_GetCustomerGroupInfo_231] @CustID, @GroupID, @RequiredGroupParams; DECLARE @CurrentDate DATETIME = GETDATE(); IF EXISTS(SELECT 1 FROM [dbo].[GroupList] WHERE GroupID = @DbGroupID) BEGIN SELECT p.SeqNo, p.ProfNo, p.ProfID, p.ProfName, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP FROM [dbo].[EAIF_GetCustomerGroupProfilesInfo_231](@CustID, @GroupID) AS p WHERE EXISTS ( SELECT 1 FROM [dbo].[GroupList] gl INNER JOIN [dbo].[DbGroup] dbg ON gl.GroupNo = dbg.GroupNo INNER JOIN [dbo].[DbList] AS dbl ON dbg.DbVerNo = dbl.DbVerNo INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo = pd.ProfNo AND pd.DbVerNo = dbl.DbVerNo WHERE gl.GroupID = @DbGroupID AND dbl.DbLabel = @DbLabel AND (pd.[AccessEndDate] >= @CurrentDate OR pd.[AccessEndDate] IS NULL) AND pd.Enable = 1 ) ORDER BY p.SeqNo, p.ProfID END ELSE BEGIN DECLARE @CustGroupNo INT = TRY_CONVERT(INT, @DbGroupID) SELECT p.SeqNo, p.ProfNo, p.ProfID, p.ProfName, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP FROM [dbo].[EAIF_GetCustomerGroupProfilesInfo_231](@CustID, @GroupID) as p WHERE EXISTS ( SELECT 1 FROM [dbo].[ProfCustGroupList] pcgl INNER JOIN [dbo].[ProfCustGroupDb] pcdbg ON pcgl.ProfNo = p.ProfNo AND pcgl.GroupNo = pcdbg.GroupNo INNER JOIN [dbo].[ProfDatabase] AS pd ON pcdbg.DbVerNo = pd.DbVerNo AND p.ProfNo = pd.ProfNo WHERE pcgl.GroupNo = @CustGroupNo AND (pd.[AccessEndDate] >= @CurrentDate OR pd.[AccessEndDate] IS NULL) AND pd.Enable = 1 ) ORDER BY p.SeqNo, p.ProfID END END
CREATE PROCEDURE [dbo].[EAUI_GetExpanderDetails_70] (@ControlName varchar(50), @LangCode varchar(10)) AS BEGIN SELECT gec.ControlName, ge.Description, gec.DefCaption FROM [dbo].[GlobalExpanderCaption] gec JOIN [dbo].[GlobalExpander] ge ON (gec.ControlName = ge.ControlName) WHERE gec.LangCode = @LangCode AND gec.ControlName = @ControlName END
CREATE PROCEDURE [dbo].[EAIP_SetCustConnectorsToPending] (@CustID VARCHAR(10), @Source VARCHAR(1)) AS BEGIN --This is to be called from EAIP_DeleteSubscription_100 only because it does not remove --records from profdatabase, that is left on existing delete subscription process UPDATE [dbo].[CustExternalDbList] SET [dbo].[CustExternalDbList].[Status] = 'P', [dbo].[CustExternalDbList].[LastModified] = GETDATE() FROM [dbo].[CustExternalDbList] JOIN [dbo].[Customer] c ON [dbo].[CustExternalDbList].[CustNo] = c.CustNo JOIN [dbo].[DbList] dbl ON [dbo].[CustExternalDbList].[DbVerNo] = dbl.DbVerNo WHERE [c].[CustID]=@CustID AND dbl.SourceType=@Source END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfFieldGroupDefaults_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @DbVerNo int, @FieldGroupNo int, @OutputMode varchar(10), @InProfDefValue bit) AS BEGIN DECLARE @DbMktDefValue bit, @MarketID varchar(20), @ProfLogName varchar(50), @CharDefValue varchar(50), @DbName nvarchar(100), @FieldGroupId varchar(100) SELECT @DbName=[dbo].[DbList].[DisplayName] FROM [dbo].[DbList] WHERE [dbo].[DbList].[DbVerNo]=@DbVerNo SELECT @FieldGroupId=[dbo].[FieldGroupList].[FieldGroupId] FROM [dbo].[FieldGroupList] WHERE [dbo].[FieldGroupList].[FieldGroupNo]=@FieldGroupNo SELECT @MarketID=[dbo].[Profile].[MarketID], @ProfLogName=[dbo].[Profile].[CustID]+'.'+[dbo].[Profile].[GroupID]+'.'+[dbo].[Profile].[ProfID] FROM [dbo].[Profile] WHERE [dbo].[Profile].[ProfNo]=@ProfNo SELECT @DbMktDefValue=[dbo].[DbFieldGroupDefaults].[DefValue] FROM [dbo].[DbFieldGroupDefaults] WHERE [dbo].[DbFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[DbFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo AND [dbo].[DbFieldGroupDefaults].[OutputMode]=@OutputMode AND [dbo].[DbFieldGroupDefaults].[MarketID]=@MarketID --Profile DefValue NOT Same as Database Default, so add it IF( (@DbMktDefValue IS NULL AND @InProfDefValue=1) OR (@DbMktDefValue<>@InProfDefValue) ) BEGIN DELETE FROM [dbo].[ProfFieldGroupDefaults] WHERE [dbo].[ProfFieldGroupDefaults].[ProfNo]=@ProfNo AND [dbo].[ProfFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[ProfFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo AND [dbo].[ProfFieldGroupDefaults].[OutputMode]=@OutputMode INSERT INTO [dbo].[ProfFieldGroupDefaults]([dbo].[ProfFieldGroupDefaults].[ProfNo], [dbo].[ProfFieldGroupDefaults].[DbVerNo], [dbo].[ProfFieldGroupDefaults].[FieldGroupNo], [dbo].[ProfFieldGroupDefaults].[OutputMode], [dbo].[ProfFieldGroupDefaults].[DefValue]) VALUES(@ProfNo, @DbVerNo, @FieldGroupNo, @OutputMode, @InProfDefValue) /* Log the Transaction */ SET @CharDefValue = 'New DefaultValue:' + CONVERT(CHAR(1), @InProfDefValue) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Database Fields', @ProfLogName, @DbName, @FieldGroupId, @CharDefValue END --DefValue Same as Database Default, so delete it ELSE IF( (@DbMktDefValue IS NULL AND @InProfDefValue=0) OR (@DbMktDefValue=@InProfDefValue) ) BEGIN DELETE FROM [dbo].[ProfFieldGroupDefaults] WHERE [dbo].[ProfFieldGroupDefaults].[ProfNo]=@ProfNo AND [dbo].[ProfFieldGroupDefaults].[DbVerNo]=@DbVerNo AND [dbo].[ProfFieldGroupDefaults].[FieldGroupNo]=@FieldGroupNo AND [dbo].[ProfFieldGroupDefaults].[OutputMode]=@OutputMode IF @@ROWCOUNT>0 BEGIN /* Log the Transaction */ SET @CharDefValue = 'Remove Same DefaultValue:' + CONVERT(CHAR(1), @InProfDefValue) EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles', 'Database Fields', @ProfLogName, @DbName, @FieldGroupId, @CharDefValue END END END
CREATE FUNCTION [dbo].[EAIF_IPNumber2IPAddressStr_87](@IPNumber BigInt) RETURNS VarChar(30) AS BEGIN DECLARE @Ret VarChar(30); DECLARE @IPAddress BigInt; SELECT @Ret = Cast(@IPNumber / 1000000000 as VarChar(3)) + '.' + Cast((@IPNumber % 1000000000) / 1000000 as VarChar(3)) + '.' + Cast((@IPNumber % 1000000) / 1000 as VarChar(3)) + '.' + Cast((@IPNumber % 1000) as VarChar(3)); RETURN @Ret; END
-- Created 2012.01.06 by jjalbert for "Search Tag Fallback Support" project CREATE PROCEDURE [dbo].[EAUI_GetCustomerSearchTags_102] ( @DbVerNo INT, @CustNo INT ) AS BEGIN SELECT td.SearchTagNo ,td.SearchTag ,td.Description ,ISNULL(cctd.FallBackBehavior, ISNULL(ctd.FallBackBehavior, td.FallBackBehavior)) FallBackBehavior ,ISNULL(cctd.FallBackBehavior,'') AS CustConnectorFallBackBehavior ,ISNULL(ctd.FallBackBehavior,'') AS ConnectorFallBackBehavior ,@DbVerNo as DbVerNo ,@CustNo as CustNo ,svm.Description as FallBackDescription FROM [dbo].[SearchTagFallbackDefaults] td LEFT OUTER JOIN [dbo].[CustConnectorSearchTagsFallBack] cctd ON td.[SearchTagNo] = cctd.[SearchTagNo] AND cctd.DbVerNo = @DbVerNo AND cctd.CustNo = @CustNo LEFT OUTER JOIN [dbo].[ConnectorSearchTagsFallBack] ctd ON td.[SearchTagNo] = ctd.[SearchTagNo] AND ctd.DbVerNo = @DbVerNo JOIN [dbo].[StringValueMap] svm on svm.FieldCode = ISNULL(cctd.FallBackBehavior, ISNULL(ctd.FallBackBehavior, td.FallBackBehavior)) AND svm.FieldName = 'FallbackBehavior' order by td.SeqNo END
CREATE PROCEDURE [dbo].[EAIP_DeleteProfilesByInterfaceVersion_182](@AdminUser NVARCHAR(20), @AdminUserIp VARCHAR(30), @InterfaceID varchar(10), @Version VARCHAR(10)) AS BEGIN BEGIN TRY BEGIN TRANSACTION DELETE [dbo].[Profile] Where [dbo].[Profile].[InterfaceID]=@InterfaceID AND [dbo].[Profile].[Version]=@Version EXEC [dbo].[EAIP_LogActivity_70] @AdminUser, @AdminUserIp, 'Profiles', 'DELETE Profiles By InterfaceVersion', @InterfaceID, @Version COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_GetInterfaceLanguage_161] ( @InterfaceID varchar(10) ,@Version varchar(10) ) AS BEGIN IF NOT EXISTS (SELECT 1 FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] = @InterfaceID AND [dbo].[InterfaceVersion].[Version] = @Version) BEGIN RAISERROR('The Interface-Version %s-%s does not exist.', 16,-1, @InterfaceID, @Version) RETURN END DECLARE @DefLangCode VARCHAR(10) SELECT @DefLangCode=[dbo].[InterfaceVersion].[DefLangCode] FROM [dbo].[InterfaceVersion] WHERE [dbo].[InterfaceVersion].[InterfaceID] =@InterfaceID AND [dbo].[InterfaceVersion].[Version]=@Version SELECT il.LangCode,il.LangDisplayName, ll.Description, il.SeqNo,@DefLangCode AS DefLangCode FROM [dbo].[LangList] ll LEFT JOIN [dbo].[InterfaceUserLangList] il ON il.LangCode =ll.LangCode WHERE il.InterfaceID =@InterfaceID AND il.Version=@Version ORDER BY il.SeqNo END
Create procedure [dbo].[EAUI_ResetProfileClusters_133] (@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @LangCode varchar(10), @IncludedContentTypes nvarchar(max)='All', @ExcludedContentTypes nvarchar(max)='') as Begin Begin Try Begin Transaction Delete [dbo].[ProfileClusterCaptions] FROM [dbo].[ProfileClusterCaptions] pcc LEFT OUTER JOIN dbo.DbCluster dbc ON pcc.ClustNo=dbc.ClustNo AND dbc.Enable=1 LEFT OUTER JOIN [dbo].[DbList] dbl ON dbc.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN dbo.DbContentList cl ON dbl.ContentType=cl.ContentType JOIN dbo.EAIF_GetItemTable_70(@IncludedContentTypes, ',') ict ON cl.Description=ict.Item OR ict.Item='all' LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@ExcludedContentTypes, ',') ect ON cl.Description=ect.Item WHERE [pcc].[ProfNo]=@ProfNo and [pcc].[LangCode]=@LangCode AND ect.Item is null Delete [dbo].[ProfileClusters2] FROM [dbo].[ProfileClusters2] pc LEFT OUTER JOIN dbo.DbCluster dbc ON pc.ClustNo=dbc.ClustNo AND dbc.Enable=1 LEFT OUTER JOIN [dbo].[DbList] dbl ON dbc.DbVerNo=dbl.DbVerNo LEFT OUTER JOIN dbo.DbContentList cl ON dbl.ContentType=cl.ContentType JOIN dbo.EAIF_GetItemTable_70(@IncludedContentTypes, ',') ict ON cl.Description=ict.Item OR ict.Item='all' LEFT OUTER JOIN dbo.EAIF_GetItemTable_70(@ExcludedContentTypes, ',') ect ON cl.Description=ect.Item WHERE [pc].[ProfNo]=@ProfNo AND ect.Item is null exec [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Reset Profile Clusters', @ProfNo, @LangCode Commit Transaction End Try Begin Catch ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); End Catch END
--sql content merged from file: \Functions\EAIF_GetChildSiteGroupID.sql create function [dbo].[EAIF_GetChildSiteGroupID] ( @p_CustID varchar(10) ) returns varchar(10) as begin declare @GroupID varchar(10) set @GroupID = case when exists(select 1 from dbo.UserGroup where [dbo].[UserGroup].[CustID] = @p_CustID and [dbo].[UserGroup].[GroupID] = 'main') then 'main' else (select top 1 [dbo].[UserGroup].[GroupID] from dbo.UserGroup where [dbo].[UserGroup].[CustID] = @p_CustID order by [dbo].[UserGroup].[GroupID] asc) end return @GroupID end
CREATE PROCEDURE [dbo].[EAUI_DeleteInterfacePrimaryDatabase_103] (@UserID nvarchar(20),@UserIP varchar(15), @InterfaceID varchar(10), @Version varchar(10), @DbVerNo int ) AS BEGIN Declare @DbName varchar(10) Declare @i int Declare @Count int Declare @CurrentDbVerNo int Create Table #DbVerNoTable (Num int Identity(1,1), DbVerNo int) Select @DbName=[dbo].[DbList].[DbName] from [dbo].[DbList] with (nolock) Where [dbo].[DbList].[DbVerNo]=@DbVerNo Insert #DbVerNoTable Select [dbo].[DbList].[DbVerNo] from [dbo].[DbList] where [dbo].[DbList].[DbName]=@DbName BEGIN TRY BEGIN TRANSACTION set @i=1 select @Count=Count(*) from #DbVerNoTable while (@i <= @Count) Begin select @CurrentDbVerNo=#DbVerNoTable.[DbVerNo] from #DbVerNoTable where #DbVerNoTable.[Num]=@i DELETE [dbo].[InterfacePrimaryDatabases] WHERE [dbo].[InterfacePrimaryDatabases].[InterfaceID]=@InterfaceID and [dbo].[InterfacePrimaryDatabases].[Version]=@Version and [dbo].[InterfacePrimaryDatabases].[DbVerNo]= @CurrentDbVerNo EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Interface','Delete Interface Primary database', @InterfaceID, @Version, @CurrentDbVerNo set @i=@i+1 End COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE PROCEDURE [dbo].[EAIP_DeleteCustRights_97](@CustID varchar(10), @PrdOffNo int, @CallerUserID nvarchar(255), @CallerUserIP varchar(15), @ArchivalID int =null, @SubscriptionNo int=0) AS BEGIN BEGIN TRY BEGIN TRANSACTION Declare @SourceType char(1) Select @SourceType=[EASUPPORT].[dbo].[ProductOffering].[SourceType] from EASUPPORT.dbo.ProductOffering where [EASUPPORT].[dbo].[ProductOffering].[PrdOffNo]=@PrdOffNo DECLARE @WRK_Product TABLE (DbVerNo int PRIMARY KEY, DbName varchar(10), SourceType char(1)) --DECLARE @WRK_Profile TABLE (ProfNo int PRIMARY KEY) Declare @ParamNo int -- all products belonging to this product offering INSERT INTO @WRK_Product SELECT [dbl].[DbVerNo], pkg.ProductID, dbl.SourceType FROM EASUPPORT.dbo.ProductPackage AS pkg INNER JOIN [dbo].[DbList] AS dbl ON dbl.DbName = pkg.ProductID WHERE pkg.PrdOffNo = @PrdOffNo INSERT INTO @WRK_Product Select dbl.DbVerNo, dbl.DbName, dbl.SourceType From EASUPPORT.dbo.ProductPackage pkg join EASUPPORT.dbo.ProductOffering po on pkg.PrdOffNo=po.PrdOffNo join [dbo].[DbList] dbl on po.SourceType=dbl.SourceType Join [dbo].[CustExternalDbList] cedbl on dbl.DbVerNo=cedbl.DbVerNo Join [dbo].[Customer] c on cedbl.CustNo=c.CustNo where pkg.PrdOffNo=@PrdOffNo and c.CustID=@CustID IF @SourceType='C' --SF: condition added to address defect Insert @WRK_Product select dbl.DbVerNo, dbl.DbName, dbl.SourceType from EASUPPORT.dbo.CustomerCatalogs cc join [dbo].[DbList] dbl on cc.DbName=dbl.DbName and dbl.DbLabel='Live' where cc.CustID=@CustID and cc.SubscriptionNo=@SubscriptionNo DELETE @WRK_Product FROM @WRK_Product AS a INNER JOIN EASUPPORT.dbo.ProductPackage AS pkg ON a.DbName = pkg.ProductID INNER JOIN EASUPPORT.dbo.CustSubscription AS sub with (NOLOCK) ON pkg.PrdOffNo = sub.PrdOffNo WHERE sub.CustID=@CustID /* Save the the profiles that are affected INSERT INTO @WRK_Profile SELECT distinct prf.ProfNo FROM @WRK_Product wp, dbo.ProfDatabase pdb, dbo.Profile prf WHERE wp.DbVerNo=pdb.DbVerNo AND pdb.ProfNo=prf.ProfNo AND prf.CustID=@CustID */ IF @ArchivalID is not NULL Begin INSERT INTO EASUPPORT.dbo.ArchiveProfDatabase ([EASUPPORT].[dbo].[ArchiveProfDatabase].[ArchiveID],[EASUPPORT].[dbo].[ArchiveProfDatabase].[CustID],[EASUPPORT].[dbo].[ArchiveProfDatabase].[GroupID],[EASUPPORT].[dbo].[ArchiveProfDatabase].[ProfID],[EASUPPORT].[dbo].[ArchiveProfDatabase].[DbName],[EASUPPORT].[dbo].[ArchiveProfDatabase].[AccessEndDate]) SELECT @ArchivalID,prf.CustID,prf.GroupID,prf.ProfID,wp.DbName,pdb.AccessEndDate FROM @WRK_Product AS wp INNER JOIN [dbo].[ProfDatabase] AS pdb ON wp.DbVerNo=pdb.DbVerNo INNER JOIN [dbo].[Profile] AS prf ON pdb.ProfNo=prf.ProfNo WHERE prf.CustID=@CustID -- Archive ProfileDbLimiters DECLARE @ProfDbTable TABLE (ProfNo INT, DbVerNo INT) INSERT @ProfDbTable SELECT p.ProfNo, wp.DbVerNo FROM @WRK_Product wp JOIN dbo.DbList dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.ArchiveProfSettings=1 JOIN dbo.ProfDatabase pdb ON dbl.DbVerNo=pdb.DbVerNo JOIN dbo.Profile p ON pdb.ProfNo=p.ProfNo AND p.CustID=@CustID INSERT EASUPPORT.dbo.ArchiveProfDbLimiter2([EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[ArchiveID], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[ProfNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[DbVerNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[IntfScreenNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[LimiterNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[Show], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[DefValue], [EASUPPORT].[dbo].[ArchiveProfDbLimiter2].[SeqNo]) SELECT @ArchivalID, pdbl.* FROM @ProfDbTable pdb JOIN dbo.ProfDbLimiter2 pdbl ON pdb.DbVerNo=pdbl.DbVerNo AND pdb.ProfNo=pdbl.ProfNo INSERT EASUPPORT.dbo.ArchiveProfDbLimiterCaption2([EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[ArchiveID], [EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[ProfNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[DbVerNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[IntfScreenNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[LimiterNo], [EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[LangCode], [EASUPPORT].[dbo].[ArchiveProfDbLimiterCaption2].[Caption]) SELECT @ArchivalID, pdblc.* FROM @ProfDbTable pdb JOIN dbo.ProfDbLimiterCaption2 pdblc ON pdb.DbVerNo=pdblc.DbVerNo AND pdb.ProfNo=pdblc.ProfNo -- Archive dbo.ProfileClusters DECLARE @ClustersTable TABLE (ClustNo INT) INSERT @ClustersTable SELECT a.ClustNo from (SELECT dbc.ClustNo FROM @WRK_Product wp JOIN dbo.DbList dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.ArchiveProfSettings=1 JOIN dbo.DbCluster dbc ON dbl.DbVerNo=dbc.DbVerNo AND dbc.Enable=1) a LEFT OUTER join (SELECT dbc.ClustNo FROM @WRK_Product wp JOIN dbo.DbList dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.ArchiveProfSettings=1 RIGHT OUTER JOIN dbo.DbCluster dbc ON dbl.DbVerNo=dbc.DbVerNo WHERE dbl.DbVerNo IS NULL) b ON a.ClustNo=b.ClustNo WHERE b.ClustNo IS NULL INSERT EASUPPORT.dbo.ArchiveProfileClusters2([EASUPPORT].[dbo].[ArchiveProfileClusters2].[ArchiveID], [EASUPPORT].[dbo].[ArchiveProfileClusters2].[ProfNo], [EASUPPORT].[dbo].[ArchiveProfileClusters2].[ClustNo], [EASUPPORT].[dbo].[ArchiveProfileClusters2].[Show], [EASUPPORT].[dbo].[ArchiveProfileClusters2].[SeqNo], [EASUPPORT].[dbo].[ArchiveProfileClusters2].[DefaultToOpen]) SELECT @ArchivalID, pc.* FROM dbo.ProfileClusters2 pc JOIN @ClustersTable ct ON pc.ClustNo=ct.ClustNo JOIN dbo.Profile p ON pc.ProfNo=p.ProfNo AND p.CustID=@CustID INSERT EASUPPORT.dbo.ArchiveProfileClusterCaptions([EASUPPORT].[dbo].[ArchiveProfileClusterCaptions].[ArchiveID], [EASUPPORT].[dbo].[ArchiveProfileClusterCaptions].[ProfNo], [EASUPPORT].[dbo].[ArchiveProfileClusterCaptions].[ClustNo], [EASUPPORT].[dbo].[ArchiveProfileClusterCaptions].[LangCode], [EASUPPORT].[dbo].[ArchiveProfileClusterCaptions].[Caption]) SELECT @ArchivalID, pcc.* FROM dbo.ProfileClusterCaptions pcc JOIN @ClustersTable ct ON pcc.ClustNo=ct.ClustNo JOIN dbo.Profile p ON pcc.ProfNo=p.ProfNo AND p.CustID=@CustID DELETE dbo.ProfileClusterCaptions FROM dbo.ProfileClusterCaptions pcc JOIN @ClustersTable ct ON pcc.ClustNo=ct.ClustNo JOIN dbo.Profile p ON pcc.ProfNo=p.ProfNo AND p.CustID=@CustID DELETE dbo.ProfileClusters2 FROM dbo.ProfileClusters2 pc JOIN @ClustersTable ct ON pc.ClustNo=ct.ClustNo JOIN dbo.Profile p ON pc.ProfNo=p.ProfNo AND p.CustID=@CustID -- Delete unneeded Profile CustomParamScalarValues -- Delete when Parameter is dependent on the Database being deleted and is set to not be retained and the Parameter is not dependent on any other Databases the Profile retains access to DELETE [dbo].[CustomParamScalarValues] FROM @WRK_Product wp JOIN [dbo].[CustomParamDbDependencies] cpdbd ON wp.DbVerNo=cpdbd.DbVerNo AND cpdbd.RetainProfileValues=0 LEFT OUTER JOIN (SELECT cpdbd.ParamNo, cpdbd.DbVerNo FROM dbo.ProfDatabase pdb JOIN [dbo].[Profile] p ON pdb.ProfNo=p.ProfNo AND p.CustID=@CustID LEFT OUTER JOIN @WRK_Product wp ON pdb.DbVerNo=wp.DbVerNo JOIN [dbo].[CustomParamDbDependencies] cpdbd ON pdb.DbVerNo=cpdbd.DbVerNo WHERE wp.DbVerNo IS null) a ON cpdbd.ParamNo=a.ParamNo JOIN [dbo].[Customer] c ON c.CustID=@CustID JOIN [dbo].[Profile] p ON c.CustID=p.CustID JOIN dbo.CustomParamScalarValues cpsv ON cpdbd.ParamNo=cpsv.ParamNo AND ((cpsv.TargetNo=c.CustNo AND cpsv.ParamLevel='C') OR (cpsv.TargetNo=p.ProfNo AND cpsv.ParamLevel='P')) WHERE a.DbVerNo IS NULL -- Archive Profile customToolbar - the following will archive "Publications" toolbar item if it exists --DECLARE @xmlTable TABLE (ProfNo INT, ParamNo INT, theXml XML) --INSERT @xmlTable --SELECT p.ProfNo, cpxv.ParamNo, CONVERT(XML,'' + cpxv.ParamValue + ' ') --FROM @WRK_Product wp -- JOIN DbList dbl -- ON wp.DbVerNo=dbl.DbVerNo AND dbl.DbName='edspub' -- JOIN CustomParamDbDependencies cpdbd -- ON wp.DbVerNo=cpdbd.DbVerNo AND cpdbd.RetainProfileValues=0 -- JOIN CustomParamList cpl -- ON cpdbd.ParamNo=cpl.ParamNo AND cpl.ParamName='customToolbar' -- JOIN dbo.CustomParamXmlValues cpxv -- ON cpl.ParamNo=cpxv.ParamNo -- JOIN dbo.Profile p -- ON cpxv.TargetNo=p.ProfNo AND p.CustID=@CustID --WHERE CONVERT(XML,'' + cpxv.ParamValue + ' ').exist('/items/item/attrib[@name="ItemType"][text()="Publication"]')=1 --UPDATE @xmlTable --SET theXml.modify('delete /items/item[attrib[@name="ItemType"][text()="Publication"]]') --UPDATE dbo.CustomParamXmlValues --SET ParamValue=REPLACE(REPLACE(CONVERT(NVARCHAR(MAX), theXml),'',''),' ','') --FROM dbo.CustomParamXmlValues cpxv -- JOIN @xmlTable xt -- ON cpxv.TargetNo=xt.ProfNo AND cpxv.ParamNo=xt.ParamNo --DECLARE @xml NVARCHAR(MAX) DECLARE @xmlTable TABLE (ProfNo INT, ParamNo INT, DbVerNo INT, theXml XML) INSERT @xmlTable SELECT p.ProfNo, cpxv.ParamNo, dbl.DbVerNo, CONVERT(XML,'' + cpxv.ParamValue + ' ') FROM @WRK_Product wp JOIN [dbo].[DbList] dbl ON wp.DbVerNo=dbl.DbVerNo AND dbl.DbName='edspub' JOIN [dbo].[CustomParamDbDependencies] cpdbd ON wp.DbVerNo=cpdbd.DbVerNo AND cpdbd.RetainProfileValues=1 JOIN [dbo].[CustomParamList] cpl ON cpdbd.ParamNo=cpl.ParamNo AND cpl.ParamName='customToolbar' JOIN dbo.CustomParamXmlValues cpxv ON cpl.ParamNo=cpxv.ParamNo JOIN dbo.Profile p ON cpxv.TargetNo=p.ProfNo AND p.CustID=@CustID WHERE CONVERT(XML,'' + cpxv.ParamValue + ' ').exist('/items/item/attrib[@name="ItemType"][text()="Publication"]')=1 IF @@ROWCOUNT>0 BEGIN INSERT EASUPPORT.dbo.ArchiveProfXmlValues SELECT @ArchivalID, ProfNo, ParamNo, DbVerNo, CONVERT(NVARCHAR(max), theXml.query('/items/item[attrib[@name="ItemType"][text()="Publication"]]')) FROM @xmlTable UPDATE @xmlTable SET theXml.modify('delete /items/item[attrib[@name="ItemType"][text()="Publication"]]') UPDATE dbo.CustomParamXmlValues SET [ParamValue]=REPLACE(REPLACE(CONVERT(NVARCHAR(MAX), [xt].[theXml]),'',''),' ','') FROM [dbo].[CustomParamXmlValues] cpxv JOIN @xmlTable xt ON cpxv.TargetNo=xt.ProfNo AND cpxv.ParamNo=xt.ParamNo End End if @SourceType='D' or @SourceType='E' or @SourceType='S' or @SourceType='C' Begin DELETE [dbo].[ProfDatabase] from @WRK_Product AS wp INNER JOIN [dbo].[ProfDatabase] AS pdb ON wp.DbVerNo=pdb.DbVerNo INNER JOIN [dbo].[Profile] AS prf ON pdb.ProfNo=prf.ProfNo WHERE prf.CustID=@CustID End Else Begin if exists (Select 1 from EASUPPORT.dbo.ProductOffering po join EASUPPORT.dbo.ProductPackage pp on po.PrdOffNo=pp.PrdOffNo join EASUPPORT.dbo.CustSubscription cs on po.PrdOffNo=cs.PrdOffNo where cs.CustID=@CustID and po.PrdOffNo<>@PrdOffNo and po.SourceType=@SourceType) Begin DELETE [dbo].[ProfDatabase] from @WRK_Product AS wp INNER JOIN [dbo].[ProfDatabase] AS pdb ON wp.DbVerNo=pdb.DbVerNo INNER JOIN [dbo].[Profile] AS prf ON pdb.ProfNo=prf.ProfNo WHERE prf.CustID=@CustID and prf.ProfNo Not In ( select distinct prf.ProfNo from EASUPPORT.dbo.ProductOffering AS po INNER JOIN EASUPPORT.dbo.ProductPackage AS pp ON po.PrdOffNo=pp.PrdOffNo INNER JOIN EASUPPORT.dbo.ProductInterface AS [pi] ON pp.ProductID=[pi].ProductID INNER JOIN [dbo].[Profile] AS prf ON [pi].InterfaceID=prf.InterfaceID and [pi].Version = prf.Version where po.PrdOffNo<>@PrdOffNo and prf.CustID=@CustID and po.SourceType=@SourceType) End Else Begin DELETE [dbo].[ProfDatabase] from @WRK_Product wp INNER JOIN [dbo].[ProfDatabase] pdb ON wp.DbVerNo=pdb.DbVerNo INNER JOIN [dbo].[Profile] prf ON pdb.ProfNo=prf.ProfNo where prf.CustID=@CustID End End Select @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]='showIntegratedSearchPanel' Delete [dbo].[CustomParamScalarValues] from [dbo].[CustomParamScalarValues] cpsv join (Select * from [dbo].[Profile] where [dbo].[Profile].[ProfNo] not in ( select p.ProfNo from [dbo].[Profile] p join [dbo].[ProfDatabase] pdb on p.ProfNo=pdb.ProfNo left outer join [dbo].[DbList] dbl on pdb.DbVerNo=dbl.DbVerNo where [p].[CustID]=@CustID and [dbl].[SourceType] not in ('D', 'E', 'S', 'C')) and [dbo].[Profile].[CustID]=@CustID) p on cpsv.TargetNo=p.ProfNo where [cpsv].[ParamNo]=@ParamNo -- JIRA EHPMEBSCOADMIN-455 Expired EHIS customer: Required that only status changes to P instead of record getting deleted --Delete eamaster.dbo.CustExternalDbList --From @WRK_Product wp --Join eamaster.dbo.CustExternalDbList cedbl --on wp.DbVerNo=cedbl.DbVerNo --Join eamaster.dbo.Customer c --On cedbl.CustNo=c.CustNo --join eamaster.dbo.Profile p --on c.CustID=p.CustID --left outer join eamaster.dbo.ProfDatabase pdb --on cedbl.DbVerNo=pdb.DbVerNo and p.ProfNo=pdb.ProfNo --Where c.CustID=@CustID and pdb.DbVerNo is null UPDATE [dbo].[CustExternalDbList] SET [Status] = 'P', [LastModified] = GETDATE() From @WRK_Product wp Join [dbo].[CustExternalDbList] cedbl on wp.DbVerNo=cedbl.DbVerNo Join [dbo].[Customer] c On cedbl.CustNo=c.CustNo join [dbo].[Profile] p on c.CustID=p.CustID left outer join [dbo].[ProfDatabase] pdb on cedbl.DbVerNo=pdb.DbVerNo and p.ProfNo=pdb.ProfNo Where c.CustID=@CustID and pdb.DbVerNo is null /* --all commented out will be handled by the service Remove from WRK_Profile the profiles that still have some other databases DELETE @WRK_Profile FROM @WRK_Profile prf, dbo.ProfDatabase pdb WHERE prf.ProfNo=pdb.ProfNo -- The folllowing code was added to address defect #7725. -- remove profiles build for related Interfaces that does not have databases attached. -- most of those profiles should be for external products like edb or coin. -- (Note: there may be products that are defined as external by mistake and have databases - that should have been taken care abowe) INSERT INTO @WRK_Profile SELECT pr.ProfNo FROM EASUPPORT.dbo.ProductPackage pkg LEFT OUTER JOIN dbo.DbList dbl ON dbl.DbName=pkg.ProductID, EASUPPORT.dbo.Product p, EASUPPORT.dbo.ProductInterface pin, dbo.Profile pr LEFT OUTER JOIN dbo.ProfDatabase prdb ON pr.ProfNo = prdb.ProfNo WHERE pkg.PrdOffNo=@PrdOffNo AND p.ProductID=pkg.ProductID AND p.ProductID = pin.ProductID AND dbl.DbName is null AND pr.CustID=@CustID AND pr.InterfaceID=pin.InterfaceID and pr.Version=pin.Version AND prdb.ProfNo is null and pr.ProfNo not in (Select ProfNo from @WRK_Profile) IF @ArchivalID is not null INSERT INTO EASUPPORT.dbo.ArchiveCustGroupProfile (ArchiveID,CustID,GroupID,ProfID,Activity) SELECT distinct @ArchivalID, b.CustID,b.GroupID,b.ProfID, 'Profile removed' FROM @WRK_Profile a, dbo.Profile b WHERE a.ProfNo=b.ProfNo /* Delete the profiles with the customized param values. */ DELETE dbo.CustomParamScalarValues FROM @WRK_Profile prf, dbo.CustomParamScalarValues cv WHERE prf.ProfNo=cv.TargetNo AND cv.ParamLevel='P' DELETE dbo.CustomParamXmlValues FROM @WRK_Profile prf, dbo.CustomParamXmlValues cv WHERE prf.ProfNo=cv.TargetNo AND cv.ParamLevel='P' DELETE dbo.CustomParamTblFieldValues FROM @WRK_Profile prf, dbo.CustomParamTblFieldValues cv WHERE prf.ProfNo=cv.TargetNo DELETE dbo.CustomParamTblSMValues FROM @WRK_Profile prf, dbo.CustomParamTblSMValues cv WHERE prf.ProfNo=cv.TargetNo DELETE dbo.Profile FROM @WRK_Profile a, dbo.Profile b WHERE a.ProfNo=b.ProfNo */ IF EXISTS (SELECT 1 FROM EASUPPORT.dbo.ProductPackage where [EASUPPORT].[dbo].[ProductPackage].[PrdOffNo] =@PrdOffNo AND LEN([EASUPPORT].[dbo].[ProductPackage].[Limiters])=0) BEGIN COMMIT TRANSACTION RETURN END --discover and remove hidden limiters from all profiles that have databases referenced by PO being removed; --remove only limiters that are not referenced by any other PO that customer has an access to DECLARE @WRK_ProfDbLimiter2 TABLE (ProfNo int, DbVerNo int, IntfScreenNo int, LimiterNo int) DECLARE @PrdOffID varchar(20) DECLARE @PrdID varchar(10) DECLARE @LimiterList varchar(255) DECLARE C1_C CURSOR FOR SELECT po.PrdOffID, pp.ProductID, pp.Limiters FROM EASUPPORT.dbo.ProductOffering AS po INNER JOIN EASUPPORT.dbo.ProductPackage AS pp ON po.PrdOffNo = pp.PrdOffNo WHERE po.PrdOffNo = @PrdOffNo AND LEN(pp.Limiters)>0 OPEN C1_C FETCH NEXT FROM C1_C INTO @PrdOffID, @PrdID,@LimiterList WHILE (@@FETCH_STATUS <> -1) BEGIN IF (@@FETCH_STATUS <> -2) BEGIN INSERT INTO @WRK_ProfDbLimiter2(ProfNo,DbVerNo,IntfScreenNo,LimiterNo) SELECT p.ProfNo, pdb.DbVerNo, ins.IntfScreenNo,ll.LimiterNo FROM EASUPPORT.dbo.ProductOffering AS po INNER JOIN EASUPPORT.dbo.ProductPackage AS pp ON pp.PrdOffNo = po.PrdOffNo INNER JOIN EASUPPORT.dbo.CustSubscription AS sub WITH (INDEX(IX_CustSubscription_PrdOffNo)) ON po.PrdOffNo = sub.PrdOffNo INNER JOIN [dbo].[Profile] p WITH (INDEX(IX_Profile)) ON sub.CustID = p.CustID INNER JOIN [dbo].[DbList] AS db ON db.DbName = pp.ProductID INNER JOIN [dbo].[ProfDatabase] AS pdb ON p.ProfNo = pdb.ProfNo AND pdb.DbVerNo = db.DbVerNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON p.InterfaceID= ins.InterfaceID AND p.Version = ins.Version INNER JOIN [dbo].[DbLimiter] AS dbl with (NOLOCK) ON db.DbVerNo = dbl.DbVerNo INNER JOIN [dbo].[LimiterList] AS ll ON ll.LimiterNo = dbl.LimiterNo INNER JOIN dbo.EAIF_GetItemTable_70(@LimiterList, ',') AS a ON ll.LimiterId = a.Item WHERE po.PrdOffID <> @PrdOffID AND pp.ProductID = @PrdID AND sub.CustID=@CustID AND db.DbLabel = 'live' AND dbo.EAIF_IsLimiterAttachedToOtherCustPO_79(@CustID,@PrdOffID, @PrdID, ll.LimiterId)=0 ORDER BY p.ProfNo, pdb.DbVerNo IF @@ERROR <> 0 BEGIN CLOSE C1_C DEALLOCATE C1_C RETURN END END FETCH NEXT FROM C1_C INTO @PrdOffID, @PrdID,@LimiterList END CLOSE C1_C DEALLOCATE C1_C DELETE [dbo].[ProfDbLimiter2] FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[ProfDbLimiter2] AS pdbl ON a.ProfNo = pdbl.ProfNo AND a.DbVerNo = pdbl.DbVerNo AND a.IntfScreenNo = pdbl.IntfScreenNo AND a.LimiterNo = pdbl.LimiterNo INSERT INTO EASUPPORT.dbo.ActivityLog SELECT @CallerUserID, @CallerUserIP, GETDATE(), 'Profiles', 'Remove ProductOffering Limiters for a Profile', (prf.CustID+'.'+prf.GroupID+'.'+prf.ProfID), dbl.DbName, ins.Description,ll.LimiterId, '' FROM @WRK_ProfDbLimiter2 AS a INNER JOIN [dbo].[Profile] AS prf ON a.ProfNo=prf.ProfNo INNER JOIN [dbo].[DbList] AS dbl ON a.DbVerNo=dbl.DbVerNo INNER JOIN [dbo].[InterfaceScreen] AS ins ON prf.InterfaceID = ins.InterfaceID AND prf.Version=ins.Version INNER JOIN [dbo].[LimiterList] AS ll ON ll.LimiterNo = a.LimiterNo ORDER BY prf.CustID,prf.GroupID,prf.ProfID COMMIT TRANSACTION END TRY BEGIN CATCH ROLLBACK TRANSACTION DECLARE @ErrorMessage NVARCHAR(4000); DECLARE @ErrorSeverity INT; DECLARE @ErrorState INT; SELECT @ErrorMessage = ERROR_MESSAGE(), @ErrorSeverity = ERROR_SEVERITY(), @ErrorState = ERROR_STATE(); RAISERROR (@ErrorMessage, -- Message text. @ErrorSeverity, -- Severity. @ErrorState -- State. ); END CATCH END
CREATE procedure [dbo].[EAUI_GetProfileMultiDBLimiters_99] @ProfNo int, @LangCode varchar(10), @EditLevel int , @ScreenNo int AS BEGIN DECLARE @WRK_Limiters TABLE ( LimiterNo int , LimiterID varchar(5), DbCount int, DbVerNo int, SeqNo int not null default 1000 ) INSERT INTO @WRK_Limiters(LimiterNo, LimiterID, DbCount, DbVerNo) SELECT * FROM dbo.EAIF_GetProfileMultiDBLimiters_99(@ProfNo,@ScreenNo) DECLARE @Show bit DECLARE @ShowOff bit SELECT @Show = [dbo].[InterfaceScreen].[LimiterShow] FROM [dbo].[InterfaceScreen] WHERE [dbo].[InterfaceScreen].[IntfScreenNo]=@ScreenNo SET @ShowOff=0 SELECT ISNULL(pdl2.SeqNo,(ISNULL(dil.SeqNo,dl.SeqNo))) AS SeqNo, ll.LimiterNo, CASE WHEN ll.BitFlag1=1 THEN ll.LimiterId+'*' ELSE ll.LimiterId END AS LimiterID, ISNULL(pdc2.Caption,ISNULL(dlc.Caption,'')) AS Caption, CASE WHEN ll.BitFlag1=1 THEN ISNULL(pdl2.Show, (ISNULL(dil.Show,@ShowOff))) ELSE ISNULL(pdl2.Show, (ISNULL(dil.Show,@Show))) END AS Show, ISNULL(pdl2.DefValue,(ISNULL(dil.DefValue, ISNULL(dl.DefValue,''))))+';'+ISNULL(lct.DefaultEditControl,'')+';'+ISNULL(lct.DefaultValueTemplate,'')+';'+lct.ControlTag AS DefValue, 0 AS GroupCount, lct.ProfileCustDefault+CONVERT(int, ll.AllowCustom) AS AllowCustom, CASE WHEN ll.IsListContentsGrouped=1 THEN 'G' -- This value is applicable to limiters of listbox /dropdown type only. ELSE 'M' END as TemplateDisplayType FROM @WRK_Limiters wl JOIN [dbo].[DbLimiter] dl ON wl.LimiterNo = dl.LimiterNo AND wl.DbVerNo = dl.DbVerNo LEFT OUTER JOIN [dbo].[DbLimiterCaption] dlc ON wl.LimiterNo = dlc.LimiterNo AND wl.DbVerNo = dlc.DbVerNo AND dlc.LangCode = @LangCode LEFT OUTER JOIN [dbo].[DbInterfaceLimiter] dil ON wl.DbVerNo = dil.DbVerNo AND wl.LimiterNo = dil.LimiterNo AND dil.IntfScreenNo=@ScreenNo LEFT OUTER JOIN [dbo].[ProfDbLimiter2] pdl2 ON wl.DbVerNo = pdl2.DbVerNo AND wl.LimiterNo= pdl2.LimiterNo AND pdl2.IntfScreenNo = @ScreenNo AND pdl2.ProfNo=@ProfNo LEFT OUTER JOIN [dbo].[ProfDbLimiterCaption2] pdc2 ON pdl2.ProfNo = pdc2.ProfNo AND pdl2.IntfScreenNo = pdc2.IntfScreenNo AND pdl2.DbVerNo = pdc2.DbVerNo AND pdl2.LimiterNo= pdc2.LimiterNo AND pdc2.LangCode = @LangCode JOIN [dbo].[LimiterList] ll ON wl.LimiterNo=ll.LimiterNo JOIN [dbo].[LimiterControlType] lct ON ll.ControlType = lct.ControlType Order By ISNULL(pdl2.SeqNo, ISNULL(dil.SeqNo,dl.SeqNo) ) END
CREATE PROCEDURE dbo.EAUI_AddModifyDbSearchConceptMapping_131 (@UserID nvarchar(20), @UserIP varchar(15), @DbVerNo INT, @Context VARCHAR(10), @Concept VARCHAR(20), @SearchTag NVARCHAR(5), @OrigContext VARCHAR(10), @OrigConcept VARCHAR(20), @OrigSearchTag NVARCHAR(5), @Action varchar(4)) AS BEGIN DECLARE @DbName varchar(20) DECLARE @DbLabel varchar(20) SELECT @DbName=[dbo].[DbList].[DbName], @Dblabel=[dbo].[DbList].[DbLabel] FROM [dbo].[DbList] Where [dbo].[DbList].[DbVerNo]=@DbVerNo SET @SearchTag = N'' + UPPER(@SearchTag) IF @Action='Add' BEGIN IF EXISTS ( Select 1 from dbo.DbSearchContextMapping WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchContextMapping].[ContextName] = @Context AND [dbo].[DbSearchContextMapping].[ConceptName] = @Concept AND [dbo].[DbSearchContextMapping].[SearchTag] = @SearchTag) BEGIN RAISERROR('The Search Concept:" %s-%s-%s" already exists for %s-%s".', 16,-1, @Context, @Concept, @SearchTag, @DbName, @DbLabel) RETURN END INSERT INTO dbo.DbSearchContextMapping ( [dbo].[DbSearchContextMapping].[DbVerNo] , [dbo].[DbSearchContextMapping].[ContextName] , [dbo].[DbSearchContextMapping].[ConceptName] , [dbo].[DbSearchContextMapping].[SearchTag] ) VALUES ( @DbVerNo , -- DbVerNo - int @Context , -- ContextName - varchar(10) @Concept , -- ConceptName - varchar(20) @SearchTag -- SearchTag - varchar(5) ) IF @UserID is NOT NULL and @UserIP IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP, 'DbSearchContextMapping', 'Add New DbSearchConcept', @DbName, @DbLabel, @Context, @Concept, @SearchTag END END /** Add end **/ ELSE /** @Action='Upd'**/ -- make sure the record we're updating exists IF EXISTS ( Select 1 from dbo.DbSearchContextMapping WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchContextMapping].[ContextName] = @OrigContext AND [dbo].[DbSearchContextMapping].[ConceptName] = @OrigConcept AND [dbo].[DbSearchContextMapping].[SearchTag] = @OrigSearchTag) BEGIN -- check if the update values already exist for this DbVerNo IF EXISTS ( Select 1 from dbo.DbSearchContextMapping WHERE [dbo].[DbSearchContextMapping].[DbVerNo]=@DbVerNo AND [dbo].[DbSearchContextMapping].[ContextName] = @Context AND [dbo].[DbSearchContextMapping].[ConceptName] = @Concept AND [dbo].[DbSearchContextMapping].[SearchTag] = @SearchTag) BEGIN RAISERROR('The Search Concept:" %s-%s-%s" already exists for %s-%s".', 16,-1, @Context, @Concept, @SearchTag, @DbName, @DbLabel) RETURN END UPDATE dbo.DbSearchContextMapping SET [dbo].[DbSearchContextMapping].[ContextName] = @Context, [dbo].[DbSearchContextMapping].[ConceptName] = @Concept, [dbo].[DbSearchContextMapping].[SearchTag] = @SearchTag WHERE [dbo].[DbSearchContextMapping].[DbVerNo] = @DbVerNo AND [dbo].[DbSearchContextMapping].[ContextName] = @OrigContext AND [dbo].[DbSearchContextMapping].[ConceptName] = @OrigConcept AND [dbo].[DbSearchContextMapping].[SearchTag] = @OrigSearchTag IF @UserID is NOT NULL and @UserIP IS NOT NULL BEGIN EXEC [dbo].[EAIP_LogActivity_70] @UserId ,@UserIP, 'DbSearchContextMapping', 'Update DbSearchConcept', @DbName, @DbLabel, @Context, @Concept, @SearchTag END END END
CREATE PROCEDURE [dbo].[EPCS_GetUserGroupFTDatabases_70]( @CustID varchar(10), @GroupID varchar(10)) AS BEGIN SET NOCOUNT ON DECLARE @ParamNo int DECLARE @InheritFromPhysical BIT SELECT @ParamNo=[dbo].[DbParamList].[ParamNo], @InheritFromPhysical = [dbo].[DbParamList].[InheritFromPhysical] FROM [dbo].[DbParamList] WHERE [dbo].[DbParamList].[ParamName] ='fullTextAllowed' -- If it is not subset database or InheritFromPhysical is 0: Use param value from dbverno in ProfDatabase -- If it is subset database and InheritFromPhysical is 1: Use param value from physical dbverno IF (LEN(@GroupID)>0) BEGIN SELECT DISTINCT m.DbName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] m ON m.DbVerNo = d.DbVerNo INNER JOIN [dbo].[Interface] i ON p.InterfaceID = i.InterfaceID LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = m.DbVerNo AND sv.ParamNo=@ParamNo LEFT OUTER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = m.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON psv.DbVerNo = ss.PhysDbVerNo AND psv.ParamNo = @ParamNo WHERE p.CustID = @CustID AND p.GroupID = @GroupID AND d.Enable = 1 AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) AND i.ClientType='web' AND ( ((@InheritFromPhysical = 0 OR ss.PhysDbVerNo IS NULL) AND (sv.ParamValue is null OR sv.ParamValue='1')) OR (@InheritFromPhysical = 1 AND ss.PhysDbVerNo IS NOT NULL AND (psv.ParamValue is null OR psv.ParamValue='1')) ) END ELSE BEGIN SELECT DISTINCT m.DbName FROM [dbo].[Profile] p INNER JOIN [dbo].[ProfDatabase] d ON d.ProfNo = p.ProfNo INNER JOIN [dbo].[DbList] m ON m.DbVerNo = d.DbVerNo INNER JOIN [dbo].[Interface] i ON p.InterfaceID = i.InterfaceID LEFT OUTER JOIN [dbo].[DbParamScalarValues] sv ON sv.DbVerNo = m.DbVerNo AND sv.ParamNo=@ParamNo LEFT OUTER JOIN [dbo].[DbSubset] ss ON ss.SubsetDbVerNo = m.DbVerNo LEFT OUTER JOIN [dbo].[DbParamScalarValues] psv ON psv.DbVerNo = ss.PhysDbVerNo AND psv.ParamNo = @ParamNo WHERE p.CustID = @CustID AND d.Enable = 1 AND (d.Mode is null OR d.Mode<>'X') AND (d.AccessEndDate is null or datediff(hh, d.AccessEndDate, getdate())<0 ) AND i.ClientType='web' AND ( ((@InheritFromPhysical = 0 OR ss.PhysDbVerNo IS NULL) AND (sv.ParamValue is null OR sv.ParamValue='1')) OR (@InheritFromPhysical = 1 AND ss.PhysDbVerNo IS NOT NULL AND (psv.ParamValue is null OR psv.ParamValue='1')) ) END END
CREATE PROCEDURE [dbo].[DDS_LogActivity_96]( @UserId nvarchar(255), @UserIP varchar(15), @Category varchar(50), @Activity varchar(100), @Param1 nvarchar(1024)=N'', @Param2 nvarchar(1024)=N'', @Param3 nvarchar(1024)=N'', @Param4 nvarchar(1024)=N'', @Param5 nvarchar(1024)=N'' ) AS BEGIN SET NOCOUNT ON --Catagory='DDSUpdate' -- Activity = 'Begin' or 'End' DECLARE @LogDDSUpdate INT SELECT @LogDDSUpdate = [dbo].[AdminState].[ParamValue] FROM [dbo].[AdminState] WHERE [dbo].[AdminState].[ParamName]='LogDDSUpdateActivity' IF (@LogDDSUpdate > 0) BEGIN INSERT INTO EASUPPORT.dbo.ActivityLog([EASUPPORT].[dbo].[ActivityLog].[UserID], [EASUPPORT].[dbo].[ActivityLog].[IPAddress], [EASUPPORT].[dbo].[ActivityLog].[LogTime], [EASUPPORT].[dbo].[ActivityLog].[Category], [EASUPPORT].[dbo].[ActivityLog].[Activity], [EASUPPORT].[dbo].[ActivityLog].[Param1],[EASUPPORT].[dbo].[ActivityLog].[Param2], [EASUPPORT].[dbo].[ActivityLog].[Param3], [EASUPPORT].[dbo].[ActivityLog].[Param4], [EASUPPORT].[dbo].[ActivityLog].[Param5]) VALUES(@UserId, @UserIP, getdate(), @Category, @Activity, @Param1, @Param2, @Param3, @Param4, @Param5) END SET NOCOUNT OFF END
CREATE PROCEDURE [dbo].[EAUI_GetInterfaceToolbarItemDatabaseToAttach_77] (@IntfToolbarItem int)AS BEGIN SELECT db.DbVerNo, db.DisplayName+N' ('+db.DbName+N')' AS Db FROM [dbo].[DbList] db LEFT OUTER JOIN [dbo].[InterfaceToolbarDb] tdb ON tdb.DbVerNo = db.DbVerNo AND tdb.IntfToolbarItem =@IntfToolbarItem WHERE db.DbLabel='live' AND db.DbType <>6 AND [db].[DbType]<>8 AND tdb.DbVerNo is null ORDER BY db.DisplayName END
CREATE PROCEDURE [dbo].[EATL_GetInterfaceFeatureFields_77](@InterfaceID varchar(10), @Version varchar(10), @Name varchar(100), @ItemNo int)AS BEGIN DECLARE @FieldType char IF (@ItemNo=0) SET @FieldType ='F' ELSE SET @FieldType ='I' SELECT iff.FieldName, iff.FieldType FROM [dbo].[InterfaceFeatureList] ifl INNER JOIN [dbo].[InterfaceFeatureFields] iff ON ifl.InterfaceFeatureNo = iff.InterfaceFeatureNo WHERE ifl.InterfaceID = @InterfaceID AND ifl.Version = @Version AND ifl.FeatureName = @Name AND iff.FieldLevel = @FieldType SELECT ifv.FieldValueXml FROM [dbo].[InterfaceFeatureList] ifl INNER JOIN [dbo].[InterfaceFeatureValues] ifv ON ifl.InterfaceFeatureNo = ifv.InterfaceFeatureNo WHERE ifl.InterfaceID = @InterfaceID AND ifl.Version = @Version AND ifl.FeatureName = @Name AND ifv.ItemNo = @ItemNo END
CREATE PROCEDURE [dbo].[EPCS_GetCustomerGroupProfilesInfoByDbNames_231] ( @CustID VARCHAR(10), @GroupID VARCHAR(10), @RequiredGroupParams VARCHAR(MAX), @DbNamesJson VARCHAR(MAX) ) AS BEGIN EXEC [dbo].[EAIP_GetCustomerGroupInfo_231] @CustID, @GroupID, @RequiredGroupParams; DECLARE @Dbs AS TABLE (DbVerNo INT); INSERT INTO @Dbs SELECT dl.DbVerNo FROM [dbo].[DbList] AS dl INNER JOIN OPENJSON(@DbNamesJson) WITH ( DbName VARCHAR(10) '$.DbName', DbLabel VARCHAR(10) '$.DbLabel' ) AS dn ON dl.DbName = dn.DbName AND dl.DbLabel = dn.DbLabel; DECLARE @DbCnt INT; SELECT @DbCnt = COUNT(*) FROM @Dbs; DECLARE @CurrentDate DATETIME = GETDATE(); SELECT * FROM ( SELECT p.SeqNo, p.ProfNo, p.ProfID, p.ProfName, p.InterfaceID, p.InterfaceVersion, p.InterfaceName, p.SiteURL, p.PassingMode, p.PersistentLinkURL, p.PersistentLinkProfile, p.GuestAccessAuthType, p.UiStatus, p.HideProfileOnSSP, ROW_NUMBER() OVER ( PARTITION BY p.ProfNo ORDER BY p.ProfNo ) AS RowNum FROM [dbo].[EAIF_GetCustomerGroupProfilesInfo_231](@CustID, @GroupID) AS p INNER JOIN [dbo].[ProfDatabase] AS pd ON p.ProfNo = pd.ProfNo INNER JOIN @Dbs AS db ON pd.DbVerNo = db.DbVerNo WHERE (pd.[AccessEndDate] >= @CurrentDate OR pd.[AccessEndDate] IS NULL) AND pd.Enable = 1 ) a WHERE RowNum = @DbCnt ORDER BY a.SeqNo, a.ProfID END
CREATE PROCEDURE [dbo].[EAUI_GetExpanderList_70] AS BEGIN SELECT [dbo].[GlobalExpander].[ControlName], 'Show' = CASE [dbo].[GlobalExpander].[ControlShow] WHEN 0 THEN 'No' ELSE 'Yes' END, 'Default' = CASE [dbo].[GlobalExpander].[ControlDefault] WHEN 0 Then 'Off' ELSE 'On' END, [dbo].[GlobalExpander].[Description] as Expander FROM [dbo].[GlobalExpander] END
CREATE PROCEDURE [dbo].[EAIP_TblParam_AddModifyField_92](@ParamName varchar(100), @FieldName varchar(20), @FieldDisplayName varchar(255), @FieldType varchar(10), @MaxLength int, @SeqNo int, @ControlType varchar(100)='label', @ValueTemplate varchar(255)= null, @SortField bit=0, @EditLevel varchar(5)='gip', @DisplayLevel varchar(5)='gip', @ReturnToClient bit=1) AS BEGIN DECLARE @ParamNo int SELECT @ParamNo=[dbo].[CustomParamList].[ParamNo] from [dbo].[CustomParamList] where [dbo].[CustomParamList].[ParamName]=@ParamName AND [dbo].[CustomParamList].[ParamType]='T' IF @ParamNo is null BEGIN RAISERROR('Parameter %s type table does not exists', 16, -1, @ParamName) RETURN END IF EXISTS (SELECT 1 FROM [dbo].[CustomParamXmlFields] WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]=@FieldName) UPDATE [dbo].[CustomParamXmlFields] SET [dbo].[CustomParamXmlFields].[FieldDisplayName]=@FieldDisplayName, [dbo].[CustomParamXmlFields].[FieldType]= @FieldType, [dbo].[CustomParamXmlFields].[MaxLength]=@MaxLength, [dbo].[CustomParamXmlFields].[SeqNo]=@SeqNo, [dbo].[CustomParamXmlFields].[ControlType] =@ControlType, [dbo].[CustomParamXmlFields].[ValueTemplate]=@ValueTemplate, [dbo].[CustomParamXmlFields].[SortField]=@SortField, [dbo].[CustomParamXmlFields].[EditLevel] =@EditLevel, [dbo].[CustomParamXmlFields].[DisplayLevel]=@DisplayLevel, [dbo].[CustomParamXmlFields].[ReturnToClient]=@ReturnToClient WHERE [dbo].[CustomParamXmlFields].[ParamNo]=@ParamNo AND [dbo].[CustomParamXmlFields].[FieldName]=@FieldName ELSE INSERT INTO [dbo].[CustomParamXmlFields]([dbo].[CustomParamXmlFields].[ParamNo],[dbo].[CustomParamXmlFields].[FieldName],[dbo].[CustomParamXmlFields].[FieldDisplayName],[dbo].[CustomParamXmlFields].[FieldType],[dbo].[CustomParamXmlFields].[MaxLength],[dbo].[CustomParamXmlFields].[ControlType],[dbo].[CustomParamXmlFields].[ValueTemplate],[dbo].[CustomParamXmlFields].[SeqNo],[dbo].[CustomParamXmlFields].[SortField],[dbo].[CustomParamXmlFields].[EditLevel],[dbo].[CustomParamXmlFields].[DisplayLevel],[dbo].[CustomParamXmlFields].[ReturnToClient]) VALUES(@ParamNo,@FieldName,@FieldDisplayName,@FieldType,@MaxLength,@ControlType,@ValueTemplate,@SeqNo,@SortField,@EditLevel,@DisplayLevel,@ReturnToClient) END
CREATE PROCEDURE [dbo].[EAUI_UpdateProfile_70](@UserID nvarchar(20), @UserIP varchar(15), @ProfNo int, @ProfName nvarchar(100), @MarketID varchar(20), @DbLabel varchar(10), @DefLangCode varchar(10)) AS BEGIN DECLARE @ProfLogName varchar(40) SELECT @ProfLogName=dbo.EAIF_GetProfDottedName_70(@ProfNo) IF @DbLabel IS NULL OR @DbLabel='' SET @DbLabel='live' BEGIN TRANSACTION EXEC [dbo].[EAIP_LogActivity_70] @UserID, @UserIP, 'Profiles','Modify Profile', @ProfLogName, @ProfName, @MarketID, @DbLabel,@DefLangCode UPDATE [dbo].[Profile] SET [dbo].[Profile].[ProfName] = @ProfName, [dbo].[Profile].[MarketID] = @MarketID, [dbo].[Profile].[DbLabel]=@DBLabel, [dbo].[Profile].[DefLangCode]=@DefLangCode WHERE [dbo].[Profile].[ProfNo] = @ProfNo COMMIT TRANSACTION END
CREATE Function [dbo].[EAIF_IsCustTheOwnerOfDB_912] (@CustID varchar(10),@DbName varchar(10)) RETURNS int AS BEGIN DECLARE @Ret int -- If the Custid and SubscriberID are same for the Database(or Catalog), -- then customer owns the database. If Exists (Select 1 FROM EASUPPORT.dbo.CustomerCatalogs cc WHERE cc.CustID = @CustID AND cc.SubscriberID = @CustID AND cc.DbName=@DbName) SET @Ret= 2 ELSE SET @Ret= 9 RETURN @Ret END